| Index: third_party/WebKit/LayoutTests/http/tests/feature-policy/fullscreen-enabledforself.php
|
| diff --git a/third_party/WebKit/LayoutTests/http/tests/feature-policy/fullscreen-enabledforself.php b/third_party/WebKit/LayoutTests/http/tests/feature-policy/fullscreen-enabledforself.php
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..422961320880aca98568ca6cfd8f5625acd88637
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/http/tests/feature-policy/fullscreen-enabledforself.php
|
| @@ -0,0 +1,49 @@
|
| +<?php
|
| +// Copyright 2016 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +// This test ensures that fullscreen feature when enabled for self only works
|
| +// in the same orgin but not cross origins when allowfullscreen is set. No
|
| +// iframe may call it when allowfullscreen is not set.
|
| +
|
| +Header("Feature-Policy: {\"fullscreen\": [\"self\"]}");
|
| +?>
|
| +
|
| +<!DOCTYPE html>
|
| +<script src="../../resources/testharness.js"></script>
|
| +<script src="../../resources/testharnessreport.js"></script>
|
| +<iframe id="f1"></iframe>
|
| +<iframe id="f2" allowfullscreen></iframe>
|
| +<script>
|
| +var srcs = [
|
| + "resources/feature-policy-fullscreen.html",
|
| + "http://localhost:8000/feature-policy/resources/feature-policy-fullscreen.html"
|
| +];
|
| +var f1 = document.getElementById('f1');
|
| +var f2 = document.getElementById('f2');
|
| +
|
| +function loadFrames(iframe) {
|
| + for (var src of srcs) {
|
| + promise_test(function(t) {
|
| + iframe.src = src;
|
| + return new Promise(function(resolve, reject) {
|
| + window.addEventListener('message', function(e) {
|
| + resolve(e.data);
|
| + }, { once: true });
|
| + }).then(function(data) {
|
| + if (src === srcs[0] || iframe.id === "f2") {
|
| + assert_true(data.enabled, 'Document.fullscreenEnabled:');
|
| + assert_equals(data.type, 'change', 'Document.requestFullscreen():');
|
| + } else {
|
| + assert_false(data.enabled, 'Document.fullscreenEnabled:');
|
| + assert_equals(data.type, 'error', 'Document.requestFullscreen():');
|
| + }
|
| + });
|
| + }, 'Fullscreen enabled for self on URL: ' + src + ' with allowfullscreen = ' + iframe.allowFullscreen);
|
| + }
|
| +}
|
| +
|
| +loadFrames(f1);
|
| +loadFrames(f2);
|
| +</script>
|
|
|