[Test] public void GetNoProxyIfNoneDefined() { using (new DisposableEnvVar("http_proxy")) using (new DisposableEnvVar("https_proxy")) { var envProxy = new FakeEnvProxy(); IWebProxy proxy; Assert.IsFalse(envProxy.TryGetProxyFor(new Uri("http://github.com"), out proxy)); Assert.IsFalse(envProxy.TryGetProxyFor(new Uri("https://github.com"), out proxy)); } }
[Test] public void GetHttpProxyWithPortNoCredentials() { using (new DisposableEnvVar("http_proxy", "http://proxy.local:8080")) using (new DisposableEnvVar("no_proxy")) { var envProxy = new FakeEnvProxy(); IWebProxy proxy; Assert.IsTrue(envProxy.TryGetProxyFor(new Uri("http://github.com"), out proxy)); var webProxy = proxy as WebProxy; Assert.IsNotNull(webProxy); Assert.That(webProxy.Address, Is.EqualTo(new Uri("http://proxy.local:8080"))); Assert.IsTrue(webProxy.BypassProxyOnLocal); Assert.That(webProxy.BypassList.Length, Is.EqualTo(0)); Assert.IsNull(webProxy.Credentials); } }
[Test] public void GetHttpProxyWithBypassList() { using (new DisposableEnvVar("http_proxy", string.Format("http://proxy.local:8080"))) using (new DisposableEnvVar("no_proxy", ".local,127.0.0.1")) { var envProxy = new FakeEnvProxy(); IWebProxy proxy; Assert.IsTrue(envProxy.TryGetProxyFor(new Uri("http://github.com"), out proxy)); var webProxy = proxy as WebProxy; Assert.IsNotNull(webProxy); Assert.That(webProxy.Address, Is.EqualTo(new Uri("http://proxy.local:8080"))); Assert.IsTrue(webProxy.BypassProxyOnLocal); Assert.That(webProxy.BypassList.Length, Is.EqualTo(2)); Assert.That(".local", Does.Match(webProxy.BypassList[0])); Assert.That("127.0.0.1", Does.Match(webProxy.BypassList[1])); Assert.IsNull(webProxy.Credentials); } }
public void GetHttpProxyWithBypassList() { using (new DisposableEnvVar("http_proxy", string.Format("http://proxy.local:8080"))) using (new DisposableEnvVar("no_proxy", ".local,127.0.0.1")) { var envProxy = new FakeEnvProxy(); IWebProxy proxy; Assert.IsTrue(envProxy.TryGetProxyFor(new Uri("http://github.com"), out proxy)); var webProxy = proxy as WebProxy; Assert.IsNotNull(webProxy); Assert.That(webProxy.Address, Is.EqualTo(new Uri("http://proxy.local:8080"))); Assert.IsTrue(webProxy.BypassProxyOnLocal); Assert.That(webProxy.BypassList.Length, Is.EqualTo(2)); Assert.That(webProxy.BypassList[0], Is.EqualTo(".local")); Assert.That(webProxy.BypassList[1], Is.EqualTo("127.0.0.1")); Assert.IsNull(webProxy.Credentials); } }
public void GetHttpProxyWithPortAndCredentials() { const string password = "******"; using (new DisposableEnvVar("http_proxy", string.Format("http://*****:*****@proxy.local:8080", Uri.EscapeDataString(password)))) using (new DisposableEnvVar("no_proxy")) { var envProxy = new FakeEnvProxy(); IWebProxy proxy; Assert.IsTrue(envProxy.TryGetProxyFor(new Uri("http://github.com"), out proxy)); var webProxy = proxy as WebProxy; Assert.IsNotNull(webProxy); Assert.That(webProxy.Address, Is.EqualTo(new Uri("http://proxy.local:8080"))); Assert.IsTrue(webProxy.BypassProxyOnLocal); Assert.That(webProxy.BypassList.Length, Is.EqualTo(0)); var credentials = webProxy.Credentials as NetworkCredential; Assert.IsNotNull(credentials); Assert.That(credentials.UserName, Is.EqualTo("user")); Assert.That(credentials.Password, Is.EqualTo(password)); } }
[Test] public void GetHttpProxyWithPortAndCredentials() { const string password = "******"; using (new DisposableEnvVar("http_proxy", string.Format("http://*****:*****@proxy.local:8080", Uri.EscapeDataString(password)))) using (new DisposableEnvVar("no_proxy")) { var envProxy = new FakeEnvProxy(); IWebProxy proxy; Assert.IsTrue(envProxy.TryGetProxyFor(new Uri("http://github.com"), out proxy)); var webProxy = proxy as WebProxy; Assert.IsNotNull(webProxy); Assert.That(webProxy.Address, Is.EqualTo(new Uri("http://proxy.local:8080"))); Assert.IsTrue(webProxy.BypassProxyOnLocal); Assert.That(webProxy.BypassList.Length, Is.EqualTo(0)); var credentials = webProxy.Credentials as NetworkCredential; Assert.IsNotNull(credentials); Assert.That(credentials.UserName, Is.EqualTo("user")); Assert.That(credentials.Password, Is.EqualTo(password)); } }