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