public static async Task FromId_TokenExpired_GetRefreshedToken() { var expiredToken = BuildTokenEntry(DateTime.UtcNow.AddSeconds(-60)); var refreshedToken = BuildTokenEntry(DateTime.UtcNow.AddDays(1)); var config = new AuthTokenExtensionConfig(); var mockClient = GetEasyAuthClientMock(expiredToken, refreshedToken); config.EasyAuthClient = mockClient.Object; config.AppSettings = GetNameResolver(new Dictionary <string, string>() { { Constants.AppSettingWebsiteAuthSigningKey, SigningKey } }).Object; var args = new Dictionary <string, object> { { "token", "dummyValue" }, }; JobHost host = TestHelpers.NewHost <TokenFunctions>(config); await host.CallAsync("TokenFunctions.FromId", args); var expectedResult = refreshedToken.AccessToken; Assert.Equal(expectedResult, finalTokenValue); mockClient.Verify(client => client.RefreshToken(It.IsAny <JwtSecurityToken>(), It.IsAny <TokenAttribute>()), Times.AtLeastOnce()); ResetState(); }
private void ConfigureServiceManager(ExtensionConfigContext context) { if (_serviceManager == null) { // Set up token extension; handles auth (only providers supported by Easy Auth) var tokenExtension = new AuthTokenExtensionConfig(); tokenExtension.InitializeAllExceptRules(context); _serviceManager = new ServiceManager(tokenExtension); } }
public static async Task FromUserToken_CredentialsValid_GetToken() { var config = new AuthTokenExtensionConfig(); var mockClient = GetAadClientMock(); config.AadClient = mockClient.Object; var args = new Dictionary <string, object> { { "token", SampleUserToken }, }; JobHost host = TestHelpers.NewHost <TokenFunctions>(config); await host.CallAsync("TokenFunctions.FromUserToken", args); var expectedResult = AccessTokenFromUserToken; Assert.Equal(expectedResult, finalTokenValue); mockClient.Verify(client => client.GetTokenOnBehalfOfUserAsync(SampleUserToken, GraphResource), Times.Exactly(1)); ResetState(); }
public static async Task FromId_TokenStillValid_GetStoredToken() { var currentToken = BuildTokenEntry(DateTime.UtcNow.AddDays(1)); var config = new AuthTokenExtensionConfig(); var mockClient = GetEasyAuthClientMock(currentToken); config.EasyAuthClient = mockClient.Object; config.AppSettings = GetNameResolver(new Dictionary <string, string>() { { Constants.AppSettingWebsiteAuthSigningKey, SigningKey } }).Object; var args = new Dictionary <string, object> { { "token", "dummyValue" }, }; JobHost host = TestHelpers.NewHost <TokenFunctions>(config); await host.CallAsync("TokenFunctions.FromId", args); var expectedResult = currentToken.AccessToken; Assert.Equal(expectedResult, finalTokenValue); ResetState(); }
public ServiceManager(AuthTokenExtensionConfig config) { _tokenExtension = config; }
public Mock(AuthTokenExtensionConfig config, IGraphServiceClient client) : base(config) { _client = client; }