@openora/core 0.4.1-canary.165 → 0.4.1-canary.167

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/audit/__tests__/map-event.test.js +54 -0
  3. package/dist/audit/__tests__/map-event.test.js.map +1 -1
  4. package/dist/audit/plugin.d.ts.map +1 -1
  5. package/dist/audit/plugin.js +40 -0
  6. package/dist/audit/plugin.js.map +1 -1
  7. package/dist/casino/gaming/__tests__/game-tag.service.int.test.d.ts +2 -0
  8. package/dist/casino/gaming/__tests__/game-tag.service.int.test.d.ts.map +1 -0
  9. package/dist/casino/gaming/__tests__/game-tag.service.int.test.js +143 -0
  10. package/dist/casino/gaming/__tests__/game-tag.service.int.test.js.map +1 -0
  11. package/dist/casino/gaming/__tests__/gaming-catalog-admin.router.int.test.js +62 -3
  12. package/dist/casino/gaming/__tests__/gaming-catalog-admin.router.int.test.js.map +1 -1
  13. package/dist/casino/gaming/__tests__/gaming.service.int.test.js +61 -2
  14. package/dist/casino/gaming/__tests__/gaming.service.int.test.js.map +1 -1
  15. package/dist/casino/gaming/contract/index.d.ts +229 -0
  16. package/dist/casino/gaming/contract/index.d.ts.map +1 -1
  17. package/dist/casino/gaming/contract/index.js +44 -1
  18. package/dist/casino/gaming/contract/index.js.map +1 -1
  19. package/dist/casino/gaming/drizzle/migrations/0006_young_wrecker.sql +25 -0
  20. package/dist/casino/gaming/drizzle/migrations/meta/0006_snapshot.json +885 -0
  21. package/dist/casino/gaming/drizzle/migrations/meta/_journal.json +7 -0
  22. package/dist/casino/gaming/plugin.d.ts.map +1 -1
  23. package/dist/casino/gaming/plugin.js +2 -0
  24. package/dist/casino/gaming/plugin.js.map +1 -1
  25. package/dist/casino/gaming/router/index.d.ts +153 -1
  26. package/dist/casino/gaming/router/index.d.ts.map +1 -1
  27. package/dist/casino/gaming/router/index.js +31 -2
  28. package/dist/casino/gaming/router/index.js.map +1 -1
  29. package/dist/casino/gaming/schema/index.d.ts +190 -0
  30. package/dist/casino/gaming/schema/index.d.ts.map +1 -1
  31. package/dist/casino/gaming/schema/index.js +30 -1
  32. package/dist/casino/gaming/schema/index.js.map +1 -1
  33. package/dist/casino/gaming/service/game-category.service.d.ts +3 -7
  34. package/dist/casino/gaming/service/game-category.service.d.ts.map +1 -1
  35. package/dist/casino/gaming/service/game-category.service.js.map +1 -1
  36. package/dist/casino/gaming/service/game-provider.service.d.ts +3 -7
  37. package/dist/casino/gaming/service/game-provider.service.d.ts.map +1 -1
  38. package/dist/casino/gaming/service/game-provider.service.js.map +1 -1
  39. package/dist/casino/gaming/service/game-tag.service.d.ts +63 -0
  40. package/dist/casino/gaming/service/game-tag.service.d.ts.map +1 -0
  41. package/dist/casino/gaming/service/game-tag.service.js +140 -0
  42. package/dist/casino/gaming/service/game-tag.service.js.map +1 -0
  43. package/dist/casino/gaming/service/gaming.service.d.ts +33 -7
  44. package/dist/casino/gaming/service/gaming.service.d.ts.map +1 -1
  45. package/dist/casino/gaming/service/gaming.service.js +80 -19
  46. package/dist/casino/gaming/service/gaming.service.js.map +1 -1
  47. package/dist/casino/lobby/__tests__/lobby.cache.int.test.js +24 -2
  48. package/dist/casino/lobby/__tests__/lobby.cache.int.test.js.map +1 -1
  49. package/dist/casino/lobby/contract/index.d.ts +52 -0
  50. package/dist/casino/lobby/contract/index.d.ts.map +1 -1
  51. package/dist/casino/lobby/contract/index.js +2 -1
  52. package/dist/casino/lobby/contract/index.js.map +1 -1
  53. package/dist/casino/lobby/router/index.d.ts +26 -0
  54. package/dist/casino/lobby/router/index.d.ts.map +1 -1
  55. package/dist/casino/lobby/service/lobby.service.d.ts +14 -0
  56. package/dist/casino/lobby/service/lobby.service.d.ts.map +1 -1
  57. package/dist/casino/lobby/service/lobby.service.js +22 -6
  58. package/dist/casino/lobby/service/lobby.service.js.map +1 -1
  59. package/dist/casino/shared/game-catalog.d.ts +23 -1
  60. package/dist/casino/shared/game-catalog.d.ts.map +1 -1
  61. package/dist/casino/shared/game-catalog.js +39 -19
  62. package/dist/casino/shared/game-catalog.js.map +1 -1
  63. package/dist/contracts/schemas/__tests__/events.test.js +25 -0
  64. package/dist/contracts/schemas/__tests__/events.test.js.map +1 -1
  65. package/dist/contracts/schemas/__tests__/game-schemas.test.js +27 -1
  66. package/dist/contracts/schemas/__tests__/game-schemas.test.js.map +1 -1
  67. package/dist/contracts/schemas/events.d.ts +70 -0
  68. package/dist/contracts/schemas/events.d.ts.map +1 -1
  69. package/dist/contracts/schemas/events.js +24 -1
  70. package/dist/contracts/schemas/events.js.map +1 -1
  71. package/dist/contracts/schemas/game.d.ts +41 -0
  72. package/dist/contracts/schemas/game.d.ts.map +1 -1
  73. package/dist/contracts/schemas/game.js +19 -0
  74. package/dist/contracts/schemas/game.js.map +1 -1
  75. package/dist/contracts/schemas/iam.d.ts +1 -1
  76. package/dist/contracts/schemas/iam.js +1 -1
  77. package/dist/contracts/schemas/iam.js.map +1 -1
  78. package/dist/server/auth/permissions.d.ts +12 -12
  79. package/dist/server/auth/permissions.js +1 -1
  80. package/dist/server/auth/permissions.js.map +1 -1
  81. package/package.json +1 -1
@@ -95,6 +95,60 @@ describe('mapEventToRecord: gaming.provider.created', () => {
95
95
  });
96
96
  });
97
97
  });
98
+ describe('mapEventToRecord: gaming tag catalog mutations', () => {
99
+ const tagId = '77777777-7777-4777-8777-777777777777';
100
+ const snapshot = {
101
+ name: 'Featured',
102
+ type: 'custom',
103
+ visibility: 'visible',
104
+ metadata: null,
105
+ };
106
+ it('audits tag creation against the game tag resource', async () => {
107
+ const row = await mapEventToRecord('gaming.tag.created', {
108
+ tagId,
109
+ actorId: adminId,
110
+ ...snapshot,
111
+ });
112
+ expect(row).toMatchObject({
113
+ actorType: 'admin',
114
+ actorId: adminId,
115
+ resourceType: 'game_tag',
116
+ resourceId: tagId,
117
+ after: snapshot,
118
+ });
119
+ });
120
+ it('audits tag updates against the game tag resource', async () => {
121
+ const row = await mapEventToRecord('gaming.tag.updated', {
122
+ tagId,
123
+ actorId: adminId,
124
+ before: { ...snapshot, visibility: 'invisible' },
125
+ after: snapshot,
126
+ });
127
+ expect(row).toMatchObject({
128
+ actorType: 'admin',
129
+ actorId: adminId,
130
+ resourceType: 'game_tag',
131
+ resourceId: tagId,
132
+ before: { visibility: 'invisible' },
133
+ after: snapshot,
134
+ });
135
+ });
136
+ it('audits affected games when a game tag is deleted', async () => {
137
+ const affectedGameId = '88888888-8888-4888-8888-888888888888';
138
+ const row = await mapEventToRecord('gaming.tag.deleted', {
139
+ tagId,
140
+ actorId: adminId,
141
+ before: snapshot,
142
+ after: { deleted: true, affectedGameIds: [affectedGameId] },
143
+ });
144
+ expect(row).toMatchObject({
145
+ resourceType: 'game_tag',
146
+ resourceId: tagId,
147
+ before: snapshot,
148
+ after: { deleted: true, affectedGameIds: [affectedGameId] },
149
+ });
150
+ });
151
+ });
98
152
  describe('mapEventToRecord: identity.trusted_device.revoked / identity.2fa.reset', () => {
99
153
  const deviceId = '55555555-5555-5555-5555-555555555555';
100
154
  it('marks a self-service trust teardown a player action, not an admin one', async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"map-event.test.js","sourceRoot":"","sources":["../../../src/audit/__tests__/map-event.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map-event.test.js","sourceRoot":"","sources":["../../../src/audit/__tests__/map-event.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/audit/plugin.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAS5E,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,MAAM,EACb,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzB,OAAO,CAAC,WAAW,CAAC,CAo9BtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoID,wBAoC8C"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/audit/plugin.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAS5E,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,MAAM,EACb,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzB,OAAO,CAAC,WAAW,CAAC,CA4/BtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuID,wBAoC8C"}
@@ -733,6 +733,43 @@ export async function mapEventToRecord(topic, p) {
733
733
  after: isRecord(p['after']) ? p['after'] : null,
734
734
  };
735
735
  }
736
+ if (topic === 'gaming.tag.created') {
737
+ return {
738
+ ...base,
739
+ actorType: 'admin',
740
+ actorId: str(p['actorId']),
741
+ resourceType: 'game_tag',
742
+ resourceId: str(p['tagId']),
743
+ after: {
744
+ name: p['name'] ?? null,
745
+ type: p['type'] ?? null,
746
+ visibility: p['visibility'] ?? null,
747
+ metadata: p['metadata'] ?? null,
748
+ },
749
+ };
750
+ }
751
+ if (topic === 'gaming.tag.updated') {
752
+ return {
753
+ ...base,
754
+ actorType: 'admin',
755
+ actorId: str(p['actorId']),
756
+ resourceType: 'game_tag',
757
+ resourceId: str(p['tagId']),
758
+ before: isRecord(p['before']) ? p['before'] : null,
759
+ after: isRecord(p['after']) ? p['after'] : null,
760
+ };
761
+ }
762
+ if (topic === 'gaming.tag.deleted') {
763
+ return {
764
+ ...base,
765
+ actorType: 'admin',
766
+ actorId: str(p['actorId']),
767
+ resourceType: 'game_tag',
768
+ resourceId: str(p['tagId']),
769
+ before: isRecord(p['before']) ? p['before'] : null,
770
+ after: isRecord(p['after']) ? p['after'] : null,
771
+ };
772
+ }
736
773
  if (topic === 'gaming.game.updated') {
737
774
  return {
738
775
  ...base,
@@ -959,6 +996,9 @@ const SUBSCRIBED_TOPICS = [
959
996
  'gaming.provider.updated',
960
997
  'gaming.category.created',
961
998
  'gaming.category.updated',
999
+ 'gaming.tag.created',
1000
+ 'gaming.tag.updated',
1001
+ 'gaming.tag.deleted',
962
1002
  'gaming.game.updated',
963
1003
  'chat.user.blocked',
964
1004
  'chat.user.unblocked',
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/audit/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/audit/plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=game-tag.service.int.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"game-tag.service.int.test.d.ts","sourceRoot":"","sources":["../../../../src/casino/gaming/__tests__/game-tag.service.int.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,143 @@
1
+ import { describe, it, expect, beforeAll, afterAll, beforeEach } from 'vitest';
2
+ import { randomUUID } from 'node:crypto';
3
+ import { sql } from 'drizzle-orm';
4
+ import { createTestDb } from '@openora/core/testing';
5
+ import { NO_CLIENT_META, makeEventBus } from '../../../testing/mock.js';
6
+ import { migrate } from '../migrate.js';
7
+ import { game, gameProvider, gameTag, gameTagGame } from '../schema/index.js';
8
+ import { GameTagNameTakenError, GameTagNotFoundError, GameTagService, GameTagSystemDeletionError, } from '../service/game-tag.service.js';
9
+ let db;
10
+ const ACTOR = { actorId: '00000000-0000-4000-8000-000000000001', ...NO_CLIENT_META };
11
+ function makeService() {
12
+ const events = makeEventBus();
13
+ return { svc: new GameTagService(db.drizzle, events), events };
14
+ }
15
+ async function seedTag(overrides = {}) {
16
+ const [row] = await db.drizzle.db
17
+ .insert(gameTag)
18
+ .values({ name: `Tag ${randomUUID()}`, ...overrides })
19
+ .returning();
20
+ if (!row) {
21
+ throw new Error('failed to seed a game tag');
22
+ }
23
+ return row;
24
+ }
25
+ async function seedGame() {
26
+ const [provider] = await db.drizzle.db
27
+ .insert(gameProvider)
28
+ .values({ slug: `provider-${randomUUID()}`, name: 'Provider' })
29
+ .returning();
30
+ if (!provider) {
31
+ throw new Error('failed to seed a game provider');
32
+ }
33
+ const [record] = await db.drizzle.db
34
+ .insert(game)
35
+ .values({
36
+ name: 'Game',
37
+ slug: `game-${randomUUID()}`,
38
+ providerId: provider.id,
39
+ aggregator: 'direct',
40
+ })
41
+ .returning();
42
+ if (!record) {
43
+ throw new Error('failed to seed a game');
44
+ }
45
+ return record;
46
+ }
47
+ const emittedTopics = (events) => events.emit.mock.calls.map(([topic]) => topic);
48
+ beforeAll(async () => {
49
+ db = await createTestDb([migrate]);
50
+ });
51
+ afterAll(async () => {
52
+ await db.drop();
53
+ });
54
+ beforeEach(async () => {
55
+ await db.drizzle.db.execute(sql `TRUNCATE ${gameTagGame}, ${gameTag}, ${game}, ${gameProvider} RESTART IDENTITY CASCADE`);
56
+ });
57
+ describe('GameTagService (real PG)', () => {
58
+ it('creates a tag with the requested values and emits an event', async () => {
59
+ const { svc, events } = makeService();
60
+ const created = await svc.createTag({
61
+ name: 'Featured',
62
+ visibility: 'invisible',
63
+ ...ACTOR,
64
+ });
65
+ expect(created).toMatchObject({
66
+ name: 'Featured',
67
+ type: 'custom',
68
+ visibility: 'invisible',
69
+ metadata: null,
70
+ createdAt: expect.any(String),
71
+ updatedAt: expect.any(String),
72
+ });
73
+ expect(emittedTopics(events)).toContain('gaming.tag.created');
74
+ });
75
+ it('lists tags for admins with search and enum filters', async () => {
76
+ await seedTag({ name: 'Visible Custom', type: 'custom', visibility: 'visible' });
77
+ await seedTag({ name: 'Invisible System', type: 'system', visibility: 'invisible' });
78
+ const { svc } = makeService();
79
+ expect((await svc.listTagsAdmin({ page: 1, limit: 10, q: 'visible', type: 'custom' })).items).toHaveLength(1);
80
+ expect((await svc.listTagsAdmin({ page: 1, limit: 10, visibility: 'invisible' })).items.map((tag) => tag.name)).toEqual(['Invisible System']);
81
+ });
82
+ it('updates a tag and rejects a duplicate name', async () => {
83
+ const existing = await seedTag({ name: 'Existing', type: 'system' });
84
+ const other = await seedTag({ name: 'Other' });
85
+ const { svc, events } = makeService();
86
+ const updated = await svc.updateTag({
87
+ id: existing.id,
88
+ name: 'Renamed',
89
+ visibility: 'visible',
90
+ metadata: { theme: 'promo' },
91
+ ...ACTOR,
92
+ });
93
+ expect(updated).toMatchObject({
94
+ id: existing.id,
95
+ name: 'Renamed',
96
+ type: 'system',
97
+ visibility: 'visible',
98
+ metadata: { theme: 'promo' },
99
+ });
100
+ expect(emittedTopics(events)).toContain('gaming.tag.updated');
101
+ await expect(svc.updateTag({ id: other.id, name: 'Renamed', ...ACTOR })).rejects.toBeInstanceOf(GameTagNameTakenError);
102
+ });
103
+ it('stores, replaces, and clears metadata on update', async () => {
104
+ const existing = await seedTag({
105
+ name: 'Metadata Tag',
106
+ metadata: { theme: 'original' },
107
+ });
108
+ const { svc } = makeService();
109
+ const replaced = await svc.updateTag({
110
+ id: existing.id,
111
+ metadata: { theme: 'replaced' },
112
+ ...ACTOR,
113
+ });
114
+ expect(replaced.metadata).toEqual({ theme: 'replaced' });
115
+ const cleared = await svc.updateTag({
116
+ id: existing.id,
117
+ metadata: null,
118
+ ...ACTOR,
119
+ });
120
+ expect(cleared.metadata).toBeNull();
121
+ });
122
+ it('createTag rejects a duplicate name', async () => {
123
+ await seedTag({ name: 'Featured' });
124
+ const { svc } = makeService();
125
+ await expect(svc.createTag({ name: 'Featured', visibility: 'invisible', ...ACTOR })).rejects.toBeInstanceOf(GameTagNameTakenError);
126
+ });
127
+ it('deletes custom tags and refuses system tag deletion', async () => {
128
+ const custom = await seedTag({ name: 'Custom', type: 'custom' });
129
+ const system = await seedTag({ name: 'System', type: 'system' });
130
+ const linkedGame = await seedGame();
131
+ await db.drizzle.db.insert(gameTagGame).values({ gameId: linkedGame.id, tagId: custom.id });
132
+ const { svc, events } = makeService();
133
+ await expect(svc.deleteTag({ id: system.id, ...ACTOR })).rejects.toBeInstanceOf(GameTagSystemDeletionError);
134
+ await expect(svc.getTag(system.id)).resolves.toMatchObject({ name: 'System' });
135
+ await expect(svc.deleteTag({ id: custom.id, ...ACTOR })).resolves.toBe(true);
136
+ await expect(svc.getTag(custom.id)).rejects.toBeInstanceOf(GameTagNotFoundError);
137
+ expect(events.emit).toHaveBeenCalledWith('gaming.tag.deleted', expect.objectContaining({
138
+ tagId: custom.id,
139
+ after: { deleted: true, affectedGameIds: [linkedGame.id] },
140
+ }));
141
+ });
142
+ });
143
+ //# sourceMappingURL=game-tag.service.int.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"game-tag.service.int.test.js","sourceRoot":"","sources":["../../../../src/casino/gaming/__tests__/game-tag.service.int.test.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,11 @@ import { call, ORPCError } from '@orpc/server';
5
5
  import { createTestDb } from '@openora/core/testing';
6
6
  import { mock, makeEventBus, makeAdminGuard, makeIdentityReader, testContext, } from '../../../testing/mock.js';
7
7
  import { migrate } from '../migrate.js';
8
- import { game, gameCategory, gameCategoryGame, gameProvider, gameRound } from '../schema/index.js';
8
+ import { game, gameCategory, gameCategoryGame, gameProvider, gameRound, gameTag, gameTagGame, } from '../schema/index.js';
9
9
  import { createGamingRouter } from '../router/index.js';
10
10
  import { GamingService } from '../service/gaming.service.js';
11
11
  import { GameCategoryService } from '../service/game-category.service.js';
12
+ import { GameTagService } from '../service/game-tag.service.js';
12
13
  import { GameProviderService } from '../service/game-provider.service.js';
13
14
  const CTX = testContext();
14
15
  let db;
@@ -29,8 +30,9 @@ function routerWith(adminGuard) {
29
30
  }), unrestricted, makeWalletCommands(), makeIdentityReader());
30
31
  const providers = new GameProviderService(db.drizzle, events);
31
32
  const categories = new GameCategoryService(db.drizzle, events);
33
+ const tags = new GameTagService(db.drizzle, events);
32
34
  return {
33
- router: createGamingRouter({ gaming, providers, categories, adminGuard }),
35
+ router: createGamingRouter({ gaming, providers, categories, tags, adminGuard }),
34
36
  events,
35
37
  };
36
38
  }
@@ -63,6 +65,23 @@ const GUARDED_ROUTES = [
63
65
  name: 'updateCategory',
64
66
  invoke: (r) => call(r.updateCategory, { id: '00000000-0000-4000-8000-000000000000', name: 'X' }, { context: CTX }),
65
67
  },
68
+ { name: 'listAdminTags', invoke: (r) => call(r.listAdminTags, {}, { context: CTX }) },
69
+ {
70
+ name: 'getAdminTag',
71
+ invoke: (r) => call(r.getAdminTag, { id: '00000000-0000-4000-8000-000000000000' }, { context: CTX }),
72
+ },
73
+ {
74
+ name: 'createTag',
75
+ invoke: (r) => call(r.createTag, { name: 'Featured' }, { context: CTX }),
76
+ },
77
+ {
78
+ name: 'updateTag',
79
+ invoke: (r) => call(r.updateTag, { id: '00000000-0000-4000-8000-000000000000', name: 'X' }, { context: CTX }),
80
+ },
81
+ {
82
+ name: 'deleteTag',
83
+ invoke: (r) => call(r.deleteTag, { id: '00000000-0000-4000-8000-000000000000' }, { context: CTX }),
84
+ },
66
85
  {
67
86
  name: 'updateGame',
68
87
  invoke: (r) => call(r.updateGame, { id: '00000000-0000-4000-8000-000000000000', name: 'X' }, { context: CTX }),
@@ -83,7 +102,7 @@ afterAll(async () => {
83
102
  await db.drop();
84
103
  });
85
104
  beforeEach(async () => {
86
- await db.drizzle.db.execute(sql `TRUNCATE ${gameRound}, ${gameCategoryGame}, ${game}, ${gameProvider}, ${gameCategory} RESTART IDENTITY CASCADE`);
105
+ await db.drizzle.db.execute(sql `TRUNCATE ${gameRound}, ${gameCategoryGame}, ${gameTagGame}, ${game}, ${gameProvider}, ${gameCategory}, ${gameTag} RESTART IDENTITY CASCADE`);
87
106
  });
88
107
  describe('gaming catalog router authz', () => {
89
108
  it.each(GUARDED_ROUTES)('rejects $name for a non-privileged caller', async ({ invoke }) => {
@@ -215,5 +234,45 @@ describe('gaming catalog router authz', () => {
215
234
  expect(events.emit).toHaveBeenCalledWith('gaming.game.updated', expect.objectContaining({ gameId: g.id }));
216
235
  expect(events.emit).toHaveBeenCalledWith('gaming.provider.created', expect.objectContaining({ providerId: provider.id }));
217
236
  });
237
+ it('creates, reads, updates, and deletes custom tags through guarded routes', async () => {
238
+ const { router, events } = routerWith(allowingGuard());
239
+ const created = await call(router.createTag, { name: 'Featured' }, { context: CTX });
240
+ expect(created).toMatchObject({
241
+ name: 'Featured',
242
+ type: 'custom',
243
+ visibility: 'invisible',
244
+ metadata: null,
245
+ });
246
+ await expect(call(router.listAdminTags, {}, { context: CTX })).resolves.toMatchObject({
247
+ items: [expect.objectContaining({ id: created.id })],
248
+ });
249
+ await expect(call(router.getAdminTag, { id: created.id }, { context: CTX })).resolves.toMatchObject({ id: created.id, name: 'Featured' });
250
+ await expect(call(router.updateTag, {
251
+ id: created.id,
252
+ visibility: 'visible',
253
+ metadata: { theme: 'promo' },
254
+ }, { context: CTX })).resolves.toMatchObject({ visibility: 'visible' });
255
+ expect(events.emit).toHaveBeenCalledWith('gaming.tag.updated', expect.objectContaining({ tagId: created.id }));
256
+ await expect(call(router.deleteTag, { id: created.id }, { context: CTX })).resolves.toBe(true);
257
+ });
258
+ it('strips an admin-supplied type and always creates a custom tag', async () => {
259
+ const { router } = routerWith(allowingGuard());
260
+ const created = await call(router.createTag, { name: 'Sneaky', type: 'system' }, { context: CTX });
261
+ expect(created).toMatchObject({ name: 'Sneaky', type: 'custom' });
262
+ });
263
+ it('refuses deleting a system tag through the guarded route', async () => {
264
+ const { router } = routerWith(allowingGuard());
265
+ const [system] = await db.drizzle.db
266
+ .insert(gameTag)
267
+ .values({ name: 'System', type: 'system' })
268
+ .returning();
269
+ if (!system) {
270
+ throw new Error('failed to seed a system tag');
271
+ }
272
+ await expect(call(router.deleteTag, { id: system.id }, { context: CTX })).rejects.toBeInstanceOf(ORPCError);
273
+ await expect(call(router.getAdminTag, { id: system.id }, { context: CTX })).resolves.toMatchObject({
274
+ id: system.id,
275
+ });
276
+ });
218
277
  });
219
278
  //# sourceMappingURL=gaming-catalog-admin.router.int.test.js.map