diff --git a/packages/backend-test-utils/src/cache/TestCaches.ts b/packages/backend-test-utils/src/cache/TestCaches.ts index d4553697bf..27c07daa32 100644 --- a/packages/backend-test-utils/src/cache/TestCaches.ts +++ b/packages/backend-test-utils/src/cache/TestCaches.ts @@ -108,6 +108,9 @@ export class TestCaches { } eachSupportedId(): [TestCacheId][] { + if (this.supportedIds.length === 0) { + return [['MISSING' as TestCacheId]]; + } return this.supportedIds.map(id => [id]); } diff --git a/packages/backend-test-utils/src/database/TestDatabases.ts b/packages/backend-test-utils/src/database/TestDatabases.ts index 8baac04193..46d966b6ee 100644 --- a/packages/backend-test-utils/src/database/TestDatabases.ts +++ b/packages/backend-test-utils/src/database/TestDatabases.ts @@ -124,6 +124,13 @@ export class TestDatabases { } eachSupportedId(): [TestDatabaseId][] { + if (this.supportedIds.length === 0) { + // Return a placeholder so that describe.each/it.each does not throw + // when no databases are available. The init() call will throw for + // the unknown ID, causing the test to be reported as failed rather + // than crashing the entire suite. + return [['MISSING' as TestDatabaseId]]; + } return this.supportedIds.map(id => [id]); }