tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

304-update.any.js (3246B)


      1 // META: global=window,worker
      2 // META: title=HTTP Cache - 304 Updates
      3 // META: timeout=long
      4 // META: script=/common/utils.js
      5 // META: script=/common/get-host-info.sub.js
      6 // META: script=http-cache.js
      7 
      8 var tests = [
      9  {
     10    name: "HTTP cache updates returned headers from a Last-Modified 304",
     11    requests: [
     12      {
     13        response_headers: [
     14          ["Expires", -5000],
     15          ["Last-Modified", -3000],
     16          ["Test-Header", "A"]
     17        ]
     18      },
     19      {
     20        response_headers: [
     21          ["Expires", -3000],
     22          ["Last-Modified", -3000],
     23          ["Test-Header", "B"]
     24        ],
     25        expected_type: "lm_validated",
     26        expected_response_headers: [
     27          ["Test-Header", "B"]
     28        ]
     29      }
     30    ]
     31  },
     32  {
     33    name: "HTTP cache updates stored headers from a Last-Modified 304",
     34    requests: [
     35      {
     36        response_headers: [
     37          ["Expires", -5000],
     38          ["Last-Modified", -3000],
     39          ["Test-Header", "A"]
     40        ]
     41      },
     42      {
     43        response_headers: [
     44          ["Expires", 3000],
     45          ["Last-Modified", -3000],
     46          ["Test-Header", "B"]
     47        ],
     48        expected_type: "lm_validated",
     49        expected_response_headers: [
     50          ["Test-Header", "B"]
     51        ],
     52        pause_after: true
     53      },
     54      {
     55        expected_type: "cached",
     56        expected_response_headers: [
     57          ["Test-Header", "B"]
     58        ]
     59      }
     60    ]
     61  },
     62  {
     63    name: "HTTP cache updates returned headers from a ETag 304",
     64    requests: [
     65      {
     66        response_headers: [
     67          ["Expires", -5000],
     68          ["ETag", "ABC"],
     69          ["Test-Header", "A"]
     70        ]
     71      },
     72      {
     73        response_headers: [
     74          ["Expires", -3000],
     75          ["ETag", "ABC"],
     76          ["Test-Header", "B"]
     77        ],
     78        expected_type: "etag_validated",
     79        expected_response_headers: [
     80          ["Test-Header", "B"]
     81        ]
     82      }
     83    ]
     84  },
     85  {
     86    name: "HTTP cache updates stored headers from a ETag 304",
     87    requests: [
     88      {
     89        response_headers: [
     90          ["Expires", -5000],
     91          ["ETag", "DEF"],
     92          ["Test-Header", "A"]
     93        ]
     94      },
     95      {
     96        response_headers: [
     97          ["Expires", 3000],
     98          ["ETag", "DEF"],
     99          ["Test-Header", "B"]
    100        ],
    101        expected_type: "etag_validated",
    102        expected_response_headers: [
    103          ["Test-Header", "B"]
    104        ],
    105        pause_after: true
    106      },
    107      {
    108        expected_type: "cached",
    109        expected_response_headers: [
    110          ["Test-Header", "B"]
    111        ]
    112      }
    113    ]
    114  },
    115  {
    116    name: "Content-* header",
    117    requests: [
    118      {
    119        response_headers: [
    120          ["Expires", -5000],
    121          ["ETag", "GHI"],
    122          ["Content-Test-Header", "A"]
    123        ]
    124      },
    125      {
    126        response_headers: [
    127          ["Expires", 3000],
    128          ["ETag", "GHI"],
    129          ["Content-Test-Header", "B"]
    130        ],
    131        expected_type: "etag_validated",
    132        expected_response_headers: [
    133          ["Content-Test-Header", "B"]
    134        ],
    135        pause_after: true
    136      },
    137      {
    138        expected_type: "cached",
    139        expected_response_headers: [
    140          ["Content-Test-Header", "B"]
    141        ]
    142      }
    143    ]
    144  },
    145 ];
    146 run_tests(tests);