summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2022-07-06 17:38:18 +0000
committerGerrit Code Review <review@openstack.org>2022-07-06 17:38:18 +0000
commit40ca109994d049db268c0c5cd27b0ebdd22c2d16 (patch)
tree3a9d4f617ad792b31d2ecad2a6418f5a8570c8c8 /tests
parent6b2ea5f01b4f53dbb888b318b20a6c2b88a6dae2 (diff)
parentc98f14025aa4f72334eab437401ceb2a960e6915 (diff)
downloadzuul-40ca109994d049db268c0c5cd27b0ebdd22c2d16.tar.gz
Merge "Fix read-only branches error in zuul-web"
Diffstat (limited to 'tests')
-rw-r--r--tests/unit/test_web.py22
-rw-r--r--tests/unit/test_zk.py24
2 files changed, 34 insertions, 12 deletions
diff --git a/tests/unit/test_web.py b/tests/unit/test_web.py
index 5d38c5b19..ba0c10488 100644
--- a/tests/unit/test_web.py
+++ b/tests/unit/test_web.py
@@ -3282,3 +3282,25 @@ class TestWebStartup(ZuulTestCase):
# If the config didn't load correctly, we won't have the jobs
jobs = self.get_url("api/tenant/tenant-one/jobs").json()
self.assertEqual(len(jobs), 10)
+
+
+class TestWebUnprotectedBranches(BaseWithWeb):
+ config_file = 'zuul-github-driver.conf'
+ tenant_config_file = 'config/unprotected-branches/main.yaml'
+
+ def test_no_protected_branches(self):
+ """Regression test to check that zuul-web doesn't display
+ config errors when no protected branch exists."""
+ self.startWebServer()
+ tenant = self.scheds.first.sched.abide.tenants.get('tenant-one')
+
+ project2 = tenant.untrusted_projects[1]
+ tpc2 = tenant.project_configs[project2.canonical_name]
+
+ # project2 should have no parsed branch
+ self.assertEqual(0, len(tpc2.parsed_branch_config.keys()))
+
+ # Zuul-web should not display any config errors
+ config_errors = self.get_url(
+ "api/tenant/tenant-one/config-errors").json()
+ self.assertEqual(len(config_errors), 0)
diff --git a/tests/unit/test_zk.py b/tests/unit/test_zk.py
index e2893e9df..e45629bef 100644
--- a/tests/unit/test_zk.py
+++ b/tests/unit/test_zk.py
@@ -1834,9 +1834,9 @@ class TestBranchCache(ZooKeeperBaseTestCase):
sorted(cache.getProjectBranches('project1', True)),
test_data['project1']['protected']
)
- self.assertEqual(
- cache.getProjectBranches('project1', False),
- None,
+ self.assertRaises(
+ LookupError,
+ lambda: cache.getProjectBranches('project1', False)
)
cache.setProjectBranches('project1', False,
@@ -1862,21 +1862,21 @@ class TestBranchCache(ZooKeeperBaseTestCase):
},
}
- self.assertEqual(
- cache.getProjectBranches('project1', True),
- None
+ self.assertRaises(
+ LookupError,
+ lambda: cache.getProjectBranches('project1', True)
)
- self.assertEqual(
- cache.getProjectBranches('project1', False),
- None
+ self.assertRaises(
+ LookupError,
+ lambda: cache.getProjectBranches('project1', False)
)
# Test the other order; all followed by protected-only
cache.setProjectBranches('project1', False,
test_data['project1']['all'])
- self.assertEqual(
- cache.getProjectBranches('project1', True),
- None
+ self.assertRaises(
+ LookupError,
+ lambda: cache.getProjectBranches('project1', True)
)
self.assertEqual(
sorted(cache.getProjectBranches('project1', False)),