@stamhoofd/models 2.12.0 → 2.13.0

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.
@@ -0,0 +1,605 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const structures_1 = require("@stamhoofd/structures");
4
+ const uuid_1 = require("uuid");
5
+ const models_1 = require("../models");
6
+ const MemberMerger_1 = require("./MemberMerger");
7
+ describe("member merge", () => {
8
+ describe("mergeMemberDetails", () => {
9
+ describe("empty base details", () => {
10
+ //#region arrange
11
+ const m1 = new models_1.Member();
12
+ const m2 = new models_1.Member();
13
+ const d1Old = structures_1.MemberDetails.create({
14
+ firstName: " ",
15
+ lastName: "",
16
+ birthDay: undefined,
17
+ memberNumber: undefined,
18
+ uitpasNumber: undefined,
19
+ email: " ",
20
+ phone: undefined,
21
+ gender: structures_1.Gender.Other,
22
+ requiresFinancialSupport: undefined,
23
+ dataPermissions: undefined,
24
+ address: undefined,
25
+ parents: [],
26
+ emergencyContacts: [],
27
+ reviewTimes: undefined,
28
+ recordAnswers: undefined,
29
+ unverifiedEmails: [],
30
+ unverifiedPhones: [],
31
+ unverifiedAddresses: [],
32
+ notes: undefined,
33
+ });
34
+ const recordAnswer = structures_1.RecordAnswer.create({
35
+ settings: structures_1.RecordSettings.create({
36
+ name: "answer1",
37
+ required: true,
38
+ choices: [],
39
+ }),
40
+ });
41
+ const d2Old = structures_1.MemberDetails.create({
42
+ firstName: "John",
43
+ lastName: "Doe",
44
+ birthDay: new Date(1990, 1, 1),
45
+ memberNumber: "123",
46
+ uitpasNumber: "56",
47
+ email: "b7v2X@example.com",
48
+ phone: "04863544",
49
+ gender: structures_1.Gender.Male,
50
+ requiresFinancialSupport: structures_1.BooleanStatus.create({ value: true }),
51
+ dataPermissions: structures_1.BooleanStatus.create({ value: true }),
52
+ address: structures_1.Address.create({
53
+ city: "Amsterdam",
54
+ street: "Mozartstraat",
55
+ number: "1",
56
+ postalCode: "1011AB",
57
+ country: structures_1.Country.Netherlands,
58
+ }),
59
+ parents: [structures_1.Parent.create({ firstName: "John", lastName: "Doe" })],
60
+ emergencyContacts: [
61
+ structures_1.EmergencyContact.create({
62
+ name: "blabla",
63
+ title: "title",
64
+ phone: "04863544654",
65
+ }),
66
+ ],
67
+ reviewTimes: structures_1.ReviewTimes.create({
68
+ times: [
69
+ structures_1.ReviewTime.create({
70
+ name: "parents",
71
+ reviewedAt: new Date(2020, 1, 1),
72
+ }),
73
+ structures_1.ReviewTime.create({
74
+ name: "details",
75
+ reviewedAt: new Date(2021, 1, 1),
76
+ }),
77
+ ],
78
+ }),
79
+ recordAnswers: new Map([[recordAnswer.id, recordAnswer]]),
80
+ unverifiedEmails: ["email1@test.be", "email2@test.be"],
81
+ unverifiedPhones: ["04863545", "04863546"],
82
+ unverifiedAddresses: [
83
+ structures_1.Address.create({
84
+ city: "Amsterdam",
85
+ street: "Mozartstraat",
86
+ number: "2",
87
+ postalCode: "1011AB",
88
+ country: structures_1.Country.Netherlands,
89
+ }),
90
+ ],
91
+ notes: "note1",
92
+ });
93
+ m1.details = d1Old.clone();
94
+ m2.details = d2Old.clone();
95
+ //#endregion
96
+ // act
97
+ let d1;
98
+ beforeAll(() => {
99
+ (0, MemberMerger_1.mergeMemberDetails)(m1, m2);
100
+ d1 = m1.details;
101
+ });
102
+ // assert
103
+ test("firstName", () => {
104
+ expect(d1.firstName).toBe(d2Old.firstName);
105
+ });
106
+ test("lastName", () => {
107
+ expect(d1.lastName).toBe(d2Old.lastName);
108
+ });
109
+ test("memberNumber", () => {
110
+ expect(d1.memberNumber).toBe(d2Old.memberNumber);
111
+ });
112
+ test("uitpasNumber", () => {
113
+ expect(d1.uitpasNumber).toBe(d2Old.uitpasNumber);
114
+ });
115
+ test("email", () => {
116
+ expect(d1.email).toBe(d2Old.email);
117
+ expect(d1.unverifiedEmails).not.toContain(d2Old.email);
118
+ });
119
+ test("phone", () => {
120
+ expect(d1.phone).toBe(d2Old.phone);
121
+ expect(d1.unverifiedPhones).not.toContain(d2Old.phone);
122
+ });
123
+ test("gender", () => {
124
+ expect(d1.gender).toBe(d2Old.gender);
125
+ });
126
+ test("birthDay", () => {
127
+ var _a, _b, _c, _d;
128
+ expect((_b = (_a = d1.birthDay) === null || _a === void 0 ? void 0 : _a.getTime()) !== null && _b !== void 0 ? _b : -1).toBe((_d = (_c = d2Old.birthDay) === null || _c === void 0 ? void 0 : _c.getTime()) !== null && _d !== void 0 ? _d : -1);
129
+ });
130
+ test("requires financial support", () => {
131
+ var _a, _b, _c, _d;
132
+ expect((_b = (_a = d1.requiresFinancialSupport) === null || _a === void 0 ? void 0 : _a.date.getTime()) !== null && _b !== void 0 ? _b : -1).toBe((_d = (_c = d2Old.requiresFinancialSupport) === null || _c === void 0 ? void 0 : _c.date.getTime()) !== null && _d !== void 0 ? _d : -1);
133
+ });
134
+ test("data permissions", () => {
135
+ var _a, _b, _c, _d;
136
+ expect((_b = (_a = d1.dataPermissions) === null || _a === void 0 ? void 0 : _a.date.getTime()) !== null && _b !== void 0 ? _b : -1).toBe((_d = (_c = d2Old.dataPermissions) === null || _c === void 0 ? void 0 : _c.date.getTime()) !== null && _d !== void 0 ? _d : -1);
137
+ });
138
+ test("address", () => {
139
+ var _a, _b;
140
+ expect((_a = d1.address) === null || _a === void 0 ? void 0 : _a.id).toBe((_b = d2Old.address) === null || _b === void 0 ? void 0 : _b.id);
141
+ });
142
+ test("parents", () => {
143
+ expect(d1.parents.length).toBe(d2Old.parents.length);
144
+ });
145
+ test("emergency contacts", () => {
146
+ expect(d1.emergencyContacts.length).toBe(d2Old.emergencyContacts.length);
147
+ });
148
+ test("review times", () => {
149
+ expect(d1.reviewTimes.times.length).toBe(d2Old.reviewTimes.times.length);
150
+ });
151
+ test("answers", () => {
152
+ expect(d1.recordAnswers.size).toBe(d2Old.recordAnswers.size);
153
+ });
154
+ test("unverifiedEmails", () => {
155
+ expect(d1.unverifiedEmails.length).toBe(d2Old.unverifiedEmails.length);
156
+ });
157
+ test("unverifiedPhones", () => {
158
+ expect(d1.unverifiedPhones.length).toBe(d2Old.unverifiedPhones.length);
159
+ });
160
+ test("unverifiedAddresses", () => {
161
+ expect(d1.unverifiedAddresses.length).toBe(d2Old.unverifiedAddresses.length);
162
+ });
163
+ test("notes", () => {
164
+ expect(d1.notes).toEqual("note1");
165
+ });
166
+ });
167
+ describe("empty other details", () => {
168
+ //#region arrange
169
+ const m1 = new models_1.Member();
170
+ const m2 = new models_1.Member();
171
+ const recordAnswer = structures_1.RecordAnswer.create({
172
+ settings: structures_1.RecordSettings.create({
173
+ name: "answer1",
174
+ required: true,
175
+ choices: [],
176
+ }),
177
+ });
178
+ const d1Old = structures_1.MemberDetails.create({
179
+ firstName: "John",
180
+ lastName: "Doe",
181
+ birthDay: new Date(1990, 1, 1),
182
+ memberNumber: "123",
183
+ uitpasNumber: "56",
184
+ email: "b7v2X@example.com",
185
+ phone: "04863544",
186
+ gender: structures_1.Gender.Male,
187
+ requiresFinancialSupport: structures_1.BooleanStatus.create({ value: true }),
188
+ dataPermissions: structures_1.BooleanStatus.create({ value: true }),
189
+ address: structures_1.Address.create({
190
+ city: "Amsterdam",
191
+ street: "Mozartstraat",
192
+ number: "1",
193
+ postalCode: "1011AB",
194
+ country: structures_1.Country.Netherlands,
195
+ }),
196
+ parents: [structures_1.Parent.create({ firstName: "John", lastName: "Doe" })],
197
+ emergencyContacts: [
198
+ structures_1.EmergencyContact.create({
199
+ name: "blabla",
200
+ title: "title",
201
+ phone: "04863544654",
202
+ }),
203
+ ],
204
+ reviewTimes: structures_1.ReviewTimes.create({
205
+ times: [
206
+ structures_1.ReviewTime.create({
207
+ name: "parents",
208
+ reviewedAt: new Date(2020, 1, 1),
209
+ }),
210
+ structures_1.ReviewTime.create({
211
+ name: "details",
212
+ reviewedAt: new Date(2021, 1, 1),
213
+ }),
214
+ ],
215
+ }),
216
+ recordAnswers: new Map([[recordAnswer.id, recordAnswer]]),
217
+ unverifiedEmails: ["email1@test.be", "email2@test.be"],
218
+ unverifiedPhones: ["04863545", "04863546"],
219
+ unverifiedAddresses: [
220
+ structures_1.Address.create({
221
+ city: "Amsterdam",
222
+ street: "Mozartstraat",
223
+ number: "2",
224
+ postalCode: "1011AB",
225
+ country: structures_1.Country.Netherlands,
226
+ }),
227
+ ],
228
+ notes: "note1",
229
+ });
230
+ const d2Old = structures_1.MemberDetails.create({
231
+ firstName: " ",
232
+ lastName: "",
233
+ birthDay: undefined,
234
+ memberNumber: undefined,
235
+ uitpasNumber: undefined,
236
+ email: " ",
237
+ phone: undefined,
238
+ gender: structures_1.Gender.Other,
239
+ requiresFinancialSupport: undefined,
240
+ dataPermissions: undefined,
241
+ address: undefined,
242
+ parents: [],
243
+ emergencyContacts: [],
244
+ reviewTimes: undefined,
245
+ recordAnswers: undefined,
246
+ unverifiedEmails: [],
247
+ unverifiedPhones: [],
248
+ unverifiedAddresses: [],
249
+ notes: undefined,
250
+ });
251
+ m1.details = d1Old.clone();
252
+ m2.details = d2Old.clone();
253
+ //#endregion
254
+ // act
255
+ let d1;
256
+ beforeAll(() => {
257
+ (0, MemberMerger_1.mergeMemberDetails)(m1, m2);
258
+ d1 = m1.details;
259
+ });
260
+ // assert
261
+ test("firstName", () => {
262
+ expect(d1.firstName).toBe(d1Old.firstName);
263
+ });
264
+ test("lastName", () => {
265
+ expect(d1.lastName).toBe(d1Old.lastName);
266
+ });
267
+ test("memberNumber", () => {
268
+ expect(d1.memberNumber).toBe(d1Old.memberNumber);
269
+ });
270
+ test("uitpasNumber", () => {
271
+ expect(d1.uitpasNumber).toBe(d1Old.uitpasNumber);
272
+ });
273
+ test("email", () => {
274
+ expect(d1.email).toBe(d1Old.email);
275
+ expect(d1.unverifiedEmails).not.toContain(d2Old.email);
276
+ });
277
+ test("phone", () => {
278
+ expect(d1.phone).toBe(d1Old.phone);
279
+ expect(d1.unverifiedPhones).not.toContain(d2Old.phone);
280
+ });
281
+ test("gender", () => {
282
+ expect(d1.gender).toBe(d1Old.gender);
283
+ });
284
+ test("birthDay", () => {
285
+ var _a, _b, _c, _d;
286
+ expect((_b = (_a = d1.birthDay) === null || _a === void 0 ? void 0 : _a.getTime()) !== null && _b !== void 0 ? _b : -1).toBe((_d = (_c = d1Old.birthDay) === null || _c === void 0 ? void 0 : _c.getTime()) !== null && _d !== void 0 ? _d : -1);
287
+ });
288
+ test("requires financial support", () => {
289
+ var _a, _b, _c, _d;
290
+ expect((_b = (_a = d1.requiresFinancialSupport) === null || _a === void 0 ? void 0 : _a.date.getTime()) !== null && _b !== void 0 ? _b : -1).toBe((_d = (_c = d1Old.requiresFinancialSupport) === null || _c === void 0 ? void 0 : _c.date.getTime()) !== null && _d !== void 0 ? _d : -1);
291
+ });
292
+ test("data permissions", () => {
293
+ var _a, _b, _c, _d;
294
+ expect((_b = (_a = d1.dataPermissions) === null || _a === void 0 ? void 0 : _a.date.getTime()) !== null && _b !== void 0 ? _b : -1).toBe((_d = (_c = d1Old.dataPermissions) === null || _c === void 0 ? void 0 : _c.date.getTime()) !== null && _d !== void 0 ? _d : -1);
295
+ });
296
+ test("address", () => {
297
+ var _a, _b;
298
+ expect((_a = d1.address) === null || _a === void 0 ? void 0 : _a.id).toBe((_b = d1Old.address) === null || _b === void 0 ? void 0 : _b.id);
299
+ });
300
+ test("parents", () => {
301
+ expect(d1.parents.length).toBe(d1Old.parents.length);
302
+ });
303
+ test("emergency contacts", () => {
304
+ expect(d1.emergencyContacts.length).toBe(d1Old.emergencyContacts.length);
305
+ });
306
+ test("review times", () => {
307
+ expect(d1.reviewTimes.times.length).toBe(d1Old.reviewTimes.times.length);
308
+ });
309
+ test("answers", () => {
310
+ expect(d1.recordAnswers.size).toBe(d1Old.recordAnswers.size);
311
+ });
312
+ test("unverifiedEmails", () => {
313
+ expect(d1.unverifiedEmails.length).toBe(d1Old.unverifiedEmails.length);
314
+ });
315
+ test("unverifiedPhones", () => {
316
+ expect(d1.unverifiedPhones.length).toBe(d1Old.unverifiedPhones.length);
317
+ });
318
+ test("unverifiedAddresses", () => {
319
+ expect(d1.unverifiedAddresses.length).toBe(d1Old.unverifiedAddresses.length);
320
+ });
321
+ test("notes", () => {
322
+ expect(d1.notes).toEqual("note1");
323
+ });
324
+ });
325
+ describe("complete base and other details", () => {
326
+ //#region arrange
327
+ const m1 = new models_1.Member();
328
+ const m2 = new models_1.Member();
329
+ const recordAnswer1 = structures_1.RecordAnswer.create({
330
+ settings: structures_1.RecordSettings.create({
331
+ name: "answer1",
332
+ required: true,
333
+ choices: [],
334
+ }),
335
+ });
336
+ const recordAnswer1b = recordAnswer1.clone();
337
+ recordAnswer1b.date = new Date(1990, 1, 1);
338
+ const recordAnswer2 = structures_1.RecordAnswer.create({
339
+ settings: structures_1.RecordSettings.create({
340
+ name: "answer2",
341
+ required: true,
342
+ choices: [],
343
+ }),
344
+ });
345
+ // will not changed because cloned
346
+ const oldParent1 = structures_1.Parent.create({
347
+ firstName: "John",
348
+ lastName: "Doe",
349
+ email: "john@test.be",
350
+ phone: "04111111",
351
+ });
352
+ const parent1Alt = structures_1.Parent.create({
353
+ firstName: "John",
354
+ lastName: "Doe",
355
+ email: "oldJohn@test.be",
356
+ phone: "0499999",
357
+ address: structures_1.Address.create({
358
+ street: "john street",
359
+ number: "5",
360
+ city: "Amsterdam",
361
+ postalCode: "1011AB",
362
+ country: structures_1.Country.Belgium,
363
+ }),
364
+ });
365
+ const d1Old = structures_1.MemberDetails.create({
366
+ firstName: "John",
367
+ lastName: "Doe",
368
+ birthDay: new Date(1990, 1, 1),
369
+ memberNumber: "123",
370
+ uitpasNumber: "56",
371
+ email: "b7v2X@example.com",
372
+ phone: "04863544",
373
+ gender: structures_1.Gender.Male,
374
+ requiresFinancialSupport: structures_1.BooleanStatus.create({
375
+ value: true,
376
+ date: new Date(2021, 1, 1),
377
+ }),
378
+ dataPermissions: structures_1.BooleanStatus.create({
379
+ value: true,
380
+ date: new Date(2020, 1, 1),
381
+ }),
382
+ address: structures_1.Address.create({
383
+ city: "Amsterdam",
384
+ street: "Mozartstraat",
385
+ number: "1",
386
+ postalCode: "1011AB",
387
+ country: structures_1.Country.Netherlands,
388
+ }),
389
+ parents: [oldParent1],
390
+ emergencyContacts: [
391
+ structures_1.EmergencyContact.create({
392
+ name: "blabla",
393
+ title: "title",
394
+ phone: "04863544654",
395
+ }),
396
+ structures_1.EmergencyContact.create({
397
+ name: "blabla2",
398
+ title: "title2",
399
+ phone: "04863544654",
400
+ }),
401
+ ],
402
+ reviewTimes: structures_1.ReviewTimes.create({
403
+ times: [
404
+ structures_1.ReviewTime.create({
405
+ name: "parents",
406
+ reviewedAt: new Date(2020, 1, 1),
407
+ }),
408
+ structures_1.ReviewTime.create({
409
+ name: "details",
410
+ reviewedAt: new Date(2021, 1, 1),
411
+ }),
412
+ ],
413
+ }),
414
+ recordAnswers: new Map([[recordAnswer1.id, recordAnswer1]]),
415
+ unverifiedEmails: ["email1@test.be", "email2@test.be"],
416
+ unverifiedPhones: ["04863545", "04863546"],
417
+ unverifiedAddresses: [
418
+ structures_1.Address.create({
419
+ city: "Amsterdam",
420
+ street: "Mozartstraat",
421
+ number: "2",
422
+ postalCode: "1011AB",
423
+ country: structures_1.Country.Netherlands,
424
+ }),
425
+ ],
426
+ notes: "note1",
427
+ });
428
+ const d2Old = structures_1.MemberDetails.create({
429
+ firstName: "John",
430
+ lastName: "Doe",
431
+ birthDay: new Date(2000, 1, 1),
432
+ memberNumber: "123456",
433
+ uitpasNumber: "567",
434
+ email: "other@example.com",
435
+ phone: "048635449",
436
+ gender: structures_1.Gender.Female,
437
+ // earlier date
438
+ requiresFinancialSupport: structures_1.BooleanStatus.create({
439
+ value: false,
440
+ date: new Date(2020, 1, 1),
441
+ }),
442
+ // older date
443
+ dataPermissions: structures_1.BooleanStatus.create({
444
+ value: false,
445
+ date: new Date(2021, 1, 1),
446
+ }),
447
+ address: structures_1.Address.create({
448
+ city: "Amsterdam",
449
+ street: "Mozartstraat",
450
+ number: "5",
451
+ postalCode: "1011AB",
452
+ country: structures_1.Country.Netherlands,
453
+ }),
454
+ parents: [
455
+ parent1Alt,
456
+ structures_1.Parent.create({ firstName: "John", lastName: "Other" }),
457
+ ],
458
+ emergencyContacts: [
459
+ structures_1.EmergencyContact.create({
460
+ name: "other emergency contact",
461
+ title: "title",
462
+ phone: "04863544654",
463
+ }),
464
+ structures_1.EmergencyContact.create({
465
+ name: "blabla",
466
+ title: "title",
467
+ phone: "04863544654",
468
+ }),
469
+ ],
470
+ reviewTimes: structures_1.ReviewTimes.create({
471
+ times: [
472
+ structures_1.ReviewTime.create({
473
+ name: "parents",
474
+ reviewedAt: new Date(2019, 1, 1),
475
+ }),
476
+ structures_1.ReviewTime.create({
477
+ name: "details",
478
+ reviewedAt: new Date(2023, 1, 1),
479
+ }),
480
+ ],
481
+ }),
482
+ recordAnswers: new Map([
483
+ [recordAnswer2.id, recordAnswer2],
484
+ [recordAnswer1.id, recordAnswer1],
485
+ [recordAnswer1b.id, recordAnswer1b],
486
+ ]),
487
+ unverifiedEmails: ["otherUnverivied@test.be"],
488
+ unverifiedPhones: ["0486354599", "0486354699"],
489
+ unverifiedAddresses: [
490
+ structures_1.Address.create({
491
+ city: "Amsterdam",
492
+ street: "AndereStraat",
493
+ number: "100",
494
+ postalCode: "1011AB",
495
+ country: structures_1.Country.Netherlands,
496
+ }),
497
+ ],
498
+ notes: "note2",
499
+ });
500
+ m1.details = d1Old.clone();
501
+ m2.details = d2Old.clone();
502
+ //#endregion
503
+ // act
504
+ let d1;
505
+ let parent1;
506
+ beforeAll(() => {
507
+ (0, MemberMerger_1.mergeMemberDetails)(m1, m2);
508
+ d1 = m1.details;
509
+ parent1 = d1.parents.find((p) => p.id === oldParent1.id);
510
+ });
511
+ // assert
512
+ test("firstName", () => {
513
+ expect(d1.firstName).toBe(d1Old.firstName);
514
+ });
515
+ test("lastName", () => {
516
+ expect(d1.lastName).toBe(d1Old.lastName);
517
+ });
518
+ test("memberNumber", () => {
519
+ expect(d1.memberNumber).toBe(d1Old.memberNumber);
520
+ });
521
+ test("uitpasNumber", () => {
522
+ expect(d1.uitpasNumber).toBe(d1Old.uitpasNumber);
523
+ });
524
+ test("email", () => {
525
+ expect(d1.email).toBe(d1Old.email);
526
+ expect(d1.unverifiedEmails).toContain(d2Old.email);
527
+ });
528
+ test("phone", () => {
529
+ expect(d1.phone).toBe(d1Old.phone);
530
+ expect(d1.unverifiedPhones).toContain(d2Old.phone);
531
+ });
532
+ test("gender", () => {
533
+ expect(d1.gender).toBe(d1Old.gender);
534
+ });
535
+ test("birthDay", () => {
536
+ var _a, _b, _c, _d;
537
+ expect((_b = (_a = d1.birthDay) === null || _a === void 0 ? void 0 : _a.getTime()) !== null && _b !== void 0 ? _b : -1).toBe((_d = (_c = d1Old.birthDay) === null || _c === void 0 ? void 0 : _c.getTime()) !== null && _d !== void 0 ? _d : -1);
538
+ });
539
+ test("requires financial support", () => {
540
+ var _a, _b, _c, _d;
541
+ expect((_b = (_a = d1.requiresFinancialSupport) === null || _a === void 0 ? void 0 : _a.date.getTime()) !== null && _b !== void 0 ? _b : -1).toBe((_d = (_c = d1Old.requiresFinancialSupport) === null || _c === void 0 ? void 0 : _c.date.getTime()) !== null && _d !== void 0 ? _d : -1);
542
+ });
543
+ test("data permissions", () => {
544
+ var _a, _b, _c, _d;
545
+ expect((_b = (_a = d1.dataPermissions) === null || _a === void 0 ? void 0 : _a.date.getTime()) !== null && _b !== void 0 ? _b : -1).toBe((_d = (_c = d2Old.dataPermissions) === null || _c === void 0 ? void 0 : _c.date.getTime()) !== null && _d !== void 0 ? _d : -1);
546
+ });
547
+ test("address", () => {
548
+ var _a, _b, _c;
549
+ expect((_a = d1.address) === null || _a === void 0 ? void 0 : _a.id).toBe((_b = d1Old.address) === null || _b === void 0 ? void 0 : _b.id);
550
+ expect(d1.unverifiedAddresses.map((a) => a.id)).toContain((_c = d2Old.address) === null || _c === void 0 ? void 0 : _c.id);
551
+ });
552
+ test("parents", () => {
553
+ var _a, _b;
554
+ expect(d1.parents.length).toBe(2);
555
+ expect(parent1.firstName).toBe(parent1Alt.firstName);
556
+ expect(parent1.lastName).toBe(parent1Alt.lastName);
557
+ expect(parent1.email).toBe(oldParent1.email);
558
+ expect(parent1.phone).toBe(oldParent1.phone);
559
+ expect((_a = parent1.address) === null || _a === void 0 ? void 0 : _a.id).toBe((_b = parent1Alt.address) === null || _b === void 0 ? void 0 : _b.id);
560
+ expect(d1.unverifiedPhones).toContain(parent1Alt.phone);
561
+ expect(parent1.alternativeEmails).toContain(parent1Alt.email);
562
+ });
563
+ test("emergency contacts", () => {
564
+ expect(d1.emergencyContacts.length).toBe(3);
565
+ });
566
+ test("review times", () => {
567
+ expect(d1.reviewTimes.times.length).toBe(2);
568
+ });
569
+ test("answers", () => {
570
+ expect(d1.recordAnswers.size).toBe(3);
571
+ });
572
+ test("unverifiedEmails", () => {
573
+ expect(d1.unverifiedEmails.length).toBe(4);
574
+ });
575
+ test("unverifiedPhones", () => {
576
+ expect(d1.unverifiedPhones.length).toBe(6);
577
+ });
578
+ test("unverifiedAddresses", () => {
579
+ expect(d1.unverifiedAddresses.length).toBe(3);
580
+ });
581
+ test("notes", () => {
582
+ expect(d1.notes).toEqual("note1\nnote2");
583
+ });
584
+ });
585
+ });
586
+ test("select base member should return last created member", () => {
587
+ const m1 = new models_1.Member();
588
+ m1.createdAt = new Date(2020, 0, 1);
589
+ m1.id = (0, uuid_1.v4)();
590
+ const m2 = new models_1.Member();
591
+ m2.createdAt = new Date(2021, 0, 1);
592
+ m2.id = (0, uuid_1.v4)();
593
+ const m3 = new models_1.Member();
594
+ m3.createdAt = new Date(2022, 0, 1);
595
+ m3.id = (0, uuid_1.v4)();
596
+ const members = [m1, m3, m2];
597
+ const { base, others } = (0, MemberMerger_1.selectBaseMember)(members);
598
+ expect(base.id).toBe(m3.id);
599
+ expect(others).toHaveLength(2);
600
+ const otherIds = others.map((m) => m.id);
601
+ expect(otherIds).toContain(m1.id);
602
+ expect(otherIds).toContain(m2.id);
603
+ });
604
+ });
605
+ //# sourceMappingURL=MemberMerger.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemberMerger.test.js","sourceRoot":"","sources":["../../../src/helpers/MemberMerger.test.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export * from "./helpers/EmailBuilder";
13
13
  export * from "./helpers/GroupBuilder";
14
14
  export * from "./helpers/RateLimiter";
15
15
  export * from "./helpers/WebshopCounter";
16
+ export * from "./helpers/MemberMerger";
16
17
  export * from "./models";
17
18
  export * from "./structures/OrganizationServerMetaData";
18
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,cAAc,qCAAqC,CAAA;AACnD,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA;AACzC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,2BAA2B,CAAA;AACzC,cAAc,2BAA2B,CAAA;AACzC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,yBAAyB,CAAA;AACvC,cAAc,4BAA4B,CAAA;AAG1C,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AAGxC,cAAc,UAAU,CAAA;AACxB,cAAc,yCAAyC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,cAAc,qCAAqC,CAAA;AACnD,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA;AACzC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,2BAA2B,CAAA;AACzC,cAAc,2BAA2B,CAAA;AACzC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,yBAAyB,CAAA;AACvC,cAAc,4BAA4B,CAAA;AAG1C,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AAGtC,cAAc,UAAU,CAAA;AACxB,cAAc,yCAAyC,CAAA"}