ci: test NTLM proxy authentication on Windows Update our CI tests to start a proxy that requires NTLM authentication; ensure that our WIndows HTTP client can speak NTLM.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
diff --git a/ci/test.ps1 b/ci/test.ps1
index 06e0ab2..ad36809 100644
--- a/ci/test.ps1
+++ b/ci/test.ps1
@@ -38,10 +38,15 @@ Write-Host "## Configuring test environment"
Write-Host "##############################################################################"
if (-not $Env:SKIP_PROXY_TESTS) {
+ Invoke-WebRequest -Method GET -Uri https://github.com/ethomson/poxyproxy/releases/download/v0.7.0/poxyproxy-0.7.0.jar -OutFile poxyproxy.jar
+
+ Write-Host ""
+ Write-Host "Starting HTTP proxy (Basic)..."
+ javaw -jar poxyproxy.jar --port 8080 --credentials foo:bar --auth-type basic --quiet
+
Write-Host ""
- Write-Host "Starting HTTP proxy..."
- Invoke-WebRequest -Method GET -Uri https://github.com/ethomson/poxyproxy/releases/download/v0.4.0/poxyproxy-0.4.0.jar -OutFile poxyproxy.jar
- javaw -jar poxyproxy.jar -d --port 8080 --credentials foo:bar --quiet
+ Write-Host "Starting HTTP proxy (NTLM)..."
+ javaw -jar poxyproxy.jar --port 8090 --credentials foo:bar --auth-type ntlm --quiet
}
Write-Host ""
@@ -76,14 +81,24 @@ if (-not $Env:SKIP_ONLINE_TESTS) {
}
if (-not $Env:SKIP_PROXY_TESTS) {
+ # Test HTTP Basic authentication
Write-Host ""
- Write-Host "Running proxy tests"
+ Write-Host "Running proxy tests (Basic authentication)"
Write-Host ""
$Env:GITTEST_REMOTE_PROXY_HOST="localhost:8080"
$Env:GITTEST_REMOTE_PROXY_USER="foo"
$Env:GITTEST_REMOTE_PROXY_PASS="bar"
+ run_test proxy
+ # Test NTLM authentication
+ Write-Host ""
+ Write-Host "Running proxy tests (NTLM authentication)"
+ Write-Host ""
+
+ $Env:GITTEST_REMOTE_PROXY_HOST="localhost:8090"
+ $Env:GITTEST_REMOTE_PROXY_USER="foo"
+ $Env:GITTEST_REMOTE_PROXY_PASS="bar"
run_test proxy
$Env:GITTEST_REMOTE_PROXY_HOST=$null