Beispiel #1
0
        public async Task AccessToken_UpdateMissing()
        {
            await NoRepoIntegrationTestAsync(async() =>
            {
                try
                {
                    await AccessTokenVault.DeleteAllAccessTokensAsync(CancellationToken.None);
                    await AccessTokenVault.UpdateTokenAsync("asdf", DateTime.UtcNow.AddMinutes(30.0d), CancellationToken.None);

                    Assert.Fail("Expected InvalidAccessTokenException was not thrown.");
                }
                catch (InvalidAccessTokenException)
                {
                    // do nothing
                }
            });
        }
Beispiel #2
0
        public async Task AccessToken_Update()
        {
            await NoRepoIntegrationTestAsync(async() =>
            {
                await AccessTokenVault.DeleteAllAccessTokensAsync(CancellationToken.None);
                var userId     = 42;
                var timeout    = TimeSpan.FromMinutes(10.0d);
                var savedToken = await AccessTokenVault.CreateTokenAsync(userId, timeout, CancellationToken.None);
                Assert.IsTrue(savedToken.ExpirationDate < DateTime.UtcNow.AddMinutes(20.0d));

                // ACTION
                await AccessTokenVault.UpdateTokenAsync(savedToken.Value, DateTime.UtcNow.AddMinutes(30.0d), CancellationToken.None);

                // ASSERT
                var loadedToken = await AccessTokenVault.GetTokenAsync(savedToken.Value, CancellationToken.None);
                Assert.IsNotNull(loadedToken);
                Assert.IsTrue(loadedToken.ExpirationDate > DateTime.UtcNow.AddMinutes(20.0d));
            });
        }
Beispiel #3
0
        public async Task AccessToken_UpdateExpired()
        {
            await NoRepoIntegrationTestAsync(async() =>
            {
                try
                {
                    await AccessTokenVault.DeleteAllAccessTokensAsync(CancellationToken.None);
                    var userId     = 42;
                    var timeout    = TimeSpan.FromMilliseconds(1);
                    var savedToken = await AccessTokenVault.CreateTokenAsync(userId, timeout, CancellationToken.None);

                    // ACTION
                    Thread.Sleep(1100);
                    await AccessTokenVault.UpdateTokenAsync(savedToken.Value, DateTime.UtcNow.AddMinutes(30.0d), CancellationToken.None);

                    // ASSERT
                    Assert.Fail("Expected InvalidAccessTokenException was not thrown.");
                }
                catch (InvalidAccessTokenException)
                {
                    // do nothing
                }
            });
        }