blob: 9fdafb2ccf04bf2808e3399d64c83a131c8648d2 [file] [log] [blame]
<!DOCTYPE html>
<script src="/resources/testharness.js" ></script>
<script src="/resources/testharnessreport.js"></script>
<script src="support/helper.sub.js"></script>
<meta http-equiv="Content-Security-Policy"
content="trusted-types SomeName SomeOtherName">
<body>
<script>
// Policy name test
test(t => {
let policy = trustedTypes.createPolicy('SomeName', {} );
assert_true(policy instanceof TrustedTypePolicy);
assert_equals(policy.name, 'SomeName');
}, "policy.name = name");
// Duplicate names test
test(t => {
assert_throws_js(TypeError, _ => {
trustedTypes.createPolicy('SomeName', {} );
});
}, "duplicate policy name attempt throws");
// Check error messages.
test(t => {
try {
trustedTypes.createPolicy("unknown name", {});
} catch (e) {
assert_true(e.toString().includes("disallowed"));
assert_false(e.toString().includes("already exists"));
}
try {
trustedTypes.createPolicy("SomeName", {});
} catch (e) {
assert_false(e.toString().includes("disallowed"));
assert_true(e.toString().includes("already exists"));
}
}, "Error messages for duplicates and unlisted policies should be different");
</script>