1*6236dae4SAndroid Build Coastguard Worker<testcase> 2*6236dae4SAndroid Build Coastguard Worker<info> 3*6236dae4SAndroid Build Coastguard Worker<keywords> 4*6236dae4SAndroid Build Coastguard WorkerHTTP 5*6236dae4SAndroid Build Coastguard WorkerHTTP GET 6*6236dae4SAndroid Build Coastguard WorkerHTTP proxy 7*6236dae4SAndroid Build Coastguard WorkerHTTP proxy Digest auth 8*6236dae4SAndroid Build Coastguard Workermulti 9*6236dae4SAndroid Build Coastguard Worker</keywords> 10*6236dae4SAndroid Build Coastguard Worker</info> 11*6236dae4SAndroid Build Coastguard Worker 12*6236dae4SAndroid Build Coastguard Worker# Server-side 13*6236dae4SAndroid Build Coastguard Worker<reply> 14*6236dae4SAndroid Build Coastguard Worker<servercmd> 15*6236dae4SAndroid Build Coastguard Workerconnection-monitor 16*6236dae4SAndroid Build Coastguard Worker</servercmd> 17*6236dae4SAndroid Build Coastguard Worker 18*6236dae4SAndroid Build Coastguard Worker# this is returned first since we get no proxy-auth 19*6236dae4SAndroid Build Coastguard Worker<data> 20*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 407 Authorization Required to proxy me my dear 21*6236dae4SAndroid Build Coastguard WorkerProxy-Authenticate: Digest realm="weirdorealm", nonce="12345" 22*6236dae4SAndroid Build Coastguard WorkerContent-Length: 33 23*6236dae4SAndroid Build Coastguard Worker 24*6236dae4SAndroid Build Coastguard WorkerAnd you should ignore this data. 25*6236dae4SAndroid Build Coastguard Worker</data> 26*6236dae4SAndroid Build Coastguard Worker 27*6236dae4SAndroid Build Coastguard Worker# then this is returned when we get proxy-auth 28*6236dae4SAndroid Build Coastguard Worker<data1000> 29*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 200 OK 30*6236dae4SAndroid Build Coastguard WorkerContent-Length: 21 31*6236dae4SAndroid Build Coastguard WorkerServer: no 32*6236dae4SAndroid Build Coastguard Worker 33*6236dae4SAndroid Build Coastguard WorkerNice proxy auth sir! 34*6236dae4SAndroid Build Coastguard Worker</data1000> 35*6236dae4SAndroid Build Coastguard Worker 36*6236dae4SAndroid Build Coastguard Worker<datacheck> 37*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 407 Authorization Required to proxy me my dear 38*6236dae4SAndroid Build Coastguard WorkerProxy-Authenticate: Digest realm="weirdorealm", nonce="12345" 39*6236dae4SAndroid Build Coastguard WorkerContent-Length: 33 40*6236dae4SAndroid Build Coastguard Worker 41*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 200 OK 42*6236dae4SAndroid Build Coastguard WorkerContent-Length: 21 43*6236dae4SAndroid Build Coastguard WorkerServer: no 44*6236dae4SAndroid Build Coastguard Worker 45*6236dae4SAndroid Build Coastguard WorkerNice proxy auth sir! 46*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 407 Authorization Required to proxy me my dear 47*6236dae4SAndroid Build Coastguard WorkerProxy-Authenticate: Digest realm="weirdorealm", nonce="12345" 48*6236dae4SAndroid Build Coastguard WorkerContent-Length: 33 49*6236dae4SAndroid Build Coastguard Worker 50*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 200 OK 51*6236dae4SAndroid Build Coastguard WorkerContent-Length: 21 52*6236dae4SAndroid Build Coastguard WorkerServer: no 53*6236dae4SAndroid Build Coastguard Worker 54*6236dae4SAndroid Build Coastguard WorkerNice proxy auth sir! 55*6236dae4SAndroid Build Coastguard Worker</datacheck> 56*6236dae4SAndroid Build Coastguard Worker</reply> 57*6236dae4SAndroid Build Coastguard Worker 58*6236dae4SAndroid Build Coastguard Worker# Client-side 59*6236dae4SAndroid Build Coastguard Worker<client> 60*6236dae4SAndroid Build Coastguard Worker<server> 61*6236dae4SAndroid Build Coastguard Workerhttp 62*6236dae4SAndroid Build Coastguard Worker</server> 63*6236dae4SAndroid Build Coastguard Worker# tool is what to use instead of 'curl' 64*6236dae4SAndroid Build Coastguard Worker<tool> 65*6236dae4SAndroid Build Coastguard Workerlib%TESTNUMBER 66*6236dae4SAndroid Build Coastguard Worker</tool> 67*6236dae4SAndroid Build Coastguard Worker<features> 68*6236dae4SAndroid Build Coastguard Worker!SSPI 69*6236dae4SAndroid Build Coastguard Workercrypto 70*6236dae4SAndroid Build Coastguard Workerproxy 71*6236dae4SAndroid Build Coastguard Worker</features> 72*6236dae4SAndroid Build Coastguard Worker<name> 73*6236dae4SAndroid Build Coastguard WorkerHTTP proxy auth Digest multi API re-using connection 74*6236dae4SAndroid Build Coastguard Worker</name> 75*6236dae4SAndroid Build Coastguard Worker<command> 76*6236dae4SAndroid Build Coastguard Workerhttp://test.remote.example.com/path/%TESTNUMBER http://%HOSTIP:%HTTPPORT silly:person custom.set.host.name 77*6236dae4SAndroid Build Coastguard Worker</command> 78*6236dae4SAndroid Build Coastguard Worker</client> 79*6236dae4SAndroid Build Coastguard Worker 80*6236dae4SAndroid Build Coastguard Worker# Verify data after the test has been "shot" 81*6236dae4SAndroid Build Coastguard Worker<verify> 82*6236dae4SAndroid Build Coastguard Worker<protocol> 83*6236dae4SAndroid Build Coastguard WorkerGET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 84*6236dae4SAndroid Build Coastguard WorkerHost: custom.set.host.name 85*6236dae4SAndroid Build Coastguard WorkerAccept: */* 86*6236dae4SAndroid Build Coastguard WorkerProxy-Connection: Keep-Alive 87*6236dae4SAndroid Build Coastguard Worker 88*6236dae4SAndroid Build Coastguard WorkerGET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 89*6236dae4SAndroid Build Coastguard WorkerHost: custom.set.host.name 90*6236dae4SAndroid Build Coastguard WorkerProxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/%TESTNUMBER", response="ca507dcf189196b6a5374d3233042261" 91*6236dae4SAndroid Build Coastguard WorkerAccept: */* 92*6236dae4SAndroid Build Coastguard WorkerProxy-Connection: Keep-Alive 93*6236dae4SAndroid Build Coastguard Worker 94*6236dae4SAndroid Build Coastguard WorkerGET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 95*6236dae4SAndroid Build Coastguard WorkerHost: custom.set.host.name 96*6236dae4SAndroid Build Coastguard WorkerAccept: */* 97*6236dae4SAndroid Build Coastguard WorkerProxy-Connection: Keep-Alive 98*6236dae4SAndroid Build Coastguard Worker 99*6236dae4SAndroid Build Coastguard WorkerGET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 100*6236dae4SAndroid Build Coastguard WorkerHost: custom.set.host.name 101*6236dae4SAndroid Build Coastguard WorkerProxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/%TESTNUMBER", response="ca507dcf189196b6a5374d3233042261" 102*6236dae4SAndroid Build Coastguard WorkerAccept: */* 103*6236dae4SAndroid Build Coastguard WorkerProxy-Connection: Keep-Alive 104*6236dae4SAndroid Build Coastguard Worker 105*6236dae4SAndroid Build Coastguard Worker[DISCONNECT] 106*6236dae4SAndroid Build Coastguard Worker</protocol> 107*6236dae4SAndroid Build Coastguard Worker</verify> 108*6236dae4SAndroid Build Coastguard Worker</testcase> 109