File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / curl / tests / data / test1052
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Wed Jun 3 10:01:16 2020 UTC (5 years ago) by misho
Branches: curl, MAIN
CVS tags: v7_70_0p4, HEAD
curl

    1: <testcase>
    2: <info>
    3: <keywords>
    4: HTTP
    5: HTTP PUT
    6: followlocation
    7: </keywords>
    8: 
    9: </info>
   10: # Server-side
   11: <reply>
   12: <data>
   13: HTTP/1.0 301 Redirect swsclose
   14: Date: Thu, 29 Jul 2008 14:49:00 GMT
   15: Server: test-server/fake
   16: Location: data/10520002.txt?coolsite=yes
   17: Content-Length: 0
   18: Connection: close
   19: 
   20: </data>
   21: <data2>
   22: HTTP/1.0 200 Followed here fine swsclose
   23: Date: Thu, 29 Jul 2008 14:49:00 GMT
   24: Server: test-server/fake
   25: Content-Length: 51
   26: 
   27: If this is received, the location following worked
   28: </data2>
   29: <datacheck>
   30: HTTP/1.0 301 Redirect swsclose
   31: Date: Thu, 29 Jul 2008 14:49:00 GMT
   32: Server: test-server/fake
   33: Location: data/10520002.txt?coolsite=yes
   34: Content-Length: 0
   35: Connection: close
   36: 
   37: HTTP/1.0 200 Followed here fine swsclose
   38: Date: Thu, 29 Jul 2008 14:49:00 GMT
   39: Server: test-server/fake
   40: Content-Length: 51
   41: 
   42: If this is received, the location following worked
   43: </datacheck>
   44: </reply>
   45: 
   46: # Client-side
   47: <client>
   48: <server>
   49: http
   50: </server>
   51:  <name>
   52: HTTP 1.0 PUT with Location: following
   53:  </name>
   54:  <command>
   55: http://%HOSTIP:%HTTPPORT/want/1052 -0 -L -T log/test1052.txt
   56: </command>
   57: <file name="log/test1052.txt">
   58: Weird
   59:      file
   60:          to
   61:    upload
   62: for
   63:    testing
   64: the
   65:    PUT
   66:       feature
   67: </file>
   68: </client>
   69: 
   70: # Verify data after the test has been "shot"
   71: <verify>
   72: <strip>
   73: ^User-Agent:.*
   74: </strip>
   75: 
   76: # The primary reason libcurl sends the data part twice in this test is that
   77: # the test HTTP server is blocking until it has read the entire request,
   78: # including the full request-body before it responds. So in this test the
   79: # server says 301 and 200 _after_ the entire PUT body has been sent.
   80: <protocol>
   81: PUT /want/1052 HTTP/1.0
   82: Host: %HOSTIP:%HTTPPORT
   83: Accept: */*
   84: Content-Length: 78
   85: 
   86: Weird
   87:      file
   88:          to
   89:    upload
   90: for
   91:    testing
   92: the
   93:    PUT
   94:       feature
   95: PUT /want/data/10520002.txt?coolsite=yes HTTP/1.0
   96: Host: %HOSTIP:%HTTPPORT
   97: Accept: */*
   98: Content-Length: 78
   99: 
  100: Weird
  101:      file
  102:          to
  103:    upload
  104: for
  105:    testing
  106: the
  107:    PUT
  108:       feature
  109: </protocol>
  110: </verify>
  111: </testcase>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>