public void UserAgentOverride(string userAgentOverride, string[] customHeaders, string expect) { var requestMock = new MockRequest(); var message = new HttpMessage(requestMock, new ResponseClassifier()); if (!string.IsNullOrEmpty(userAgentOverride)) { message.SetProperty("SDKUserAgent", userAgentOverride); } if (customHeaders.Length > 0) { foreach (var header in customHeaders) { requestMock.Headers.Add(HttpHeader.Names.UserAgent, header); } } var policy = new MgmtTelemetryPolicy(this, ClientOptions.Default); policy.OnSendingRequest(message); string actual; Assert.IsTrue(requestMock.Headers.TryGetValue(HttpHeader.Names.UserAgent, out actual)); Assert.That(actual, Does.Match(expect)); IEnumerable <string> actualValues; Assert.IsTrue(requestMock.Headers.TryGetValues(HttpHeader.Names.UserAgent, out actualValues)); Assert.That(actualValues.ToArray(), Has.Length.EqualTo(1)); }
public void UserAgentOverrideBenchmark() { var requestMock = new MockRequest(); var message = new HttpMessage(requestMock, new ResponseClassifier()); if (!string.IsNullOrEmpty(SDKAgentOverride)) { message.SetProperty("SDKUserAgent", SDKAgentOverride); } if (CustomHeaders.Length > 0) { foreach (var header in CustomHeaders) { requestMock.Headers.Add(HttpHeader.Names.UserAgent, header); } } var policy = new MgmtTelemetryPolicy(message, ClientOptions.Default); policy.OnSendingRequest(message); }