This repository has been archived on 2020-03-24. You can view files and clone it, but cannot push or open issues or pull requests.
quay/endpoints/test/test_building.py
Joseph Schorr 9a452ace11 Add configurable limits for number of builds allowed under a namespace
We also support that limit being increased automatically once a successful billing charge has gone through
2018-02-20 16:54:22 -05:00

31 lines
969 B
Python

import pytest
from data import model
from endpoints.building import start_build, PreparedBuild, MaximumBuildsQueuedException
from test.fixtures import *
def test_maximum_builds(app):
# Change the maximum number of builds to 1.
user = model.user.create_user('foobar', 'password', 'foo@example.com')
user.maximum_queued_builds_count = 1
user.save()
repo = model.repository.create_repository('foobar', 'somerepo', user)
# Try to queue a build; should succeed.
prepared_build = PreparedBuild()
prepared_build.build_name = 'foo'
prepared_build.is_manual = True
prepared_build.dockerfile_id = 'foobar'
prepared_build.archive_url = 'someurl'
prepared_build.tags = ['latest']
prepared_build.subdirectory = '/'
prepared_build.context = '/'
prepared_build.metadata = {}
start_build(repo, prepared_build)
# Try to queue a second build; should fail.
with pytest.raises(MaximumBuildsQueuedException):
start_build(repo, prepared_build)