tor-browser

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

constructor-required-fields.html (9046B)


      1 <!doctype html>
      2 <script src="/resources/testharness.js"></script>
      3 <script src="/resources/testharnessreport.js"></script>
      4 <script>
      5    // basic tests.
      6    test(function() {
      7      assert_throws_js(TypeError,
      8                       function() { new SecurityPolicyViolationEvent(); });
      9    }, "SecurityPolicyViolationEvent constructor should throw with no parameters");
     10 
     11    test(function() {
     12      assert_not_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
     13        documentURI: "http://example.com",
     14        referrer: "http://example.com",
     15        blockedURI: "http://example.com",
     16        violatedDirective: "default-src",
     17        effectiveDirective: "default-src",
     18        originalPolicy: "default-src 'none'",
     19        sourceFile: "example.js",
     20        sample: "<script>alert('1');</scr" + "ipt>",
     21        disposition: "enforce",
     22        statusCode: 200,
     23        lineNumber: 1,
     24        columnNumber: 1,
     25      }), undefined);
     26    }, "SecurityPolicyViolationEvent constructor works with an init dict");
     27 
     28    // missing optional members
     29    test(function() {
     30      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
     31        // documentURI: "http://example.com",
     32        referrer: "http://example.com",
     33        blockedURI: "http://example.com",
     34        violatedDirective: "default-src",
     35        effectiveDirective: "default-src",
     36        originalPolicy: "default-src 'none'",
     37        sourceFile: "example.js",
     38        sample: "<script>alert('1');</scr" + "ipt>",
     39        disposition: "enforce",
     40        statusCode: 200,
     41        lineNumber: 1,
     42        columnNumber: 1,
     43      }).documentURI, "");
     44    }, "SecurityPolicyViolationEvent constructor does not require documentURI");
     45 
     46    test(function() {
     47      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
     48        documentURI: "http://example.com",
     49        referrer: "http://example.com",
     50        blockedURI: "http://example.com",
     51        // violatedDirective: "default-src",
     52        effectiveDirective: "default-src",
     53        originalPolicy: "default-src 'none'",
     54        sourceFile: "example.js",
     55        sample: "<script>alert('1');</scr" + "ipt>",
     56        disposition: "enforce",
     57        statusCode: 200,
     58        lineNumber: 1,
     59        columnNumber: 1,
     60      }).violatedDirective, "");
     61    }, "SecurityPolicyViolationEvent constructor does not require violatedDirective");
     62 
     63    test(function() {
     64      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
     65        documentURI: "http://example.com",
     66        referrer: "http://example.com",
     67        blockedURI: "http://example.com",
     68        violatedDirective: "default-src",
     69        // effectiveDirective: "default-src",
     70        originalPolicy: "default-src 'none'",
     71        sourceFile: "example.js",
     72        sample: "<script>alert('1');</scr" + "ipt>",
     73        disposition: "enforce",
     74        statusCode: 200,
     75        lineNumber: 1,
     76        columnNumber: 1,
     77      }).effectiveDirective, "");
     78    }, "SecurityPolicyViolationEvent constructor does not require effectiveDirective");
     79 
     80    test(function() {
     81      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
     82        documentURI: "http://example.com",
     83        referrer: "http://example.com",
     84        blockedURI: "http://example.com",
     85        violatedDirective: "default-src",
     86        effectiveDirective: "default-src",
     87        // originalPolicy: "default-src 'none'",
     88        sourceFile: "example.js",
     89        sample: "<script>alert('1');</scr" + "ipt>",
     90        disposition: "enforce",
     91        statusCode: 200,
     92        lineNumber: 1,
     93        columnNumber: 1,
     94      }).originalPolicy, "");
     95    }, "SecurityPolicyViolationEvent constructor does not require originalPolicy");
     96 
     97    test(function() {
     98      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
     99        documentURI: "http://example.com",
    100        referrer: "http://example.com",
    101        blockedURI: "http://example.com",
    102        violatedDirective: "default-src",
    103        effectiveDirective: "default-src",
    104        originalPolicy: "default-src 'none'",
    105        sourceFile: "example.js",
    106        sample: "<script>alert('1');</scr" + "ipt>",
    107        // disposition: "enforce",
    108        statusCode: 200,
    109        lineNumber: 1,
    110        columnNumber: 1,
    111      }).disposition, "enforce");
    112    }, "SecurityPolicyViolationEvent constructor does not require disposition");
    113 
    114    test(function() {
    115      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
    116        documentURI: "http://example.com",
    117        referrer: "http://example.com",
    118        blockedURI: "http://example.com",
    119        violatedDirective: "default-src",
    120        effectiveDirective: "default-src",
    121        originalPolicy: "default-src 'none'",
    122        sourceFile: "example.js",
    123        sample: "<script>alert('1');</scr" + "ipt>",
    124        disposition: "enforce",
    125        // statusCode: 200,
    126        lineNumber: 1,
    127        columnNumber: 1,
    128      }).statusCode, 0);
    129    }, "SecurityPolicyViolationEvent constructor does not require statusCode");
    130 
    131    test(function() {
    132      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
    133        documentURI: "http://example.com",
    134        // referrer: "http://example.com",
    135        blockedURI: "http://example.com",
    136        violatedDirective: "default-src",
    137        effectiveDirective: "default-src",
    138        originalPolicy: "default-src 'none'",
    139        sourceFile: "example.js",
    140        sample: "<script>alert('1');</scr" + "ipt>",
    141        disposition: "enforce",
    142        statusCode: 200,
    143        lineNumber: 1,
    144        columnNumber: 1,
    145      }).referrer, "");
    146    }, "SecurityPolicyViolationEvent constructor does not require referrer");
    147 
    148    test(function() {
    149      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
    150        documentURI: "http://example.com",
    151        referrer: "http://example.com",
    152        // blockedURI: "http://example.com",
    153        violatedDirective: "default-src",
    154        effectiveDirective: "default-src",
    155        originalPolicy: "default-src 'none'",
    156        sourceFile: "example.js",
    157        sample: "<script>alert('1');</scr" + "ipt>",
    158        disposition: "enforce",
    159        statusCode: 200,
    160        lineNumber: 1,
    161        columnNumber: 1,
    162      }).blockedURI, "");
    163    }, "SecurityPolicyViolationEvent constructor does not require blockedURI");
    164 
    165    test(function() {
    166      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
    167        documentURI: "http://example.com",
    168        referrer: "http://example.com",
    169        blockedURI: "http://example.com",
    170        violatedDirective: "default-src",
    171        effectiveDirective: "default-src",
    172        originalPolicy: "default-src 'none'",
    173        // sourceFile: "example.js",
    174        sample: "<script>alert('1');</scr" + "ipt>",
    175        disposition: "enforce",
    176        statusCode: 200,
    177        lineNumber: 1,
    178        columnNumber: 1,
    179      }).sourceFile, "");
    180    }, "SecurityPolicyViolationEvent constructor does not require sourceFile");
    181 
    182    test(function() {
    183      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
    184        documentURI: "http://example.com",
    185        referrer: "http://example.com",
    186        blockedURI: "http://example.com",
    187        violatedDirective: "default-src",
    188        effectiveDirective: "default-src",
    189        originalPolicy: "default-src 'none'",
    190        sourceFile: "example.js",
    191        // sample: "<script>alert('1');</scr" + "ipt>",
    192        disposition: "enforce",
    193        statusCode: 200,
    194        lineNumber: 1,
    195        columnNumber: 1,
    196      }).sample, "");
    197    }, "SecurityPolicyViolationEvent constructor does not require sample");
    198 
    199    test(function() {
    200      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
    201        documentURI: "http://example.com",
    202        referrer: "http://example.com",
    203        blockedURI: "http://example.com",
    204        violatedDirective: "default-src",
    205        effectiveDirective: "default-src",
    206        originalPolicy: "default-src 'none'",
    207        sourceFile: "example.js",
    208        sample: "<script>alert('1');</scr" + "ipt>",
    209        disposition: "enforce",
    210        statusCode: 200,
    211        // lineNumber: 1,
    212        columnNumber: 1,
    213      }).lineNumber, 0);
    214    }, "SecurityPolicyViolationEvent constructor does not require lineNumber");
    215 
    216    test(function() {
    217      assert_equals(new SecurityPolicyViolationEvent("securitypolicyviolation", {
    218        documentURI: "http://example.com",
    219        referrer: "http://example.com",
    220        blockedURI: "http://example.com",
    221        violatedDirective: "default-src",
    222        effectiveDirective: "default-src",
    223        originalPolicy: "default-src 'none'",
    224        sourceFile: "example.js",
    225        sample: "<script>alert('1');</scr" + "ipt>",
    226        disposition: "enforce",
    227        statusCode: 200,
    228        lineNumber: 1,
    229        // columnNumber: 1,
    230      }).columnNumber, 0);
    231    }, "SecurityPolicyViolationEvent constructor does not require columnNumber");
    232 </script>