public void WhenDoingMultipleRequestInParallel_ThenItsOk()
 {
     Parallel.ForEach(Enumerable.Range(0, 100), new ParallelOptions() { MaxDegreeOfParallelism = 100 }, (c) =>
     {
         var client = new YouScribeClient(TestHelpers.BaseUrl);
         using (var dClient = client.clientFactory())
         {
             var id = Guid.NewGuid().ToString();
             dClient.Client.BaseClient.DefaultRequestHeaders.Add("test", id);
             dClient.Client.GetAsync(TestHelpers.BaseUrl);
             Assert.Equal(id, dClient.Client.BaseClient.DefaultRequestHeaders.GetValues("test").First());
         }
     });
 }
示例#2
0
 public void WhenDoingMultipleRequestInParallel_ThenItsOk()
 {
     Parallel.ForEach(Enumerable.Range(0, 100), new ParallelOptions()
     {
         MaxDegreeOfParallelism = 100
     }, (c) =>
     {
         var client = new YouScribeClient(TestHelpers.BaseUrl);
         using (var dClient = client.clientFactory())
         {
             var id = Guid.NewGuid().ToString();
             dClient.Client.BaseClient.DefaultRequestHeaders.Add("test", id);
             dClient.Client.GetAsync(TestHelpers.BaseUrl);
             Assert.Equal(id, dClient.Client.BaseClient.DefaultRequestHeaders.GetValues("test").First());
         }
     });
 }
        public void WhenRequest_ThenHeadersOk()
        {
            ClientsPoolProvider.ClearDefaults();
            // Arrange
            using (SimpleServer.Create(TestHelpers.BaseUrl, EventHandler))
            {
                var encoding = new System.Text.UnicodeEncoding();
                byte[] secretKey = encoding.GetBytes("DummyKey");
                int applicationId = 1;
                IHMAC hmac = new TestHMAC();
                var client = new YouScribeClient(TestHelpers.BaseUrl, YousScribeHMACHttpClientDecorator.GetBaseClientFactory(secretKey, applicationId, hmac));
                YousScribeHMACHttpClientDecorator httpClient = (YousScribeHMACHttpClientDecorator)((DisposableClient)client.clientFactory()).Client;

                // Act
                httpClient.GetAsync(TestHelpers.BaseUrl);

                // Assert
                Assert.NotNull(httpClient.BaseClient.DefaultRequestHeaders.Authorization);
                Assert.NotNull(httpClient.BaseClient.DefaultRequestHeaders.Date);
                Assert.NotNull(httpClient.BaseClient.DefaultRequestHeaders.GetValues(ApiUrls.HMACAuthenticateRandomKeyHeader));
            }
        }
        public void WhenRequest_ThenHeadersOk()
        {
            ClientsPoolProvider.ClearDefaults();
            // Arrange
            using (SimpleServer.Create(TestHelpers.BaseUrl, EventHandler))
            {
                var    encoding      = new System.Text.UnicodeEncoding();
                byte[] secretKey     = encoding.GetBytes("DummyKey");
                int    applicationId = 1;
                IHMAC  hmac          = new TestHMAC();
                var    client        = new YouScribeClient(TestHelpers.BaseUrl, YousScribeHMACHttpClientDecorator.GetBaseClientFactory(secretKey, applicationId, hmac));
                YousScribeHMACHttpClientDecorator httpClient = (YousScribeHMACHttpClientDecorator)((DisposableClient)client.clientFactory()).Client;

                // Act
                httpClient.GetAsync(TestHelpers.BaseUrl);

                // Assert
                Assert.NotNull(httpClient.BaseClient.DefaultRequestHeaders.Authorization);
                Assert.NotNull(httpClient.BaseClient.DefaultRequestHeaders.Date);
                Assert.NotNull(httpClient.BaseClient.DefaultRequestHeaders.GetValues(ApiUrls.HMACAuthenticateRandomKeyHeader));
            }
        }