quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

test540 (2349B)


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