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 } }); }
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)); }); }
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 } }); }