Skip to content

Commit e0b5899

Browse files
authored
jon-UID2-3680-test-coverage-v4-base64-tokens (#62)
jon-UID2-3680-test-coverage-v4-base64-tokens
1 parent 6ac53b1 commit e0b5899

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

test/UID2.Client.Test/BidstreamClientTests.cs

+22
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,28 @@ private void SmokeTestForBidstream(IdentityScope identityScope, TokenVersion tok
8181
DecryptAndAssertSuccess(advertisingToken, tokenVersion);
8282
}
8383

84+
[Theory]
85+
[InlineData(IdentityScope.UID2)]
86+
[InlineData(IdentityScope.EUID)]
87+
private void CanDecryptV4TokenEncodedAsBase64(IdentityScope identityScope)
88+
{
89+
Refresh(KeyBidstreamResponse(new[] { MASTER_KEY, SITE_KEY }, identityScope));
90+
91+
var now = DateTime.UtcNow;
92+
93+
string advertisingTokenBase64;
94+
do
95+
{
96+
var advertisingTokenBase64Url = AdvertisingTokenBuilder.Builder().WithVersion(TokenVersion.V4).WithScope(identityScope).WithEstablished(now.AddMonths(-4)).WithGenerated(now.AddDays(-1)).WithExpiry(now.AddDays(2)).Build();
97+
var tokenAsBinary = UID2Base64UrlCoder.Decode(advertisingTokenBase64Url);
98+
advertisingTokenBase64 = Convert.ToBase64String(tokenAsBinary);
99+
100+
} while (!advertisingTokenBase64.Contains("=") || !advertisingTokenBase64.Contains("/") || !advertisingTokenBase64.Contains("+"));
101+
102+
DecryptAndAssertSuccess(advertisingTokenBase64, TokenVersion.V4);
103+
}
104+
105+
84106
private void DecryptAndAssertSuccess(string advertisingToken, TokenVersion tokenVersion)
85107
{
86108
var res = _client.DecryptTokenIntoRawUid(advertisingToken, null);

0 commit comments

Comments
 (0)