@stamhoofd/backend 2.143.1 → 2.145.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.
- package/package.json +19 -19
- package/src/crons/fake-settlements.test.ts +13 -11
- package/src/crons/fake-settlements.ts +22 -38
- package/src/crons/mollie-chargebacks.ts +31 -29
- package/src/crons/mollie-refunds.ts +61 -59
- package/src/endpoints/admin/organizations/PatchOrganizationsEndpoint.ts +16 -5
- package/src/endpoints/auth/CreateTokenEndpoint.test.ts +210 -4
- package/src/endpoints/auth/CreateTokenEndpoint.ts +9 -20
- package/src/endpoints/auth/DeleteTokenEndpoint.test.ts +29 -0
- package/src/endpoints/auth/DeleteTokenEndpoint.ts +2 -1
- package/src/endpoints/auth/GetUserEndpoint.test.ts +32 -11
- package/src/endpoints/auth/MFA.security.test.ts +9 -7
- package/src/endpoints/auth/MFA.test.ts +42 -15
- package/src/endpoints/auth/PatchUserEndpoint.ts +3 -2
- package/src/endpoints/auth/VerifyEmailEndpoint.ts +5 -4
- package/src/endpoints/global/email/GetAdminEmailsEndpoint.test.ts +4 -3
- package/src/endpoints/global/email/GetUserEmailsEndpoint.test.ts +6 -5
- package/src/endpoints/global/email/PatchEmailEndpoint.test.ts +5 -4
- package/src/endpoints/global/email-recipients/GetEmailRecipientsEndpoint.test.ts +5 -4
- package/src/endpoints/global/events/PatchEventNotificationsEndpoint.test.ts +2 -1
- package/src/endpoints/global/events/PatchEventsEndpoint.test.ts +2 -1
- package/src/endpoints/global/files/UploadFile.test.ts +2 -1
- package/src/endpoints/global/files/UploadFile.ts +53 -25
- package/src/endpoints/global/files/UploadImage.test.ts +2 -1
- package/src/endpoints/global/files/UploadImage.ts +32 -6
- package/src/endpoints/global/files/upload-security.test.ts +3 -2
- package/src/endpoints/global/groups/GetGroupsEndpoint.test.ts +4 -3
- package/src/endpoints/global/members/GetMembersEndpoint.test.ts +26 -25
- package/src/endpoints/global/members/PatchOrganizationMembersEndpoint.test.ts +57 -56
- package/src/endpoints/global/members/SendMemberSecurityCodeEndpoint.test.ts +4 -3
- package/src/endpoints/global/platform/GetPlatformEndpoint.test.ts +6 -4
- package/src/endpoints/global/platform/PatchPlatformEnpoint.test.ts +6 -6
- package/src/endpoints/global/platform/SignOutPlatformAdminsEndpoint.test.ts +9 -8
- package/src/endpoints/global/registration/GetRegistrationsEndpoint.test.ts +14 -13
- package/src/endpoints/global/registration/PatchUserMembersEndpoint.test.ts +24 -23
- package/src/endpoints/global/registration/RegisterMembersEndpoint.test.ts +4 -3
- package/src/endpoints/global/registration-invitations/GetRegistrationInvitationsEndpoint.test.ts +2 -1
- package/src/endpoints/global/registration-invitations/PatchRegistrationInvitationsEndpoint.test.ts +2 -1
- package/src/endpoints/global/webshops/GetWebshopsEndpoint.test.ts +20 -19
- package/src/endpoints/organization/dashboard/balance-items/GetBalanceItemBreakdownEndpoint.test.ts +2 -1
- package/src/endpoints/organization/dashboard/balance-items/GetBalanceItemsEndpoint.test.ts +2 -1
- package/src/endpoints/organization/dashboard/billing/ApplyRegisterCodeEndpoint.test.ts +3 -2
- package/src/endpoints/organization/dashboard/documents/PatchDocumentTemplatesEndpoint.test.ts +4 -3
- package/src/endpoints/organization/dashboard/email-templates/GetEmailTemplatesEndpoint.test.ts +5 -4
- package/src/endpoints/organization/dashboard/email-templates/PatchEmailTemplatesEndpoint.test.ts +5 -4
- package/src/endpoints/organization/dashboard/invoices/GetInvoicesEndpoint.test.ts +2 -1
- package/src/endpoints/organization/dashboard/invoices/PatchInvoicesEndpoint.test.ts +2 -1
- package/src/endpoints/organization/dashboard/invoices/PatchInvoicesEndpoint.ts +0 -1
- package/src/endpoints/organization/dashboard/organization/PatchOrganizationEndpoint.test.ts +23 -22
- package/src/endpoints/organization/dashboard/organization/PatchOrganizationEndpoint.ts +4 -4
- package/src/endpoints/organization/dashboard/payments/GetPaymentBreakdownEndpoint.test.ts +2 -1
- package/src/endpoints/organization/dashboard/payments/GetPaymentsEndpoint.test.ts +4 -3
- package/src/endpoints/organization/dashboard/payments/PatchPaymentsEndpoint.ts +2 -2
- package/src/endpoints/organization/dashboard/receivable-balances/GetReceivableBalanceEndpoint.test.ts +2 -1
- package/src/endpoints/organization/dashboard/registration-periods/GetOrganizationRegistrationPeriodsEndpoint.test.ts +5 -4
- package/src/endpoints/organization/dashboard/registration-periods/MoveRegistrationPeriods.test.ts +7 -6
- package/src/endpoints/organization/dashboard/registration-periods/PatchOrganizationRegistrationPeriodsEndpoint.test.ts +9 -8
- package/src/endpoints/organization/dashboard/settlements/SettlementsExportEndpoint.test.ts +3 -2
- package/src/endpoints/organization/dashboard/settlements/SettlementsSyncEndpoint.test.ts +2 -1
- package/src/endpoints/organization/dashboard/users/CreateApiUserEndpoint.test.ts +5 -4
- package/src/endpoints/organization/dashboard/users/CreateApiUserEndpoint.ts +2 -1
- package/src/endpoints/organization/dashboard/users/GetOrganizationAdminsEndpoint.test.ts +3 -2
- package/src/endpoints/organization/dashboard/users/PatchApiUserEndpoint.test.ts +6 -5
- package/src/endpoints/organization/dashboard/users/SignOutOrganizationAdminsEndpoint.test.ts +16 -15
- package/src/endpoints/organization/dashboard/webshops/GetWebshopOrdersEndpoint.test.ts +2 -1
- package/src/endpoints/organization/dashboard/webshops/PatchWebshopEndpoint.test.ts +2 -1
- package/src/endpoints/organization/dashboard/webshops/PatchWebshopOrdersEndpoint.test.ts +2 -1
- package/src/endpoints/organization/dashboard/webshops/WebshopReservedPathSegments.test.ts +2 -1
- package/src/endpoints/organization/shared/auth/GetOrganizationEndpoint.test.ts +4 -3
- package/src/endpoints/organization/webshops/GetWebshopEndpoint.test.ts +6 -5
- package/src/endpoints/organization/webshops/PlaceOrderEndpoint.test.ts +94 -8
- package/src/endpoints/organization/webshops/PlaceOrderEndpoint.ts +18 -18
- package/src/helpers/ApplicationFeeInvoicer.ts +1 -1
- package/src/helpers/Context.ts +14 -21
- package/src/helpers/ContextStorage.ts +5 -0
- package/src/helpers/MollieSettlementSync.test.ts +94 -41
- package/src/helpers/MollieSettlementSync.ts +174 -78
- package/src/helpers/StripeSettlementSync.test.ts +0 -85
- package/src/helpers/StripeSettlementSync.ts +47 -70
- package/src/helpers/TwoFactorHelper.ts +21 -22
- package/src/helpers/streamForBreakdown.ts +1 -1
- package/src/services/AdminSessionService.ts +5 -3
- package/src/services/InvoiceService.ts +2 -2
- package/src/services/MollieService.ts +168 -126
- package/src/services/PaymentService.ts +2 -2
- package/src/services/SSOService.test.ts +25 -1
- package/src/services/SSOService.ts +17 -6
- package/src/services/SessionService.test.ts +319 -0
- package/src/services/SessionService.ts +357 -0
- package/src/services/SettlementService.test.ts +13 -85
- package/src/services/SettlementService.ts +5 -113
- package/src/services/WebshopCrowdfundingService.test.ts +4 -3
- package/src/sql-filters/balance-items.ts +10 -0
- package/src/sql-filters/registrations.ts +59 -1
- package/tests/actions/patchUserMember.ts +2 -1
- package/tests/e2e/api-rate-limits.test.ts +2 -1
- package/tests/e2e/bundle-discounts.test.ts +4 -3
- package/tests/e2e/charge-members.test.ts +6 -5
- package/tests/e2e/documents.test.ts +4 -3
- package/tests/e2e/private-files.test.ts +9 -8
- package/tests/e2e/register.test.ts +4 -3
- package/tests/e2e/stock.test.ts +4 -3
- package/tests/e2e/tickets.test.ts +4 -3
- package/tests/helpers/ExportSlice.ts +2 -1
- package/tests/helpers/MollieMocker.ts +173 -38
- package/tests/init/initAdmin.ts +2 -1
- package/tests/init/initPlatformAdmin.ts +2 -1
- package/src/helpers/ViesHelper.test.ts +0 -401
- package/src/helpers/ViesHelper.ts +0 -215
- package/src/services/PeppolDirectoryService.test.ts +0 -139
- package/src/services/PeppolDirectoryService.ts +0 -111
|
@@ -13,6 +13,7 @@ import { testServer } from '../../../../tests/helpers/TestServer.js';
|
|
|
13
13
|
import { initUitpasApi } from '../../../../tests/init/index.js';
|
|
14
14
|
import { UniqueMemberNumberService } from '../../../services/UniqueMemberNumberService.js';
|
|
15
15
|
import { PatchOrganizationMembersEndpoint } from './PatchOrganizationMembersEndpoint.js';
|
|
16
|
+
import { SessionService } from '../../../services/SessionService.js';
|
|
16
17
|
|
|
17
18
|
const baseUrl = `/organization/members`;
|
|
18
19
|
const endpoint = new PatchOrganizationMembersEndpoint();
|
|
@@ -50,7 +51,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
50
51
|
generateSensitiveData: true,
|
|
51
52
|
}).create();
|
|
52
53
|
|
|
53
|
-
const token = await
|
|
54
|
+
const token = await SessionService.createSession(user);
|
|
54
55
|
|
|
55
56
|
const arr: Body = new PatchableArray();
|
|
56
57
|
const put = MemberWithRegistrationsBlob.create({
|
|
@@ -100,7 +101,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
100
101
|
organization,
|
|
101
102
|
}).create();
|
|
102
103
|
|
|
103
|
-
const token = await
|
|
104
|
+
const token = await SessionService.createSession(user);
|
|
104
105
|
|
|
105
106
|
const arr: Body = new PatchableArray();
|
|
106
107
|
const put = MemberWithRegistrationsBlob.create({
|
|
@@ -173,7 +174,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
173
174
|
group,
|
|
174
175
|
}).create();
|
|
175
176
|
|
|
176
|
-
const token = await
|
|
177
|
+
const token = await SessionService.createSession(user);
|
|
177
178
|
|
|
178
179
|
const arr: Body = new PatchableArray();
|
|
179
180
|
|
|
@@ -229,7 +230,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
229
230
|
}),
|
|
230
231
|
}).create();
|
|
231
232
|
|
|
232
|
-
const token = await
|
|
233
|
+
const token = await SessionService.createSession(user);
|
|
233
234
|
|
|
234
235
|
const arr: Body = new PatchableArray();
|
|
235
236
|
const newBirthDay = new Date(existingMember.details.birthDay!.getTime() + 1);
|
|
@@ -275,7 +276,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
275
276
|
generateData: false,
|
|
276
277
|
}).create();
|
|
277
278
|
|
|
278
|
-
const token = await
|
|
279
|
+
const token = await SessionService.createSession(user);
|
|
279
280
|
|
|
280
281
|
const arr: Body = new PatchableArray();
|
|
281
282
|
const newBirthDay = new Date(existingMember.details.birthDay!.getTime() + 1);
|
|
@@ -361,7 +362,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
361
362
|
group,
|
|
362
363
|
}).create();
|
|
363
364
|
|
|
364
|
-
const token = await
|
|
365
|
+
const token = await SessionService.createSession(user);
|
|
365
366
|
|
|
366
367
|
const arr: Body = new PatchableArray();
|
|
367
368
|
const newBirthDay = new Date(existingMember.details.birthDay!.getTime() + 1);
|
|
@@ -423,7 +424,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
423
424
|
existingMember.organizationId = organization.id;
|
|
424
425
|
await existingMember.save();
|
|
425
426
|
|
|
426
|
-
const token = await
|
|
427
|
+
const token = await SessionService.createSession(user);
|
|
427
428
|
|
|
428
429
|
const arr: Body = new PatchableArray();
|
|
429
430
|
const put = MemberWithRegistrationsBlob.create({
|
|
@@ -465,7 +466,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
465
466
|
existingMember.organizationId = organization.id;
|
|
466
467
|
await existingMember.save();
|
|
467
468
|
|
|
468
|
-
const token = await
|
|
469
|
+
const token = await SessionService.createSession(user);
|
|
469
470
|
|
|
470
471
|
const arr: Body = new PatchableArray();
|
|
471
472
|
const put = MemberWithRegistrationsBlob.create({
|
|
@@ -511,7 +512,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
511
512
|
organization: otherOrganization,
|
|
512
513
|
}).create();
|
|
513
514
|
|
|
514
|
-
const token = await
|
|
515
|
+
const token = await SessionService.createSession(user);
|
|
515
516
|
|
|
516
517
|
const arr: Body = new PatchableArray();
|
|
517
518
|
const patch = MemberWithRegistrationsBlob.patch({
|
|
@@ -550,7 +551,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
550
551
|
organization,
|
|
551
552
|
}).create();
|
|
552
553
|
|
|
553
|
-
const token = await
|
|
554
|
+
const token = await SessionService.createSession(user);
|
|
554
555
|
|
|
555
556
|
const arr: Body = new PatchableArray();
|
|
556
557
|
const patch = MemberWithRegistrationsBlob.patch({
|
|
@@ -614,7 +615,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
614
615
|
group,
|
|
615
616
|
}).create();
|
|
616
617
|
|
|
617
|
-
const token = await
|
|
618
|
+
const token = await SessionService.createSession(user);
|
|
618
619
|
|
|
619
620
|
const arr: Body = new PatchableArray();
|
|
620
621
|
const patch = MemberWithRegistrationsBlob.patch({
|
|
@@ -687,7 +688,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
687
688
|
deactivatedAt: new Date(),
|
|
688
689
|
}).create();
|
|
689
690
|
|
|
690
|
-
const token = await
|
|
691
|
+
const token = await SessionService.createSession(user);
|
|
691
692
|
|
|
692
693
|
const arr: Body = new PatchableArray();
|
|
693
694
|
const patch = MemberWithRegistrationsBlob.patch({
|
|
@@ -733,7 +734,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
733
734
|
generateData: false,
|
|
734
735
|
}).create();
|
|
735
736
|
|
|
736
|
-
const token = await
|
|
737
|
+
const token = await SessionService.createSession(user);
|
|
737
738
|
|
|
738
739
|
const arr: Body = new PatchableArray();
|
|
739
740
|
const patch = MemberWithRegistrationsBlob.patch({
|
|
@@ -779,7 +780,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
779
780
|
generateData: false,
|
|
780
781
|
}).create();
|
|
781
782
|
|
|
782
|
-
const token = await
|
|
783
|
+
const token = await SessionService.createSession(user);
|
|
783
784
|
|
|
784
785
|
const arr: Body = new PatchableArray();
|
|
785
786
|
const patch = MemberWithRegistrationsBlob.patch({
|
|
@@ -825,7 +826,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
825
826
|
const member = await new MemberFactory({ firstName, lastName, birthDay, generateData: false }).create();
|
|
826
827
|
await new RegistrationFactory({ member, group }).create();
|
|
827
828
|
|
|
828
|
-
const token = await
|
|
829
|
+
const token = await SessionService.createSession(user);
|
|
829
830
|
|
|
830
831
|
const arr: Body = new PatchableArray();
|
|
831
832
|
arr.addPatch(MemberWithRegistrationsBlob.patch({
|
|
@@ -851,7 +852,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
851
852
|
const member = await new MemberFactory({ firstName, lastName, birthDay, generateData: false }).create();
|
|
852
853
|
await new RegistrationFactory({ member, organization }).create();
|
|
853
854
|
|
|
854
|
-
const token = await
|
|
855
|
+
const token = await SessionService.createSession(user);
|
|
855
856
|
|
|
856
857
|
const base = member.details.birthDay!;
|
|
857
858
|
const newBirthDay = new Date(base.getFullYear() + 5, base.getMonth() + 4, base.getDate() + 6);
|
|
@@ -911,7 +912,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
911
912
|
organization,
|
|
912
913
|
}).create();
|
|
913
914
|
|
|
914
|
-
const token = await
|
|
915
|
+
const token = await SessionService.createSession(user);
|
|
915
916
|
|
|
916
917
|
const recordAnswers = new PatchMap() as PatchAnswers;
|
|
917
918
|
|
|
@@ -980,7 +981,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
980
981
|
organization,
|
|
981
982
|
}).create();
|
|
982
983
|
|
|
983
|
-
const token = await
|
|
984
|
+
const token = await SessionService.createSession(user);
|
|
984
985
|
|
|
985
986
|
const recordAnswers = new PatchMap() as PatchAnswers;
|
|
986
987
|
|
|
@@ -1052,7 +1053,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
1052
1053
|
organization,
|
|
1053
1054
|
}).create();
|
|
1054
1055
|
|
|
1055
|
-
const token = await
|
|
1056
|
+
const token = await SessionService.createSession(user);
|
|
1056
1057
|
|
|
1057
1058
|
const recordAnswers = new PatchMap() as PatchAnswers;
|
|
1058
1059
|
|
|
@@ -1128,7 +1129,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
1128
1129
|
group,
|
|
1129
1130
|
}).create();
|
|
1130
1131
|
|
|
1131
|
-
const token = await
|
|
1132
|
+
const token = await SessionService.createSession(user);
|
|
1132
1133
|
|
|
1133
1134
|
const recordAnswers = new PatchMap() as PatchAnswers;
|
|
1134
1135
|
|
|
@@ -1197,7 +1198,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
1197
1198
|
group,
|
|
1198
1199
|
}).create();
|
|
1199
1200
|
|
|
1200
|
-
const token = await
|
|
1201
|
+
const token = await SessionService.createSession(user);
|
|
1201
1202
|
|
|
1202
1203
|
const recordAnswers = new PatchMap() as PatchAnswers;
|
|
1203
1204
|
|
|
@@ -1267,7 +1268,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
1267
1268
|
group,
|
|
1268
1269
|
}).create();
|
|
1269
1270
|
|
|
1270
|
-
const token = await
|
|
1271
|
+
const token = await SessionService.createSession(user);
|
|
1271
1272
|
|
|
1272
1273
|
const recordAnswers = new PatchMap() as PatchAnswers;
|
|
1273
1274
|
|
|
@@ -1345,7 +1346,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
1345
1346
|
group,
|
|
1346
1347
|
}).create();
|
|
1347
1348
|
|
|
1348
|
-
const token = await
|
|
1349
|
+
const token = await SessionService.createSession(user);
|
|
1349
1350
|
|
|
1350
1351
|
const recordAnswers = new PatchMap() as PatchAnswers;
|
|
1351
1352
|
|
|
@@ -1429,7 +1430,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
1429
1430
|
const admin = await new UserFactory({
|
|
1430
1431
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
1431
1432
|
}).create();
|
|
1432
|
-
const token = await
|
|
1433
|
+
const token = await SessionService.createSession(admin);
|
|
1433
1434
|
|
|
1434
1435
|
const arr: Body = new PatchableArray();
|
|
1435
1436
|
const d = new Date();
|
|
@@ -1543,7 +1544,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
1543
1544
|
const admin = await new UserFactory({
|
|
1544
1545
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
1545
1546
|
}).create();
|
|
1546
|
-
const token = await
|
|
1547
|
+
const token = await SessionService.createSession(admin);
|
|
1547
1548
|
|
|
1548
1549
|
const arr: Body = new PatchableArray();
|
|
1549
1550
|
const parentsPatch = new PatchableArray() as PatchableArrayAutoEncoder<Parent>;
|
|
@@ -1670,7 +1671,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
1670
1671
|
const admin = await new UserFactory({
|
|
1671
1672
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
1672
1673
|
}).create();
|
|
1673
|
-
const token = await
|
|
1674
|
+
const token = await SessionService.createSession(admin);
|
|
1674
1675
|
|
|
1675
1676
|
const arr: Body = new PatchableArray();
|
|
1676
1677
|
const parentsPatch = new PatchableArray() as PatchableArrayAutoEncoder<Parent>;
|
|
@@ -1787,7 +1788,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
1787
1788
|
const admin = await new UserFactory({
|
|
1788
1789
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
1789
1790
|
}).create();
|
|
1790
|
-
const token = await
|
|
1791
|
+
const token = await SessionService.createSession(admin);
|
|
1791
1792
|
|
|
1792
1793
|
const arr: Body = new PatchableArray();
|
|
1793
1794
|
const parentsPatch = new PatchableArray() as PatchableArrayAutoEncoder<Parent>;
|
|
@@ -1939,7 +1940,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
1939
1940
|
const admin = await new UserFactory({
|
|
1940
1941
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
1941
1942
|
}).create();
|
|
1942
|
-
const token = await
|
|
1943
|
+
const token = await SessionService.createSession(admin);
|
|
1943
1944
|
|
|
1944
1945
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<Parent>;
|
|
1945
1946
|
nonEmtpyArray.addPatch(Parent.patch({
|
|
@@ -2082,7 +2083,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
2082
2083
|
const admin = await new UserFactory({
|
|
2083
2084
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
2084
2085
|
}).create();
|
|
2085
|
-
const token = await
|
|
2086
|
+
const token = await SessionService.createSession(admin);
|
|
2086
2087
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<Parent>;
|
|
2087
2088
|
nonEmtpyArray.addPatch(Parent.patch({
|
|
2088
2089
|
id: parent1.id,
|
|
@@ -2220,7 +2221,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
2220
2221
|
const admin = await new UserFactory({
|
|
2221
2222
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
2222
2223
|
}).create();
|
|
2223
|
-
const token = await
|
|
2224
|
+
const token = await SessionService.createSession(admin);
|
|
2224
2225
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<Parent>;
|
|
2225
2226
|
nonEmtpyArray.addPatch(Parent.patch({
|
|
2226
2227
|
id: parent1.id,
|
|
@@ -2322,7 +2323,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
2322
2323
|
const admin = await new UserFactory({
|
|
2323
2324
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
2324
2325
|
}).create();
|
|
2325
|
-
const token = await
|
|
2326
|
+
const token = await SessionService.createSession(admin);
|
|
2326
2327
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<Parent>;
|
|
2327
2328
|
nonEmtpyArray.addPut(oldestParent);
|
|
2328
2329
|
|
|
@@ -2410,7 +2411,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
2410
2411
|
const admin = await new UserFactory({
|
|
2411
2412
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
2412
2413
|
}).create();
|
|
2413
|
-
const token = await
|
|
2414
|
+
const token = await SessionService.createSession(admin);
|
|
2414
2415
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<Parent>;
|
|
2415
2416
|
nonEmtpyArray.addPatch(Parent.patch({
|
|
2416
2417
|
id: latestParent.id,
|
|
@@ -2532,7 +2533,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
2532
2533
|
const admin = await new UserFactory({
|
|
2533
2534
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
2534
2535
|
}).create();
|
|
2535
|
-
const token = await
|
|
2536
|
+
const token = await SessionService.createSession(admin);
|
|
2536
2537
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
2537
2538
|
nonEmtpyArray.addPatch(EmergencyContact.patch({
|
|
2538
2539
|
id: contact1.id,
|
|
@@ -2650,7 +2651,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
2650
2651
|
const admin = await new UserFactory({
|
|
2651
2652
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
2652
2653
|
}).create();
|
|
2653
|
-
const token = await
|
|
2654
|
+
const token = await SessionService.createSession(admin);
|
|
2654
2655
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
2655
2656
|
nonEmtpyArray.addPatch(EmergencyContact.patch({
|
|
2656
2657
|
id: contact1.id,
|
|
@@ -2727,7 +2728,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
2727
2728
|
const admin = await new UserFactory({
|
|
2728
2729
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
2729
2730
|
}).create();
|
|
2730
|
-
const token = await
|
|
2731
|
+
const token = await SessionService.createSession(admin);
|
|
2731
2732
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
2732
2733
|
nonEmtpyArray.addPut(EmergencyContact.create({
|
|
2733
2734
|
name: 'Linda Doe',
|
|
@@ -2811,7 +2812,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
2811
2812
|
const admin = await new UserFactory({
|
|
2812
2813
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
2813
2814
|
}).create();
|
|
2814
|
-
const token = await
|
|
2815
|
+
const token = await SessionService.createSession(admin);
|
|
2815
2816
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
2816
2817
|
nonEmtpyArray.addPut(oldVersionContact);
|
|
2817
2818
|
|
|
@@ -2881,7 +2882,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
2881
2882
|
const admin = await new UserFactory({
|
|
2882
2883
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
2883
2884
|
}).create();
|
|
2884
|
-
const token = await
|
|
2885
|
+
const token = await SessionService.createSession(admin);
|
|
2885
2886
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
2886
2887
|
nonEmtpyArray.addPatch(EmergencyContact.patch({
|
|
2887
2888
|
id: contact1.id,
|
|
@@ -2956,7 +2957,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
2956
2957
|
const admin = await new UserFactory({
|
|
2957
2958
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
2958
2959
|
}).create();
|
|
2959
|
-
const token = await
|
|
2960
|
+
const token = await SessionService.createSession(admin);
|
|
2960
2961
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
2961
2962
|
const d = new Date();
|
|
2962
2963
|
nonEmtpyArray.addPatch(EmergencyContact.patch({
|
|
@@ -3027,7 +3028,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3027
3028
|
const admin = await new UserFactory({
|
|
3028
3029
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
3029
3030
|
}).create();
|
|
3030
|
-
const token = await
|
|
3031
|
+
const token = await SessionService.createSession(admin);
|
|
3031
3032
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
3032
3033
|
nonEmtpyArray.addPut(newContact);
|
|
3033
3034
|
|
|
@@ -3085,7 +3086,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3085
3086
|
const admin = await new UserFactory({
|
|
3086
3087
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
3087
3088
|
}).create();
|
|
3088
|
-
const token = await
|
|
3089
|
+
const token = await SessionService.createSession(admin);
|
|
3089
3090
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
3090
3091
|
nonEmtpyArray.addPatch(updatedContact);
|
|
3091
3092
|
|
|
@@ -3140,7 +3141,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3140
3141
|
const admin = await new UserFactory({
|
|
3141
3142
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
3142
3143
|
}).create();
|
|
3143
|
-
const token = await
|
|
3144
|
+
const token = await SessionService.createSession(admin);
|
|
3144
3145
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
3145
3146
|
nonEmtpyArray.addDelete(contact1.id);
|
|
3146
3147
|
|
|
@@ -3206,7 +3207,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3206
3207
|
const admin = await new UserFactory({
|
|
3207
3208
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
3208
3209
|
}).create();
|
|
3209
|
-
const token = await
|
|
3210
|
+
const token = await SessionService.createSession(admin);
|
|
3210
3211
|
const nonEmtpyArray1 = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
3211
3212
|
nonEmtpyArray1.addPatch(EmergencyContact.patch({
|
|
3212
3213
|
id: contact1.id,
|
|
@@ -3300,7 +3301,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3300
3301
|
const admin = await new UserFactory({
|
|
3301
3302
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
3302
3303
|
}).create();
|
|
3303
|
-
const token = await
|
|
3304
|
+
const token = await SessionService.createSession(admin);
|
|
3304
3305
|
const nonEmtpyArray = new PatchableArray() as PatchableArrayAutoEncoder<EmergencyContact>;
|
|
3305
3306
|
nonEmtpyArray.addPatch(EmergencyContact.patch({
|
|
3306
3307
|
id: contact1.id,
|
|
@@ -3354,7 +3355,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3354
3355
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3355
3356
|
}).create();
|
|
3356
3357
|
|
|
3357
|
-
const token = await
|
|
3358
|
+
const token = await SessionService.createSession(user);
|
|
3358
3359
|
|
|
3359
3360
|
// patch uitpas number
|
|
3360
3361
|
const arr: Body = new PatchableArray();
|
|
@@ -3401,7 +3402,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3401
3402
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3402
3403
|
}).create();
|
|
3403
3404
|
|
|
3404
|
-
const token = await
|
|
3405
|
+
const token = await SessionService.createSession(user);
|
|
3405
3406
|
|
|
3406
3407
|
// create member
|
|
3407
3408
|
const member = await new MemberFactory({
|
|
@@ -3459,7 +3460,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3459
3460
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3460
3461
|
}).create();
|
|
3461
3462
|
|
|
3462
|
-
const token = await
|
|
3463
|
+
const token = await SessionService.createSession(user);
|
|
3463
3464
|
|
|
3464
3465
|
// create member
|
|
3465
3466
|
const member = await new MemberFactory({
|
|
@@ -3513,7 +3514,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3513
3514
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3514
3515
|
}).create();
|
|
3515
3516
|
|
|
3516
|
-
const token = await
|
|
3517
|
+
const token = await SessionService.createSession(user);
|
|
3517
3518
|
|
|
3518
3519
|
// create member
|
|
3519
3520
|
const member = await new MemberFactory({
|
|
@@ -3566,7 +3567,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3566
3567
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3567
3568
|
}).create();
|
|
3568
3569
|
|
|
3569
|
-
const token = await
|
|
3570
|
+
const token = await SessionService.createSession(user);
|
|
3570
3571
|
|
|
3571
3572
|
// create member
|
|
3572
3573
|
const member = await new MemberFactory({
|
|
@@ -3627,7 +3628,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3627
3628
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3628
3629
|
}).create();
|
|
3629
3630
|
|
|
3630
|
-
const token = await
|
|
3631
|
+
const token = await SessionService.createSession(user);
|
|
3631
3632
|
|
|
3632
3633
|
// create member
|
|
3633
3634
|
const member = await new MemberFactory({
|
|
@@ -3686,7 +3687,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3686
3687
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3687
3688
|
}).create();
|
|
3688
3689
|
|
|
3689
|
-
const token = await
|
|
3690
|
+
const token = await SessionService.createSession(user);
|
|
3690
3691
|
|
|
3691
3692
|
// create member
|
|
3692
3693
|
const member = await new MemberFactory({
|
|
@@ -3747,7 +3748,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3747
3748
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3748
3749
|
}).create();
|
|
3749
3750
|
|
|
3750
|
-
const token = await
|
|
3751
|
+
const token = await SessionService.createSession(user);
|
|
3751
3752
|
|
|
3752
3753
|
// create member
|
|
3753
3754
|
const member = await new MemberFactory({
|
|
@@ -3813,7 +3814,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3813
3814
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3814
3815
|
}).create();
|
|
3815
3816
|
|
|
3816
|
-
const token = await
|
|
3817
|
+
const token = await SessionService.createSession(user);
|
|
3817
3818
|
|
|
3818
3819
|
// create member
|
|
3819
3820
|
const member = await new MemberFactory({
|
|
@@ -3870,7 +3871,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3870
3871
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3871
3872
|
}).create();
|
|
3872
3873
|
|
|
3873
|
-
const token = await
|
|
3874
|
+
const token = await SessionService.createSession(user);
|
|
3874
3875
|
|
|
3875
3876
|
// create member
|
|
3876
3877
|
const member = await new MemberFactory({
|
|
@@ -3921,7 +3922,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3921
3922
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3922
3923
|
}).create();
|
|
3923
3924
|
|
|
3924
|
-
const token = await
|
|
3925
|
+
const token = await SessionService.createSession(user);
|
|
3925
3926
|
|
|
3926
3927
|
// create member
|
|
3927
3928
|
const member = await new MemberFactory({
|
|
@@ -3982,7 +3983,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
3982
3983
|
organization, // since we are in platform mode, this will only set the permissions for this organization
|
|
3983
3984
|
}).create();
|
|
3984
3985
|
|
|
3985
|
-
const token = await
|
|
3986
|
+
const token = await SessionService.createSession(user);
|
|
3986
3987
|
|
|
3987
3988
|
// create member
|
|
3988
3989
|
const member = await new MemberFactory({
|
|
@@ -4084,7 +4085,7 @@ describe('Endpoint.PatchOrganizationMembersEndpoint', () => {
|
|
|
4084
4085
|
permissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
4085
4086
|
organization,
|
|
4086
4087
|
}).create();
|
|
4087
|
-
const token = await
|
|
4088
|
+
const token = await SessionService.createSession(user);
|
|
4088
4089
|
|
|
4089
4090
|
const member = await new MemberFactory({ organization }).create();
|
|
4090
4091
|
const group = await new GroupFactory({ organization, period }).create();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Request } from '@simonbackx/simple-endpoints';
|
|
2
2
|
import { EmailMocker } from '@stamhoofd/email';
|
|
3
|
-
import type { RateLimiter } from '@stamhoofd/models';
|
|
4
|
-
import { AuditLog, EmailTemplateFactory, Member, MemberFactory, OrganizationFactory,
|
|
3
|
+
import type { RateLimiter, Token } from '@stamhoofd/models';
|
|
4
|
+
import { AuditLog, EmailTemplateFactory, Member, MemberFactory, OrganizationFactory, UserFactory } from '@stamhoofd/models';
|
|
5
5
|
import { AuditLogReplacementType, AuditLogType, EmailTemplateType, MemberDetails, Parent, ParentType, SecurityCodeSendMethod, SendMemberSecurityCodeRequest } from '@stamhoofd/structures';
|
|
6
6
|
import { STExpect, TestUtils } from '@stamhoofd/test-utils';
|
|
7
7
|
import { Formatter } from '@stamhoofd/utility';
|
|
@@ -9,6 +9,7 @@ import type { SMSMocker } from '../../../../tests/helpers/SMSMocker.js';
|
|
|
9
9
|
import { testServer } from '../../../../tests/helpers/TestServer.js';
|
|
10
10
|
import { initSMSApi } from '../../../../tests/init/index.js';
|
|
11
11
|
import { memberPhoneLookupLimiter, memberSecurityCodeSendLimiter, SendMemberSecurityCodeEndpoint, smsOrganizationLimiter, userSecurityCodeSendLimiter } from './SendMemberSecurityCodeEndpoint.js';
|
|
12
|
+
import { SessionService } from '../../../services/SessionService.js';
|
|
12
13
|
|
|
13
14
|
const baseUrl = `/members/security-code`;
|
|
14
15
|
const endpoint = new SendMemberSecurityCodeEndpoint();
|
|
@@ -41,7 +42,7 @@ describe('Endpoint.SendMemberSecurityCode', () => {
|
|
|
41
42
|
await new EmailTemplateFactory({ type: EmailTemplateType.MemberSecurityCode }).create();
|
|
42
43
|
|
|
43
44
|
const user = await new UserFactory({ organization }).create();
|
|
44
|
-
const token = await
|
|
45
|
+
const token = await SessionService.createSession(user);
|
|
45
46
|
|
|
46
47
|
const details = MemberDetails.create({
|
|
47
48
|
firstName: 'Jef',
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Request } from '@simonbackx/simple-endpoints';
|
|
2
|
-
import { Token
|
|
2
|
+
import type { Token } from '@stamhoofd/models';
|
|
3
|
+
import { UserFactory } from '@stamhoofd/models';
|
|
3
4
|
import { PermissionLevel, Permissions, Version } from '@stamhoofd/structures';
|
|
5
|
+
import { SessionService } from '../../../services/SessionService.js';
|
|
4
6
|
|
|
5
7
|
import { TestUtils } from '@stamhoofd/test-utils';
|
|
6
8
|
import { testServer } from '../../../../tests/helpers/TestServer.js';
|
|
@@ -34,7 +36,7 @@ describe('Endpoint.GetPlatformEndpoint', () => {
|
|
|
34
36
|
})
|
|
35
37
|
.create();
|
|
36
38
|
|
|
37
|
-
const token = await
|
|
39
|
+
const token = await SessionService.createSession(user);
|
|
38
40
|
const platform = await getPlatform(token);
|
|
39
41
|
expect(platform.body.privateConfig).toBeNull();
|
|
40
42
|
});
|
|
@@ -47,7 +49,7 @@ describe('Endpoint.GetPlatformEndpoint', () => {
|
|
|
47
49
|
})
|
|
48
50
|
.create();
|
|
49
51
|
|
|
50
|
-
const token = await
|
|
52
|
+
const token = await SessionService.createSession(user);
|
|
51
53
|
const platform = await getPlatform(token);
|
|
52
54
|
expect(platform.body.privateConfig).not.toBeNull();
|
|
53
55
|
});
|
|
@@ -60,7 +62,7 @@ describe('Endpoint.GetPlatformEndpoint', () => {
|
|
|
60
62
|
})
|
|
61
63
|
.create();
|
|
62
64
|
|
|
63
|
-
const token = await
|
|
65
|
+
const token = await SessionService.createSession(user);
|
|
64
66
|
token.accessToken = 'invalid-token';
|
|
65
67
|
await token.save();
|
|
66
68
|
await expect(getPlatform(token)).rejects.toThrow('The access token is invalid');
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Request } from '@simonbackx/simple-endpoints';
|
|
2
|
-
import type { Organization } from '@stamhoofd/models';
|
|
3
|
-
import { OrganizationFactory, Platform, RegistrationPeriod, RegistrationPeriodFactory,
|
|
2
|
+
import type { Organization, Token } from '@stamhoofd/models';
|
|
3
|
+
import { OrganizationFactory, Platform, RegistrationPeriod, RegistrationPeriodFactory, UserFactory } from '@stamhoofd/models';
|
|
4
4
|
import { PermissionLevel, Permissions, PlatformConfig, PlatformPrivateConfig, Platform as PlatformStruct, Version } from '@stamhoofd/structures';
|
|
5
|
+
import { SessionService } from '../../../services/SessionService.js';
|
|
5
6
|
|
|
6
7
|
import type { AutoEncoderPatchType } from '@simonbackx/simple-encoding';
|
|
7
8
|
import { TestUtils } from '@stamhoofd/test-utils';
|
|
@@ -34,7 +35,7 @@ describe('Endpoint.PatchPlatform', () => {
|
|
|
34
35
|
const admin = await new UserFactory({
|
|
35
36
|
globalPermissions: Permissions.create({ level: PermissionLevel.Full }),
|
|
36
37
|
}).create();
|
|
37
|
-
const token = await
|
|
38
|
+
const token = await SessionService.createSession(admin);
|
|
38
39
|
|
|
39
40
|
try {
|
|
40
41
|
const response = await patchPlatform({
|
|
@@ -49,8 +50,7 @@ describe('Endpoint.PatchPlatform', () => {
|
|
|
49
50
|
|
|
50
51
|
expect(response.body.privateConfig?.requireTwoFactor).toBe(true);
|
|
51
52
|
expect((await Platform.getForEditing()).privateConfig.requireTwoFactor).toBe(true);
|
|
52
|
-
}
|
|
53
|
-
finally {
|
|
53
|
+
} finally {
|
|
54
54
|
// The platform row is shared by every test file
|
|
55
55
|
await setPlatformRequiresTwoFactor(false);
|
|
56
56
|
}
|
|
@@ -72,7 +72,7 @@ describe('Endpoint.PatchPlatform', () => {
|
|
|
72
72
|
admin.organizationId = null;
|
|
73
73
|
await admin.save();
|
|
74
74
|
|
|
75
|
-
const token = await
|
|
75
|
+
const token = await SessionService.createSession(admin);
|
|
76
76
|
|
|
77
77
|
const patch = PlatformStruct.patch({
|
|
78
78
|
config: PlatformConfig.patch({
|
|
@@ -3,6 +3,7 @@ import type { Organization } from '@stamhoofd/models';
|
|
|
3
3
|
import { OrganizationFactory, Token, UserFactory } from '@stamhoofd/models';
|
|
4
4
|
import { PermissionLevel, Permissions } from '@stamhoofd/structures';
|
|
5
5
|
import { STExpect, TestUtils } from '@stamhoofd/test-utils';
|
|
6
|
+
import { SessionService } from '../../../services/SessionService.js';
|
|
6
7
|
|
|
7
8
|
import { testServer } from '../../../../tests/helpers/TestServer.js';
|
|
8
9
|
import { SignOutPlatformAdminsEndpoint } from './SignOutPlatformAdminsEndpoint.js';
|
|
@@ -44,10 +45,10 @@ describe('Endpoint.SignOutPlatformAdmins', () => {
|
|
|
44
45
|
organizationAdmin.organizationId = null;
|
|
45
46
|
await organizationAdmin.save();
|
|
46
47
|
|
|
47
|
-
const currentToken = await
|
|
48
|
-
const secondDeviceOfAdmin = await
|
|
49
|
-
const otherAdminToken = await
|
|
50
|
-
const organizationAdminToken = await
|
|
48
|
+
const currentToken = await SessionService.createSession(admin, { authenticatedAt: new Date() });
|
|
49
|
+
const secondDeviceOfAdmin = await SessionService.createSession(admin, { authenticatedAt: new Date() });
|
|
50
|
+
const otherAdminToken = await SessionService.createSession(otherAdmin, { authenticatedAt: new Date() });
|
|
51
|
+
const organizationAdminToken = await SessionService.createSession(organizationAdmin, { authenticatedAt: new Date() });
|
|
51
52
|
|
|
52
53
|
const response = await signOut(organization, currentToken);
|
|
53
54
|
|
|
@@ -63,9 +64,9 @@ describe('Endpoint.SignOutPlatformAdmins', () => {
|
|
|
63
64
|
|
|
64
65
|
const admin = await createPlatformAdmin(PermissionLevel.Write);
|
|
65
66
|
const otherAdmin = await createPlatformAdmin();
|
|
66
|
-
const otherAdminToken = await
|
|
67
|
+
const otherAdminToken = await SessionService.createSession(otherAdmin, { authenticatedAt: new Date() });
|
|
67
68
|
|
|
68
|
-
await expect(signOut(organization, await
|
|
69
|
+
await expect(signOut(organization, await SessionService.createSession(admin, { authenticatedAt: new Date() }))).rejects.toThrow(STExpect.simpleError({
|
|
69
70
|
code: 'permission_denied',
|
|
70
71
|
}));
|
|
71
72
|
expect(await tokenExists(otherAdminToken)).toBe(true);
|
|
@@ -82,9 +83,9 @@ describe('Endpoint.SignOutPlatformAdmins', () => {
|
|
|
82
83
|
await organizationAdmin.save();
|
|
83
84
|
|
|
84
85
|
const platformAdmin = await createPlatformAdmin();
|
|
85
|
-
const platformAdminToken = await
|
|
86
|
+
const platformAdminToken = await SessionService.createSession(platformAdmin, { authenticatedAt: new Date() });
|
|
86
87
|
|
|
87
|
-
await expect(signOut(organization, await
|
|
88
|
+
await expect(signOut(organization, await SessionService.createSession(organizationAdmin, { authenticatedAt: new Date() }))).rejects.toThrow(STExpect.simpleError({
|
|
88
89
|
code: 'permission_denied',
|
|
89
90
|
}));
|
|
90
91
|
expect(await tokenExists(platformAdminToken)).toBe(true);
|