public void CertificateTokenProviderRefreshWorks()
        {
            var thumbprint = "F064B7C7EACC942D10662A5115E047E94FA18498";

            System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates;
            Assert.True(TryFindCertificatesInStore(thumbprint, System.Security.Cryptography.X509Certificates.StoreLocation.LocalMachine, out certificates));

            var cache = new TestTokenCache();

            byte[] certificate = certificates[0].Export(System.Security.Cryptography.X509Certificates.X509ContentType.Pkcs12, _certificatePassword);
            var    credentials = ApplicationTokenProvider.LoginSilentAsync(
                "1449d5b7-8a83-47db-ae4c-9b03e888bad0",
                "20c58db7-4501-44e8-8e76-6febdb400c6b",
                certificate,
                _certificatePassword)
                                 .GetAwaiter().GetResult();

            cache.ForceTokenExpiry();
            var client  = new HttpClient();
            var request = new HttpRequestMessage(HttpMethod.Get,
                                                 new Uri("https://management.azure.com/subscriptions?api-version=2014-04-01-preview"));

            credentials.ProcessHttpRequestAsync(request, CancellationToken.None).Wait();
            Assert.NotNull(request.Headers.Authorization);
            var response = client.SendAsync(request).ConfigureAwait(false).GetAwaiter().GetResult();

            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
        }
        public void UserTokenProviderRefreshWorks()
        {
            var cache       = new TestTokenCache();
            var credentials = UserTokenProvider.LoginSilentAsync("1950a258-227b-4e31-a9cf-717495945fc2", this._domain,
                                                                 this._username, this._password, cache).GetAwaiter().GetResult();

            cache.ForceTokenExpiry();
            var client  = new HttpClient();
            var request = new HttpRequestMessage(HttpMethod.Get,
                                                 new Uri("https://management.azure.com/subscriptions?api-version=2014-04-01-preview"));

            credentials.ProcessHttpRequestAsync(request, CancellationToken.None).Wait();
            Assert.NotNull(request.Headers.Authorization);
            var response = client.SendAsync(request).ConfigureAwait(false).GetAwaiter().GetResult();

            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
        }
        public void CertificateTokenProviderRefreshWorks()
        {
            var thumbprint = "F064B7C7EACC942D10662A5115E047E94FA18498";
            System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates;
            Assert.True(TryFindCertificatesInStore(thumbprint, System.Security.Cryptography.X509Certificates.StoreLocation.LocalMachine, out certificates));

            var cache = new TestTokenCache();
            byte[] certificate = certificates[0].Export(System.Security.Cryptography.X509Certificates.X509ContentType.Pkcs12, _certificatePassword);
            var credentials = ApplicationTokenProvider.LoginSilentAsync(
                                "1449d5b7-8a83-47db-ae4c-9b03e888bad0", 
                                "20c58db7-4501-44e8-8e76-6febdb400c6b",
                                certificate,
                                _certificatePassword)
                            .GetAwaiter().GetResult();
            cache.ForceTokenExpiry();
            var client = new HttpClient();
            var request = new HttpRequestMessage(HttpMethod.Get,
                new Uri("https://management.azure.com/subscriptions?api-version=2014-04-01-preview"));
            credentials.ProcessHttpRequestAsync(request, CancellationToken.None).Wait();
            Assert.NotNull(request.Headers.Authorization);
            var response = client.SendAsync(request).ConfigureAwait(false).GetAwaiter().GetResult();
            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
        }
 public void UserTokenProviderRefreshWorks()
 {
     var cache = new TestTokenCache();
     var credentials = UserTokenProvider.LoginSilentAsync("1950a258-227b-4e31-a9cf-717495945fc2", this._domain,
         this._username, this._password, cache).GetAwaiter().GetResult();
     cache.ForceTokenExpiry();
     var client = new HttpClient();
     var request = new HttpRequestMessage(HttpMethod.Get,
         new Uri("https://management.azure.com/subscriptions?api-version=2014-04-01-preview"));
     credentials.ProcessHttpRequestAsync(request, CancellationToken.None).Wait();
     Assert.NotNull(request.Headers.Authorization);
     var response = client.SendAsync(request).ConfigureAwait(false).GetAwaiter().GetResult();
     Assert.Equal(HttpStatusCode.OK, response.StatusCode);
 }