Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(371)

Side by Side Diff: third_party/WebKit/LayoutTests/http/tests/feature-policy/fullscreen-enabledforself.php

Issue 2855133004: Re-enable feature policy layout tests after bug fix. (Closed)
Patch Set: Rebased FlagExpectations/site-per-process Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <?php 1 <?php
2 // Copyright 2016 The Chromium Authors. All rights reserved. 2 // Copyright 2016 The Chromium Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be 3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file. 4 // found in the LICENSE file.
5 5
6 // This test ensures that fullscreen feature when enabled for self only works 6 // This test ensures that fullscreen feature when enabled for self only works
7 // in the same orgin but not cross origins when allowfullscreen is set. No 7 // in the same orgin but not cross origins when allowfullscreen is set. No
8 // iframe may call it when allowfullscreen is not set. 8 // iframe may call it when allowfullscreen is not set.
9 9
10 Header("Feature-Policy: {\"fullscreen\": [\"self\"]}"); 10 Header("Feature-Policy: {\"fullscreen\": [\"self\"]}");
11 ?> 11 ?>
12 12
13 <!DOCTYPE html> 13 <!DOCTYPE html>
14 <script src="../../resources/testharness.js"></script> 14 <script src="../../resources/testharness.js"></script>
15 <script src="../../resources/testharnessreport.js"></script> 15 <script src="../../resources/testharnessreport.js"></script>
16 <iframe id="f1"></iframe> 16 <iframe></iframe>
17 <iframe id="f2" allowfullscreen></iframe> 17 <iframe allowfullscreen></iframe>
18 <script> 18 <script>
19 var srcs = [ 19 var srcs = [
20 "resources/feature-policy-fullscreen.html", 20 "resources/feature-policy-fullscreen.html",
21 "http://localhost:8000/feature-policy/resources/feature-policy-fullscreen.html " 21 "http://localhost:8000/feature-policy/resources/feature-policy-fullscreen.html "
22 ]; 22 ];
23 var f1 = document.getElementById('f1');
24 var f2 = document.getElementById('f2');
25 23
26 function loadFrames(iframe) { 24 function loadFrame(iframe, src) {
27 for (var src of srcs) { 25 var allowfullscreen = iframe.allowFullscreen;
28 promise_test(function(t) { 26 promise_test(function() {
29 iframe.src = src; 27 iframe.src = src;
30 return new Promise(function(resolve, reject) { 28 return new Promise(function(resolve, reject) {
31 window.addEventListener('message', function(e) { 29 window.addEventListener('message', function(e) {
32 resolve(e.data); 30 resolve(e.data);
33 }, { once: true }); 31 }, { once: true });
34 }).then(function(data) { 32 }).then(function(data) {
35 if (src === srcs[0] || iframe.id === "f2") { 33 // fullscreen is enabled if:
36 assert_true(data.enabled, 'Document.fullscreenEnabled:'); 34 // a. same origin; or
37 assert_equals(data.type, 'change', 'Document.requestFullscreen():'); 35 // b. enabled by allowfullscreen.
38 } else { 36 if (src === srcs[0] || allowfullscreen) {
39 assert_false(data.enabled, 'Document.fullscreenEnabled:'); 37 assert_true(data.enabled, 'Document.fullscreenEnabled:');
40 assert_equals(data.type, 'error', 'Document.requestFullscreen():'); 38 assert_equals(data.type, 'change', 'Document.requestFullscreen():');
41 } 39 } else {
42 }); 40 assert_false(data.enabled, 'Document.fullscreenEnabled:');
43 }, 'Fullscreen enabled for self on URL: ' + src + ' with allowfullscreen = ' + iframe.allowFullscreen); 41 assert_equals(data.type, 'error', 'Document.requestFullscreen():');
42 }
43 });
44 }, 'Fullscreen enabled for self on URL: ' + src + ' with allowfullscreen = ' +
45 allowfullscreen);
46 }
47
48 window.onload = function() {
49 var iframes = document.getElementsByTagName('iframe');
50 for (var iframe of iframes) {
51 for (var src of srcs) {
52 loadFrame(iframe, src);
53 }
44 } 54 }
45 } 55 }
46
47 loadFrames(f1);
48 loadFrames(f2);
49 </script> 56 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698