diff --git a/server/tests/unit/db/entities-index.test.ts b/server/tests/unit/db/entities-index.test.ts index d5ea1a1e4..9d08dd7b9 100644 --- a/server/tests/unit/db/entities-index.test.ts +++ b/server/tests/unit/db/entities-index.test.ts @@ -38,14 +38,15 @@ describe('ALL_ENTITIES', () => { * + user_sessions, the session rows behind revocable session tokens * + ferrata_tiles, the stored via ferrata grid cells * + paddle_regions, paddle_features and tour_obstacle_reviews, the paddle obstacle data and decisions - * + trip_journal_links and trip_journal_link_members, the journal a trip shows and who it is open to) + * + trip_journal_links and trip_journal_link_members, the journal a trip shows and who it is open to + * + paddle_water_graphs and paddle_region_requests, a region's water network and the regions that wait for an admin) * is registered, and no two share a class name (a silent duplicate would * shadow one of them in `orm.getMetadata()`, exactly the kind of drift * `entity-schema-parity.test.ts` can't see — it iterates the metadata map, * which de-duplicates by class name). */ - it('ENT-003: exactly 141 entities, every class name unique', () => { - expect(ALL_ENTITIES.length).toBe(141); + it('ENT-003: exactly 142 entities, every class name unique', () => { + expect(ALL_ENTITIES.length).toBe(142); const names = ALL_ENTITIES.map((s) => s.meta.className); expect(new Set(names).size).toBe(names.length); }); diff --git a/server/tests/unit/db/entity-class-fields.test.ts b/server/tests/unit/db/entity-class-fields.test.ts index b7a49fc40..2ac6aa9e6 100644 --- a/server/tests/unit/db/entity-class-fields.test.ts +++ b/server/tests/unit/db/entity-class-fields.test.ts @@ -33,7 +33,8 @@ import { afterAll, beforeAll, beforeEach, describe, expect, it } from 'vitest'; // added_at (a link and its members are always written whole). // + paddle_water_graphs: file, rev, bytes, built_at, stats and its bounding box (a network is only ever written // whole, from one build of its region). -const KNOWN_UNINITIALISED_NOT_NULL_SCALARS = 491; +// + paddle_region_requests: region_id, name, reason (a request is only ever filed whole). +const KNOWN_UNINITIALISED_NOT_NULL_SCALARS = 494; describe('entity class fields never carry a NaN initialiser (task-4-review-shape.md, Important 1)', () => { it('CLASSFIELD-001: new X() has no own property whose value is NaN, across all 133 entities', () => { diff --git a/server/tests/unit/nest/notification-preferences.service.test.ts b/server/tests/unit/nest/notification-preferences.service.test.ts index 5c59b348e..e843bf08d 100644 --- a/server/tests/unit/nest/notification-preferences.service.test.ts +++ b/server/tests/unit/nest/notification-preferences.service.test.ts @@ -166,7 +166,8 @@ describe('getPreferencesMatrix', () => { const { event_types } = await getPreferencesMatrix(user.id, 'admin', 'admin'); expect(event_types).toContain('version_available'); expect(event_types).toContain('replica_failure'); - expect(event_types.length).toBe(2); + expect(event_types).toContain('paddle_region_requested'); + expect(event_types.length).toBe(3); }); it('NPREF-006 — returns default true for all preferences when no stored prefs', async () => {