ci: split boundary lanes

This commit is contained in:
Tianyi Cui
2026-07-21 21:39:51 +08:00
parent 30789a45ee
commit 89add445fe
4 changed files with 51 additions and 25 deletions

View File

@@ -8,9 +8,19 @@ describe('static gate shards', () => {
expect(selectStaticGates(completeInventory, shard.name).map(gate => gate.id)).toEqual(shard.gateIds)
})
it('selects multiple lanes in gate inventory order', () => {
const selectedNames = new Set(['foundation', 'catalogs', 'prose'])
const expected = staticShards
.filter(shard => selectedNames.has(shard.name))
.flatMap(shard => shard.gateIds)
expect(selectStaticGates(completeInventory, 'foundation,catalogs,prose').map(gate => gate.id)).toEqual(expected)
})
it('rejects missing, duplicate, and unknown assignments', () => {
expect(() => selectStaticGates(completeInventory.slice(1))).toThrow('assign every static gate exactly once')
expect(() => selectStaticGates([...completeInventory, completeInventory[0]!])).toThrow('static gate IDs must be unique')
expect(() => selectStaticGates(completeInventory, 'missing')).toThrow('unknown DSH_STATIC_SHARD')
expect(() => selectStaticGates(completeInventory, 'foundation,foundation')).toThrow('nonempty and unique')
expect(() => selectStaticGates(completeInventory, 'foundation,,prose')).toThrow('nonempty and unique')
})
})