Skip to content

Commit

Permalink
revert public key changes
Browse files Browse the repository at this point in the history
  • Loading branch information
ashleysmithTTD committed Nov 13, 2024
1 parent 63aed0e commit d247887
Showing 1 changed file with 41 additions and 23 deletions.
64 changes: 41 additions & 23 deletions src/integrationTests/clientSideTokenGeneration.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,17 +48,18 @@ describe('Client-side token generation Tests', () => {
const scenarios = [
{
name: 'setIdentityFromEmail',
identityType: 'uid2',
setInvalidIdentity: () => uid2.setIdentityFromEmail('test.com', mocks.makeUid2CstgOption()),
setIdentity: (serverPublicKey?: string) =>
uid2.setIdentityFromEmail(
'[email protected]',
mocks.makeUid2CstgOption({ serverPublicKey })
),
getIdentity: mocks.getUid2(),
serverPublicKey: serverPublicKeyUid2,
},
{
name: 'setIdentityFromEmailHash',
identityType: 'uid2',
setInvalidIdentity: () =>
uid2.setIdentityFromEmailHash('[email protected]', mocks.makeUid2CstgOption()),
setIdentity: (serverPublicKey?: string) =>
Expand All @@ -67,19 +68,19 @@ describe('Client-side token generation Tests', () => {
mocks.makeUid2CstgOption({ serverPublicKey })
),
getIdentity: mocks.getUid2(),
serverPublicKey: serverPublicKeyUid2,
},
{
name: 'setIdentityFromPhone',
identityType: 'uid2',
setInvalidIdentity: () =>
uid2.setIdentityFromPhone('12345678910', mocks.makeUid2CstgOption()),
setIdentity: (serverPublicKey?: string) =>
uid2.setIdentityFromPhone('+12345678910', mocks.makeUid2CstgOption({ serverPublicKey })),
getIdentity: mocks.getUid2(),
serverPublicKey: serverPublicKeyUid2,
},
{
name: 'setIdentityFromPhoneHash',
identityType: 'uid2',
setInvalidIdentity: () =>
uid2.setIdentityFromPhoneHash('+12345678910', mocks.makeUid2CstgOption()),
setIdentity: (serverPublicKey?: string) =>
Expand All @@ -88,21 +89,21 @@ describe('Client-side token generation Tests', () => {
mocks.makeUid2CstgOption({ serverPublicKey })
),
getIdentity: mocks.getUid2(),
serverPublicKey: serverPublicKeyUid2,
},
{
name: 'setIdentityFromEmail',
identityType: 'euid',
setInvalidIdentity: () => euid.setIdentityFromEmail('test.com', mocks.makeEuidCstgOption()),
setIdentity: (serverPublicKey?: string) =>
euid.setIdentityFromEmail(
'[email protected]',
mocks.makeEuidCstgOption({ serverPublicKey })
),
getIdentity: mocks.getEuid(),
serverPublicKey: serverPublicKeyEuid,
},
{
name: 'setIdentityFromEmailHash',
identityType: 'euid',
setInvalidIdentity: () =>
euid.setIdentityFromEmailHash('[email protected]', mocks.makeEuidCstgOption()),
setIdentity: (serverPublicKey?: string) =>
Expand All @@ -111,19 +112,19 @@ describe('Client-side token generation Tests', () => {
mocks.makeEuidCstgOption({ serverPublicKey })
),
getIdentity: mocks.getEuid(),
serverPublicKey: serverPublicKeyEuid,
},
{
name: 'setIdentityFromPhone',
identityType: 'euid',
setInvalidIdentity: () =>
euid.setIdentityFromPhone('12345678910', mocks.makeEuidCstgOption()),
setIdentity: (serverPublicKey?: string) =>
euid.setIdentityFromPhone('+12345678910', mocks.makeEuidCstgOption({ serverPublicKey })),
getIdentity: mocks.getEuid(),
serverPublicKey: serverPublicKeyEuid,
},
{
name: 'setIdentityFromPhoneHash',
identityType: 'euid',
setInvalidIdentity: () =>
euid.setIdentityFromPhoneHash('+12345678910', mocks.makeEuidCstgOption()),
setIdentity: (serverPublicKey?: string) =>
Expand All @@ -132,18 +133,17 @@ describe('Client-side token generation Tests', () => {
mocks.makeEuidCstgOption({ serverPublicKey })
),
getIdentity: mocks.getEuid(),
serverPublicKey: serverPublicKeyEuid,
},
];

scenarios.forEach((scenario) => {
describe(scenario.name, () => {
beforeEach(() => {
if (scenario.serverPublicKey.includes('UID2')) {
if (scenario.identityType === 'uid2') {
uid2 = new UID2();
uid2.init({});
uid2OrEuid = uid2;
} else if (scenario.serverPublicKey.includes('EUID')) {
} else if (scenario.identityType === 'euid') {
euid = new EUID();
euid.init({});
uid2OrEuid = euid;
Expand Down Expand Up @@ -183,21 +183,29 @@ describe('Client-side token generation Tests', () => {
done();
}
});
scenario.setIdentity(scenario.serverPublicKey);
scenario.setIdentity(
scenario.identityType === 'uid2' ? serverPublicKeyUid2 : serverPublicKeyEuid
);
});

test('should set identity to storage', async () => {
await scenario.setIdentity(scenario.serverPublicKey);
await scenario.setIdentity(
scenario.identityType === 'uid2' ? serverPublicKeyUid2 : serverPublicKeyEuid
);
expect(scenario.getIdentity).toEqual(cstgToken);
});

test('UID2 or EUID should be in available state', async () => {
await scenario.setIdentity(scenario.serverPublicKey);
await scenario.setIdentity(
scenario.identityType === 'uid2' ? serverPublicKeyUid2 : serverPublicKeyEuid
);
(expect(uid2OrEuid) as any).toBeInAvailableState(cstgToken.advertising_token);
});

test('should refresh token when generated token requires a refresh', async () => {
await scenario.setIdentity(scenario.serverPublicKey);
await scenario.setIdentity(
scenario.identityType === 'uid2' ? serverPublicKeyUid2 : serverPublicKeyEuid
);
const refreshedToken = {
...mocks.makeIdentityV2(),
advertising_token: 'refreshed_token',
Expand All @@ -224,15 +232,19 @@ describe('Client-side token generation Tests', () => {
});
});
test('should not set identity', async () => {
await expect(scenario.setIdentity(scenario.serverPublicKey)).rejects.toEqual(
'Client error: Here is a client error'
);
await expect(
scenario.setIdentity(
scenario.identityType === 'uid2' ? serverPublicKeyUid2 : serverPublicKeyEuid
)
).rejects.toEqual('Client error: Here is a client error');
expect(scenario.getIdentity).toBeNull();
});
test('should be in unavailable state', async () => {
await expect(scenario.setIdentity(scenario.serverPublicKey)).rejects.toEqual(
'Client error: Here is a client error'
);
await expect(
scenario.setIdentity(
scenario.identityType === 'uid2' ? serverPublicKeyUid2 : serverPublicKeyEuid
)
).rejects.toEqual('Client error: Here is a client error');
(expect(uid2OrEuid) as any).toBeInUnavailableState();
});
});
Expand All @@ -251,7 +263,9 @@ describe('Client-side token generation Tests', () => {
});
});
test('UID2 or EUID should be in optout state', async () => {
await scenario.setIdentity(scenario.serverPublicKey);
await scenario.setIdentity(
scenario.identityType === 'uid2' ? serverPublicKeyUid2 : serverPublicKeyEuid
);
(expect(uid2OrEuid) as any).toBeInOptoutState();
});

Expand All @@ -262,7 +276,9 @@ describe('Client-side token generation Tests', () => {
done();
}
});
scenario.setIdentity(scenario.serverPublicKey);
scenario.setIdentity(
scenario.identityType === 'uid2' ? serverPublicKeyUid2 : serverPublicKeyEuid
);
});

test('The callback should be called with an optout event', (done) => {
Expand All @@ -271,7 +287,9 @@ describe('Client-side token generation Tests', () => {
done();
}
});
scenario.setIdentity(scenario.serverPublicKey);
scenario.setIdentity(
scenario.identityType === 'uid2' ? serverPublicKeyUid2 : serverPublicKeyEuid
);
});
});
});
Expand Down

0 comments on commit d247887

Please sign in to comment.