public void Adds_x_forwarded_for_if_none() { var requestHead = default(HttpRequestHead); var txDel = new HttpServerTransactionDelegate(IPAddress.Parse("8.8.8.8"), new MockResponseFactory(), new MockRequestDelegate() { OnRequestAction = (head, body, response) => { requestHead = head; } }); txDel.Subscribe(new MockObserver<IDataProducer>()); txDel.OnRequest(new HttpRequestHead() { Headers = new Dictionary<string, string>() }, false); Assert.That(requestHead.Headers["X-Forwarded-For"], Is.EqualTo("8.8.8.8")); }
public void Append_x_forwarded_for_if_any() { var requestHead = default(HttpRequestHead); var txDel = new HttpServerTransactionDelegate(IPAddress.Parse("8.8.8.8"), new MockResponseFactory(), new MockRequestDelegate() { OnRequestAction = (head, body, response) => { requestHead = head; } }); txDel.Subscribe(new MockObserver<IDataProducer>()); txDel.OnRequest(new HttpRequestHead() { Headers = new Dictionary<string, string>(StringComparer.InvariantCultureIgnoreCase) { { "x-ForWarDED-FOr", "4.4.4.4" } } }, false); Assert.That(requestHead.Headers["x-Forwarded-For"], Is.EqualTo("4.4.4.4,8.8.8.8")); }