Skip to content

Commit 81d277a

Browse files
committed
tests: the canary list check states the rule of #736 instead of the removed entry
test_the_repository_list_is_well_formed asserted that GalTranslPP is a canary, which #736 removed; ci-linux on main failed there. It now checks that the list is non-empty, unique and complete per entry, and that the downstream project stays out of the release gate.
1 parent 7377dac commit 81d277a

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

‎tests/scripts/test_release_canaries.py‎

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,9 +93,16 @@ def test_only_the_mcpp_pin_is_removed(self) -> None:
9393

9494
class Matrix(unittest.TestCase):
9595
def test_the_repository_list_is_well_formed(self) -> None:
96-
names = [c["name"] for c in rc.canaries()]
96+
canaries = rc.canaries()
97+
names = [c["name"] for c in canaries]
98+
self.assertTrue(names)
9799
self.assertEqual(len(names), len(set(names)))
98-
self.assertIn("GalTranslPP", names)
100+
for c in canaries:
101+
for key in ("repo", "ref", "os", "commands"):
102+
self.assertTrue(c.get(key), f"canary {c['name']} has no {key}")
103+
# The gate holds the ecosystem's own projects (mcpp#736); a downstream
104+
# project validates a release in its own pull request after it.
105+
self.assertNotIn("GalTranslPP", names)
99106

100107

101108
if __name__ == "__main__":

0 commit comments

Comments
 (0)