summaryrefslogtreecommitdiff
path: root/tests/unit/test_requirements.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unit/test_requirements.py')
-rw-r--r--tests/unit/test_requirements.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/unit/test_requirements.py b/tests/unit/test_requirements.py
index 9a32e4b21..9f3b87187 100644
--- a/tests/unit/test_requirements.py
+++ b/tests/unit/test_requirements.py
@@ -453,3 +453,40 @@ class TestRequirementsReject(ZuulTestCase):
self.fake_gerrit.addEvent(comment)
self.waitUntilSettled()
self.assertEqual(len(self.history), 3)
+
+
+class TestRequirementsTrustedCheck(ZuulTestCase):
+ config_file = "zuul-gerrit-github.conf"
+ tenant_config_file = "config/requirements/trusted-check/main.yaml"
+
+ def test_non_live_requirements(self):
+ # Test that pipeline requirements are applied to non-live
+ # changes.
+ A = self.fake_gerrit.addFakeChange('org/project', 'master', 'A')
+ B = self.fake_gerrit.addFakeChange('org/project', 'master', 'B')
+ B.setDependsOn(A, 1)
+ B.addApproval('Code-Review', 2)
+
+ self.fake_gerrit.addEvent(B.getPatchsetCreatedEvent(1))
+ self.waitUntilSettled()
+ self.assertHistory([])
+
+ self.fake_gerrit.addEvent(A.addApproval('Code-Review', 2))
+ self.fake_gerrit.addEvent(B.getPatchsetCreatedEvent(1))
+ self.waitUntilSettled()
+ self.assertHistory([
+ dict(name='check-job', result='SUCCESS', changes='1,1 2,1')],
+ ordered=False)
+
+ def test_other_connections(self):
+ # Test allow-other-connections: False
+ A = self.fake_github.openFakePullRequest("gh/project", "master", "A")
+ B = self.fake_gerrit.addFakeChange('org/project', 'master', 'B')
+ B.data["commitMessage"] = "{}\n\nDepends-On: {}\n".format(
+ B.subject, A.url,
+ )
+ B.addApproval('Code-Review', 2)
+
+ self.fake_gerrit.addEvent(B.getPatchsetCreatedEvent(1))
+ self.waitUntilSettled()
+ self.assertHistory([])