tor-browser

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

iframe-popup-same-origin-to-unsafe-none.https.html (2401B)


      1 <!doctype html>
      2 <meta charset=utf-8>
      3 <meta name=timeout content=long>
      4 <meta name="variant" content="?1-2">
      5 <meta name="variant" content="?3-4">
      6 <meta name="variant" content="?5-6">
      7 <meta name="variant" content="?7-8">
      8 <meta name="variant" content="?9-last">
      9 <script src=/resources/testharness.js></script>
     10 <script src=/resources/testharnessreport.js></script>
     11 <script src=/common/dispatcher/dispatcher.js></script>
     12 <script src=/common/get-host-info.sub.js></script>
     13 <script src=/common/subset-tests.js></script>
     14 <script src=/common/utils.js></script>
     15 <script src="resources/common.js"></script>
     16 <script src="resources/iframe-test.js"></script>
     17 
     18 <body>
     19 <script>
     20 // This document has COOP: same-origin. The popup has no COOP. Therefore there
     21 // should be no opener or name.
     22 [
     23  {
     24    "title": "same origin iframe, same origin popup",
     25    "iframeOrigin": SAME_ORIGIN,
     26    "popupOrigin": SAME_ORIGIN,
     27    "opener": "severed"
     28  },
     29  {
     30    "title": "same site iframe, same origin popup",
     31    "iframeOrigin": SAME_SITE,
     32    "popupOrigin": SAME_ORIGIN,
     33    "opener": "noopener"
     34  },
     35  {
     36    "title": "cross origin iframe, same origin popup",
     37    "iframeOrigin": CROSS_ORIGIN,
     38    "popupOrigin": SAME_ORIGIN,
     39    "opener": "noopener"
     40  },
     41  {
     42    "title": "same origin iframe, same site popup",
     43    "iframeOrigin": SAME_ORIGIN,
     44    "popupOrigin": SAME_SITE,
     45    "opener": "severed"
     46  },
     47  {
     48    "title": "same site iframe, same site popup",
     49    "iframeOrigin": SAME_SITE,
     50    "popupOrigin": SAME_SITE,
     51    "opener": "noopener"
     52  },
     53  {
     54    "title": "cross origin iframe, same site popup",
     55    "iframeOrigin": CROSS_ORIGIN,
     56    "popupOrigin": SAME_SITE,
     57    "opener": "noopener"
     58  },
     59  {
     60    "title": "same origin iframe, cross origin popup",
     61    "iframeOrigin": SAME_ORIGIN,
     62    "popupOrigin": CROSS_ORIGIN,
     63    "opener": "severed"
     64  },
     65  {
     66    "title": "same site iframe, cross origin popup",
     67    "iframeOrigin": SAME_SITE,
     68    "popupOrigin": CROSS_ORIGIN,
     69    "opener": "noopener"
     70  },
     71  {
     72    "title": "cross origin iframe, cross origin popup",
     73    "iframeOrigin": CROSS_ORIGIN,
     74    "popupOrigin": CROSS_ORIGIN,
     75    "opener": "noopener"
     76  }
     77 ].forEach(variant => {
     78  subsetTest(
     79    iframe_test,
     80    `COOP: same-origin to popup COOP: unsafe-none via an iframe, with ${variant.title}`,
     81    variant.iframeOrigin,
     82    variant.popupOrigin,
     83    { coop: 'unsafe-none' },
     84    variant.opener);
     85 });
     86 </script>
     87 </body>