コード例 #1
0
        public static async Task FromId_TokenStillValid_GetStoredToken()
        {
            var             currentToken       = BuildTokenEntry(DateTime.UtcNow.AddDays(1));
            IEasyAuthClient mockEasyAuthClient = GetEasyAuthClientMock(currentToken).Object;
            IAadClient      aadClient          = GetAadClientMock().Object;
            INameResolver   appSettings        = GetNameResolver(new Dictionary <string, string>()
            {
                { Constants.WebsiteAuthSigningKey, SigningKey }
            }).Object;

            OutputContainer outputContainer = await TestHelpers.RunTestAsync <TokenFunctions>("TokenFunctions.FromId", appSettings : appSettings, easyAuthClient : mockEasyAuthClient, aadClient : aadClient);

            var expectedResult = currentToken.AccessToken;

            Assert.Equal(expectedResult, outputContainer.Output);
            ResetState();
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="EasyAuthTokenManager"/> class.
 /// </summary>
 /// <param name="hostName">The hostname of the keystore. </param>
 /// <param name="signingKey">The website authorization signing key</param>
 public EasyAuthTokenManager(IEasyAuthClient client, string signingKey)
 {
     _client     = client;
     _signingKey = signingKey;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="Converters"/> class.
 /// </summary>
 /// <param name="parent">TokenExtensionConfig containing necessary context & methods</param>
 public TokenConverter(IOptions <TokenOptions> options, IEasyAuthClient easyAuthClient, IAadClient aadClient)
 {
     _options        = options;
     _easyAuthClient = easyAuthClient;
     _aadManager     = aadClient;
 }
 public AuthTokenExtensionConfigProvider(IOptions <TokenOptions> options, IAadClient aadClient, IEasyAuthClient easyAuthClient, INameResolver appSettings)
 {
     _options = options.Value;
     _options.SetAppSettings(appSettings);
     _converter = new TokenConverter(options, easyAuthClient, aadClient);
 }
コード例 #5
0
        public static async Task <OutputContainer> RunTestAsync <T>(string methodName, INameResolver appSettings = null, IEasyAuthClient easyAuthClient = null, IAadClient aadClient = null, object argument = null)
        {
            var outputContainer = new OutputContainer();
            var arguments       = new Dictionary <string, object>()
            {
                { "outputContainer", outputContainer },
                { "triggerData", argument }
            };

            IHost host = new HostBuilder()
                         .ConfigureServices(services =>
            {
                easyAuthClient = easyAuthClient ?? new Mock <IEasyAuthClient>().Object;
                aadClient      = aadClient ?? new Mock <IAadClient>().Object;
                appSettings    = appSettings ?? new Mock <INameResolver>().Object;
                services.AddSingleton <ITypeLocator>(new FakeTypeLocator <T>());
                services.AddSingleton <IEasyAuthClient>(easyAuthClient);
                services.AddSingleton <IAadClient>(aadClient);
                services.AddSingleton <INameResolver>(appSettings);
            })
                         .ConfigureWebJobs(builder =>
            {
                builder.AddAuthTokenForTests();
                builder.UseHostId(Guid.NewGuid().ToString("n"));
            })
                         .Build();

            JobHost webJobsHost = host.Services.GetService <IJobHost>() as JobHost;
            await webJobsHost.CallAsync(methodName, arguments);

            return(outputContainer);
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="EasyAuthTokenManager"/> class.
 /// </summary>
 /// <param name="hostName">The hostname of the keystore. </param>
 /// <param name="signingKey">The website authorization signing key</param>
 public EasyAuthTokenManager(IEasyAuthClient client, IOptions <TokenOptions> options)
 {
     _client  = client;
     _options = options.Value;
 }