summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/fetch/orb/tentative/nosniff.sub.any.js
blob: d1e01fd87b5596c40d88b4ecd2ec54276b590967 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
// META: script=/fetch/orb/resources/utils.js

const path = "http://{{domains[www1]}}:{{ports[http][0]}}/fetch/orb/resources";

expected_block(
  `${path}/text.txt`,
  (orb_test, message) =>
    promise_test(
      t => orb_test(t, contentType("text/plain"), contentTypeOptions("nosniff")),
      message("ORB should block opaque text/plain with nosniff")));

expected_block(
  `${path}/data.json`,
  (orb_test, message) =>
    promise_test(
      t => orb_test(t, contentType("application/json"), contentTypeOptions("nosniff")),
      message("ORB should block opaque-response-blocklisted MIME type with nosniff")));

expected_block(
  `${path}/data.json`,
  (orb_test, message) =>
    promise_test(
      t => orb_test(t, contentTypeOptions("nosniff")),
      message("ORB should block opaque response with empty Content-Type and nosniff")));

expected_allow(
  `${path}/image.png`,
  (orb_test, message) =>
    promise_test(
      t => orb_test(t, contentType(""), contentType("text/javascript")),
      message("ORB shouldn't block opaque image with empty Content-Type and nosniff")),
  { skip: ["audio", "video", "script"] });