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

Side by Side Diff: chrome/test/data/extensions/platform_apps/web_view/shim/main.js

Issue 281833003: BrowserPluginHostTest: Rewrite 3 focus related tests and 1 visibility test to browser_tests. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase @tott, fix conflict Created 6 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 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 var util = {}; 5 var util = {};
6 var embedder = {}; 6 var embedder = {};
7 embedder.baseGuestURL = ''; 7 embedder.baseGuestURL = '';
8 embedder.emptyGuestURL = ''; 8 embedder.emptyGuestURL = '';
9 embedder.windowOpenGuestURL = ''; 9 embedder.windowOpenGuestURL = '';
10 embedder.noReferrerGuestURL = ''; 10 embedder.noReferrerGuestURL = '';
(...skipping 1025 matching lines...) Expand 10 before | Expand all | Expand 10 after
1036 webview.setAttribute('src', 'data:text/html,trigger navigation'); 1036 webview.setAttribute('src', 'data:text/html,trigger navigation');
1037 var firstLoad = function() { 1037 var firstLoad = function() {
1038 webview.removeEventListener('loadstop', firstLoad); 1038 webview.removeEventListener('loadstop', firstLoad);
1039 embedder.test.assertTrue(webview.getProcessId() > 0); 1039 embedder.test.assertTrue(webview.getProcessId() > 0);
1040 embedder.test.succeed(); 1040 embedder.test.succeed();
1041 }; 1041 };
1042 webview.addEventListener('loadstop', firstLoad); 1042 webview.addEventListener('loadstop', firstLoad);
1043 document.body.appendChild(webview); 1043 document.body.appendChild(webview);
1044 } 1044 }
1045 1045
1046 function testHiddenBeforeNavigation() {
1047 var webview = document.createElement('webview');
1048 webview.style.visibility = 'hidden';
1049
1050 var postMessageHandler = function(e) {
1051 var data = JSON.parse(e.data);
1052 window.removeEventListener('message', postMessageHandler);
1053 if (data[0] == 'visibilityState-response') {
1054 embedder.test.assertEq('hidden', data[1]);
1055 embedder.test.succeed();
1056 } else {
1057 LOG('Unexpected message: ' + data);
1058 embedder.test.fail();
1059 }
1060 };
1061
1062 webview.addEventListener('loadstop', function(e) {
1063 LOG('webview.loadstop');
1064 window.addEventListener('message', postMessageHandler);
1065 webview.addEventListener('consolemessage', function(e) {
1066 LOG('g: ' + e.message);
1067 });
1068
1069 webview.executeScript(
1070 {file: 'inject_hidden_test.js'},
1071 function(results) {
1072 if (!results || !results.length) {
1073 LOG('Failed to inject script: inject_hidden_test.js');
1074 embedder.test.fail();
1075 return;
1076 }
1077
1078 LOG('script injection success');
1079 webview.contentWindow.postMessage(
1080 JSON.stringify(['visibilityState-request']), '*');
1081 });
1082 });
1083
1084 webview.setAttribute('src', 'data:text/html,<html><body></body></html>');
1085 document.body.appendChild(webview);
1086 }
1087
1046 // This test verifies that the loadstart event fires at the beginning of a load 1088 // This test verifies that the loadstart event fires at the beginning of a load
1047 // and the loadredirect event fires when a redirect occurs. 1089 // and the loadredirect event fires when a redirect occurs.
1048 function testLoadStartLoadRedirect() { 1090 function testLoadStartLoadRedirect() {
1049 var webview = document.createElement('webview'); 1091 var webview = document.createElement('webview');
1050 var loadstartCalled = false; 1092 var loadstartCalled = false;
1051 webview.setAttribute('src', embedder.redirectGuestURL); 1093 webview.setAttribute('src', embedder.redirectGuestURL);
1052 webview.addEventListener('loadstart', function(e) { 1094 webview.addEventListener('loadstart', function(e) {
1053 embedder.test.assertTrue(e.isTopLevel); 1095 embedder.test.assertTrue(e.isTopLevel);
1054 embedder.test.assertEq(embedder.redirectGuestURL, e.url); 1096 embedder.test.assertEq(embedder.redirectGuestURL, e.url);
1055 loadstartCalled = true; 1097 loadstartCalled = true;
(...skipping 579 matching lines...) Expand 10 before | Expand all | Expand 10 after
1635 'testNewWindowTwoListeners': testNewWindowTwoListeners, 1677 'testNewWindowTwoListeners': testNewWindowTwoListeners,
1636 'testNewWindowNoPreventDefault': testNewWindowNoPreventDefault, 1678 'testNewWindowNoPreventDefault': testNewWindowNoPreventDefault,
1637 'testNewWindowNoReferrerLink': testNewWindowNoReferrerLink, 1679 'testNewWindowNoReferrerLink': testNewWindowNoReferrerLink,
1638 'testContentLoadEvent': testContentLoadEvent, 1680 'testContentLoadEvent': testContentLoadEvent,
1639 'testDeclarativeWebRequestAPI': testDeclarativeWebRequestAPI, 1681 'testDeclarativeWebRequestAPI': testDeclarativeWebRequestAPI,
1640 'testWebRequestAPI': testWebRequestAPI, 1682 'testWebRequestAPI': testWebRequestAPI,
1641 'testWebRequestAPIGoogleProperty': testWebRequestAPIGoogleProperty, 1683 'testWebRequestAPIGoogleProperty': testWebRequestAPIGoogleProperty,
1642 'testWebRequestListenerSurvivesReparenting': 1684 'testWebRequestListenerSurvivesReparenting':
1643 testWebRequestListenerSurvivesReparenting, 1685 testWebRequestListenerSurvivesReparenting,
1644 'testGetProcessId': testGetProcessId, 1686 'testGetProcessId': testGetProcessId,
1687 'testHiddenBeforeNavigation': testHiddenBeforeNavigation,
1645 'testLoadStartLoadRedirect': testLoadStartLoadRedirect, 1688 'testLoadStartLoadRedirect': testLoadStartLoadRedirect,
1646 'testLoadAbortChromeExtensionURLWrongPartition': 1689 'testLoadAbortChromeExtensionURLWrongPartition':
1647 testLoadAbortChromeExtensionURLWrongPartition, 1690 testLoadAbortChromeExtensionURLWrongPartition,
1648 'testLoadAbortEmptyResponse': testLoadAbortEmptyResponse, 1691 'testLoadAbortEmptyResponse': testLoadAbortEmptyResponse,
1649 'testLoadAbortIllegalChromeURL': testLoadAbortIllegalChromeURL, 1692 'testLoadAbortIllegalChromeURL': testLoadAbortIllegalChromeURL,
1650 'testLoadAbortIllegalFileURL': testLoadAbortIllegalFileURL, 1693 'testLoadAbortIllegalFileURL': testLoadAbortIllegalFileURL,
1651 'testLoadAbortIllegalJavaScriptURL': testLoadAbortIllegalJavaScriptURL, 1694 'testLoadAbortIllegalJavaScriptURL': testLoadAbortIllegalJavaScriptURL,
1652 'testLoadAbortInvalidNavigation': testLoadAbortInvalidNavigation, 1695 'testLoadAbortInvalidNavigation': testLoadAbortInvalidNavigation,
1653 'testLoadAbortNonWebSafeScheme': testLoadAbortNonWebSafeScheme, 1696 'testLoadAbortNonWebSafeScheme': testLoadAbortNonWebSafeScheme,
1654 'testNavigateAfterResize': testNavigateAfterResize, 1697 'testNavigateAfterResize': testNavigateAfterResize,
1655 'testNavigationToExternalProtocol': testNavigationToExternalProtocol, 1698 'testNavigationToExternalProtocol': testNavigationToExternalProtocol,
1656 'testReload': testReload, 1699 'testReload': testReload,
1657 'testRemoveWebviewOnExit': testRemoveWebviewOnExit, 1700 'testRemoveWebviewOnExit': testRemoveWebviewOnExit,
1658 'testRemoveWebviewAfterNavigation': testRemoveWebviewAfterNavigation, 1701 'testRemoveWebviewAfterNavigation': testRemoveWebviewAfterNavigation,
1659 'testResizeWebviewResizesContent': testResizeWebviewResizesContent, 1702 'testResizeWebviewResizesContent': testResizeWebviewResizesContent,
1660 'testPostMessageCommChannel': testPostMessageCommChannel, 1703 'testPostMessageCommChannel': testPostMessageCommChannel,
1661 'testScreenshotCapture' : testScreenshotCapture, 1704 'testScreenshotCapture' : testScreenshotCapture,
1662 'testZoomAPI' : testZoomAPI, 1705 'testZoomAPI' : testZoomAPI,
1663 'testFindAPI': testFindAPI, 1706 'testFindAPI': testFindAPI,
1664 'testFindAPI_findupdate': testFindAPI 1707 'testFindAPI_findupdate': testFindAPI
1665 }; 1708 };
1666 1709
1667 onload = function() { 1710 onload = function() {
1668 chrome.test.getConfig(function(config) { 1711 chrome.test.getConfig(function(config) {
1669 embedder.setUp_(config); 1712 embedder.setUp_(config);
1670 chrome.test.sendMessage("Launched"); 1713 chrome.test.sendMessage("Launched");
1671 }); 1714 });
1672 }; 1715 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698