From 1470c820b3a8cd24be402c573302c7cfacd9ccbe Mon Sep 17 00:00:00 2001 From: Ricky Cook Date: Wed, 13 Jul 2016 19:40:54 +1000 Subject: [PATCH] Ensure the agent can access non-pub projects --- tests/db/test_public_projects_db.py | 32 +++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/tests/db/test_public_projects_db.py b/tests/db/test_public_projects_db.py index 944f88a..b9f54d2 100644 --- a/tests/db/test_public_projects_db.py +++ b/tests/db/test_public_projects_db.py @@ -134,3 +134,35 @@ def test_user(self, }) assert response.status_code == 200 + + @pytest.mark.usefixtures('stages') + @pytest.mark.parametrize('url_fs', [ + '/projects/{project_slug}', + '/projects/{project_slug}/jobs/{job_slug}', + '/projects/{project_slug}/jobs/{job_slug}/stages/{stage_slug}', + ]) + @pytest.mark.parametrize('project_slug', [ + 'pp-pub1', 'pp-pri1', 'pp-pub2', 'pp-pri2', + ]) + def test_agent(self, + client, + jobs, + agent_token, + url_fs, + project_slug, + ): + """ Ensure all projects accessible as user """ + project = Project.query.filter_by(slug=project_slug)[0] + job = project.jobs[0] + stage = job.job_stages[0] + + full_url = ('/api/v1%s' % url_fs).format( + project_slug=project.slug, + job_slug=job.slug, + stage_slug=stage.slug, + ) + response = client.get(full_url, headers={ + 'x_dockci_api_key': agent_token, + }) + + assert response.status_code == 200