@volontariapp/domain-event 3.6.4-snap-edb1753 → 3.6.4-snap-19d6071
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.
- package/dist/repositories/postgres-event.repository.d.ts.map +1 -1
- package/dist/repositories/postgres-event.repository.js +3 -26
- package/dist/repositories/postgres-event.repository.js.map +1 -1
- package/package.json +5 -5
- package/dist/test/integration/triggers.int.spec.d.ts +0 -2
- package/dist/test/integration/triggers.int.spec.d.ts.map +0 -1
- package/dist/test/integration/triggers.int.spec.js +0 -104
- package/dist/test/integration/triggers.int.spec.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-event.repository.d.ts","sourceRoot":"","sources":["../../src/repositories/postgres-event.repository.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAA4C,MAAM,wBAAwB,CAAC;AAElG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"postgres-event.repository.d.ts","sourceRoot":"","sources":["../../src/repositories/postgres-event.repository.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAA4C,MAAM,wBAAwB,CAAC;AAElG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAMpE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAEhE,qBACa,uBACX,SAAQ,cAAc,CAAC,UAAU,EAAE,WAAW,CAC9C,YAAW,gBAAgB;gBAIzB,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAK9B,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAO3E,OAAO,CAAC,SAAS,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAOzD,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAIlD,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAgCxE,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgCpD,YAAY,CAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,MAAM,EACtB,IAAI,CAAC,EAAE,SAAS,EAChB,KAAK,CAAC,EAAE,UAAU,GACjB,OAAO,CAAC,WAAW,EAAE,CAAC;CAqB1B"}
|
|
@@ -17,7 +17,7 @@ import { EventQueueRepository } from '@volontariapp/outbox';
|
|
|
17
17
|
import { EventModel } from '../models/event.model.js';
|
|
18
18
|
import { EventEntity } from '../entities/event.entity.js';
|
|
19
19
|
import { Streams } from '@volontariapp/shared';
|
|
20
|
-
import { EventEventMessagingType } from '@volontariapp/messaging';
|
|
20
|
+
import { EventEventMessagingType, } from '@volontariapp/messaging';
|
|
21
21
|
let PostgresEventRepository = class PostgresEventRepository extends BaseRepository {
|
|
22
22
|
constructor(repository) {
|
|
23
23
|
super(repository, EventEntity, EventModel);
|
|
@@ -44,19 +44,8 @@ let PostgresEventRepository = class PostgresEventRepository extends BaseReposito
|
|
|
44
44
|
const savedEventModel = await queryRunner.manager.save(this.modelClass, eventModel);
|
|
45
45
|
const savedEventEntity = this.toEntity(savedEventModel);
|
|
46
46
|
const payload = {
|
|
47
|
-
|
|
48
|
-
name: savedEventEntity.name,
|
|
49
|
-
description: savedEventEntity.description,
|
|
50
|
-
startAt: savedEventEntity.startAt,
|
|
51
|
-
endAt: savedEventEntity.endAt,
|
|
52
|
-
type: savedEventEntity.type,
|
|
53
|
-
state: savedEventEntity.state,
|
|
54
|
-
awardedImpactScore: savedEventEntity.awardedImpactScore,
|
|
55
|
-
maxParticipants: savedEventEntity.maxParticipants,
|
|
56
|
-
organizerId: savedEventEntity.organizerId,
|
|
47
|
+
eventId: savedEventEntity.id,
|
|
57
48
|
localisationName: savedEventEntity.localisationName,
|
|
58
|
-
createdAt: savedEventEntity.createdAt,
|
|
59
|
-
updatedAt: savedEventEntity.updatedAt,
|
|
60
49
|
};
|
|
61
50
|
const eventQueueEntity = EventQueueEntity.createEvent({
|
|
62
51
|
type: EventEventMessagingType.EVENT_CREATED,
|
|
@@ -78,19 +67,7 @@ let PostgresEventRepository = class PostgresEventRepository extends BaseReposito
|
|
|
78
67
|
return false;
|
|
79
68
|
await queryRunner.manager.delete(this.modelClass, id);
|
|
80
69
|
const payload = {
|
|
81
|
-
|
|
82
|
-
name: entity.name,
|
|
83
|
-
description: entity.description,
|
|
84
|
-
startAt: entity.startAt,
|
|
85
|
-
endAt: entity.endAt,
|
|
86
|
-
type: entity.type,
|
|
87
|
-
state: entity.state,
|
|
88
|
-
awardedImpactScore: entity.awardedImpactScore,
|
|
89
|
-
maxParticipants: entity.maxParticipants,
|
|
90
|
-
organizerId: entity.organizerId,
|
|
91
|
-
localisationName: entity.localisationName,
|
|
92
|
-
createdAt: entity.createdAt,
|
|
93
|
-
updatedAt: entity.updatedAt,
|
|
70
|
+
eventId: entity.id,
|
|
94
71
|
};
|
|
95
72
|
const eventQueueEntity = EventQueueEntity.createEvent({
|
|
96
73
|
type: EventEventMessagingType.EVENT_DELETED,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-event.repository.js","sourceRoot":"","sources":["../../src/repositories/postgres-event.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,
|
|
1
|
+
{"version":3,"file":"postgres-event.repository.js","sourceRoot":"","sources":["../../src/repositories/postgres-event.repository.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@volontariapp/domain-event",
|
|
3
|
-
"version": "3.6.4-snap-
|
|
3
|
+
"version": "3.6.4-snap-19d6071",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"provenance": true
|
|
@@ -56,13 +56,13 @@
|
|
|
56
56
|
"dependencies": {
|
|
57
57
|
"@nestjs/common": "^11.0.1",
|
|
58
58
|
"@volontariapp/contracts": "4.2.6",
|
|
59
|
-
"@volontariapp/database": "3.3.13-snap-
|
|
59
|
+
"@volontariapp/database": "3.3.13-snap-19d6071",
|
|
60
60
|
"@volontariapp/errors": "0.6.0",
|
|
61
61
|
"@volontariapp/errors-nest": "0.13.0",
|
|
62
62
|
"@volontariapp/logger": "0.2.5",
|
|
63
|
-
"@volontariapp/messaging": "2.8.2-snap-
|
|
64
|
-
"@volontariapp/outbox": "0.9.31-snap-
|
|
65
|
-
"@volontariapp/shared": "0.7.1-snap-
|
|
63
|
+
"@volontariapp/messaging": "2.8.2-snap-19d6071",
|
|
64
|
+
"@volontariapp/outbox": "0.9.31-snap-19d6071",
|
|
65
|
+
"@volontariapp/shared": "0.7.1-snap-19d6071",
|
|
66
66
|
"class-transformer": "^0.5.1"
|
|
67
67
|
}
|
|
68
68
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"triggers.int.spec.d.ts","sourceRoot":"","sources":["../../../src/test/integration/triggers.int.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, beforeAll, afterAll, beforeEach } from '@jest/globals';
|
|
2
|
-
import { testDataSource, initializeTestDb, closeTestDb, truncateAll, getTestRepository, } from '../data-source.js';
|
|
3
|
-
import { EventModel } from '../../models/event.model.js';
|
|
4
|
-
import { TagModel } from '../../models/tag.model.js';
|
|
5
|
-
import { RequirementModel } from '../../models/requirement.model.js';
|
|
6
|
-
import { PostgresEventRepository } from '../../repositories/postgres-event.repository.js';
|
|
7
|
-
import { PostgresTagRepository } from '../../repositories/postgres-tag.repository.js';
|
|
8
|
-
import { PostgresRequirementRepository } from '../../repositories/postgres-requirement.repository.js';
|
|
9
|
-
import { EventFactory } from '../__test-utils__/factories/event.factory.js';
|
|
10
|
-
import { TagFactory } from '../__test-utils__/factories/tag.factory.js';
|
|
11
|
-
import { RequirementFactory } from '../__test-utils__/factories/requirement.factory.js';
|
|
12
|
-
import { EventQueueModel } from '@volontariapp/database';
|
|
13
|
-
import { EventMessagingType } from '@volontariapp/messaging';
|
|
14
|
-
import { EVENT_QUEUE_TRIGGER_FUNCTION, EVENTS_TRIGGER, REQUIREMENTS_TRIGGER, TAGS_TRIGGER, EVENT_TAGS_TRIGGER, } from '../../database/triggers/index.js';
|
|
15
|
-
import { Streams } from '@volontariapp/shared';
|
|
16
|
-
describe('SQL Triggers (Integration)', () => {
|
|
17
|
-
let eventRepository;
|
|
18
|
-
let tagRepository;
|
|
19
|
-
let requirementRepository;
|
|
20
|
-
beforeAll(async () => {
|
|
21
|
-
await initializeTestDb();
|
|
22
|
-
await testDataSource.runMigrations();
|
|
23
|
-
await testDataSource.query(EVENT_QUEUE_TRIGGER_FUNCTION);
|
|
24
|
-
await testDataSource.query(EVENTS_TRIGGER);
|
|
25
|
-
await testDataSource.query(REQUIREMENTS_TRIGGER);
|
|
26
|
-
await testDataSource.query(TAGS_TRIGGER);
|
|
27
|
-
await testDataSource.query(EVENT_TAGS_TRIGGER);
|
|
28
|
-
eventRepository = new PostgresEventRepository(getTestRepository(EventModel));
|
|
29
|
-
tagRepository = new PostgresTagRepository(getTestRepository(TagModel));
|
|
30
|
-
requirementRepository = new PostgresRequirementRepository(getTestRepository(RequirementModel));
|
|
31
|
-
});
|
|
32
|
-
afterAll(async () => {
|
|
33
|
-
await closeTestDb();
|
|
34
|
-
});
|
|
35
|
-
beforeEach(async () => {
|
|
36
|
-
await truncateAll();
|
|
37
|
-
});
|
|
38
|
-
it('should create an event_queue record when an event is inserted', async () => {
|
|
39
|
-
const input = EventFactory.buildInput({ name: 'Trigger Test Event' });
|
|
40
|
-
await eventRepository.create(input);
|
|
41
|
-
const records = await testDataSource
|
|
42
|
-
.getRepository((EventQueueModel))
|
|
43
|
-
.find({ where: { type: EventMessagingType.EVENT_CHANGED } });
|
|
44
|
-
expect(records).toHaveLength(1);
|
|
45
|
-
const record = records[0];
|
|
46
|
-
expect(record.payload.after.name).toBe('Trigger Test Event');
|
|
47
|
-
expect(record.payload.before).toBeFalsy();
|
|
48
|
-
expect(record.emitter).toBe('ms-event');
|
|
49
|
-
expect(record.targetServices).toContain(Streams.SOCIAL_INTERACTIONS);
|
|
50
|
-
});
|
|
51
|
-
it('should create an event_queue record when a requirement is updated', async () => {
|
|
52
|
-
const req = await requirementRepository.create(RequirementFactory.buildInput({ currentQuantity: 0 }));
|
|
53
|
-
await requirementRepository.update(req.id, {
|
|
54
|
-
currentQuantity: 5,
|
|
55
|
-
updatedBy: '11111111-1111-1111-1111-111111111111',
|
|
56
|
-
});
|
|
57
|
-
const records = await testDataSource
|
|
58
|
-
.getRepository((EventQueueModel))
|
|
59
|
-
.find({ where: { type: EventMessagingType.REQUIREMENT_CHANGED } });
|
|
60
|
-
expect(records.length).toBeGreaterThanOrEqual(2);
|
|
61
|
-
const updateRecord = records.find((r) => !!r.payload.before);
|
|
62
|
-
expect(updateRecord).toBeDefined();
|
|
63
|
-
if (updateRecord) {
|
|
64
|
-
expect(updateRecord.payload.before.currentQuantity).toBe(0);
|
|
65
|
-
expect(updateRecord.payload.after.currentQuantity).toBe(5);
|
|
66
|
-
expect(updateRecord.emitter).toBe('ms-event');
|
|
67
|
-
expect(updateRecord.emitterId).toBe('11111111-1111-1111-1111-111111111111');
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
it('should create an event_queue record when a tag is deleted', async () => {
|
|
71
|
-
const tag = await tagRepository.create(TagFactory.buildInput({
|
|
72
|
-
name: 'To Delete',
|
|
73
|
-
updatedBy: '22222222-2222-2222-2222-222222222222',
|
|
74
|
-
}));
|
|
75
|
-
await tagRepository.delete(tag.id);
|
|
76
|
-
const records = await testDataSource
|
|
77
|
-
.getRepository((EventQueueModel))
|
|
78
|
-
.find({ where: { type: EventMessagingType.TAG_CHANGED } });
|
|
79
|
-
const deleteRecord = records.find((r) => !!r.payload.before);
|
|
80
|
-
expect(deleteRecord).toBeDefined();
|
|
81
|
-
if (deleteRecord) {
|
|
82
|
-
expect(deleteRecord.payload.after).toBeFalsy();
|
|
83
|
-
expect(deleteRecord.payload.before.name).toBe('To Delete');
|
|
84
|
-
expect(deleteRecord.emitterId).toBe('22222222-2222-2222-2222-222222222222');
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
it('should handle ManyToMany relation updates', async () => {
|
|
88
|
-
const event = await eventRepository.create(EventFactory.buildInput({ name: 'Relation Event' }));
|
|
89
|
-
const tag = await tagRepository.create(TagFactory.buildInput());
|
|
90
|
-
await testDataSource.query('INSERT INTO event_tags ("eventsId", "tagsId") VALUES ($1, $2)', [
|
|
91
|
-
event.id,
|
|
92
|
-
tag.id,
|
|
93
|
-
]);
|
|
94
|
-
const records = await testDataSource
|
|
95
|
-
.getRepository((EventQueueModel))
|
|
96
|
-
.find({ where: { type: EventMessagingType.EVENT_TAG_LINKED } });
|
|
97
|
-
expect(records).toHaveLength(1);
|
|
98
|
-
const record = records[0];
|
|
99
|
-
expect(record.payload.after.eventsId).toBe(event.id);
|
|
100
|
-
expect(record.payload.after.tagsId).toBe(tag.id);
|
|
101
|
-
expect(record.emitter).toBe('ms-event');
|
|
102
|
-
});
|
|
103
|
-
});
|
|
104
|
-
//# sourceMappingURL=triggers.int.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"triggers.int.spec.js","sourceRoot":"","sources":["../../../src/test/integration/triggers.int.spec.ts"],"names":[],"mappings":"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"}
|