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

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

Issue 78303005: ContentSettings API should not interact with <webview> (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removed unnecessary churn Created 7 years 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 1138 matching lines...) Expand 10 before | Expand all | Expand 10 after
1149 }); 1149 });
1150 webview.executeScript({ 1150 webview.executeScript({
1151 code: 'window.location.href = "tel:+12223334444";' 1151 code: 'window.location.href = "tel:+12223334444";'
1152 }, function(results) {}); 1152 }, function(results) {});
1153 }); 1153 });
1154 webview.setAttribute('src', 'data:text/html,navigate to external protocol'); 1154 webview.setAttribute('src', 'data:text/html,navigate to external protocol');
1155 document.body.appendChild(webview); 1155 document.body.appendChild(webview);
1156 } 1156 }
1157 1157
1158 function testResizeWebviewResizesContent() { 1158 function testResizeWebviewResizesContent() {
1159 var triggerNavUrl = 'data:text/html,trigger navigation';
1160 var webview = new WebView(); 1159 var webview = new WebView();
1161 webview.src = triggerNavUrl; 1160 webview.src = 'about:blank';
1162 webview.addEventListener('loadstop', function(e) { 1161 webview.addEventListener('loadstop', function(e) {
1163 webview.executeScript( 1162 webview.executeScript(
1164 {file: 'inject_resize_test.js'}, 1163 {file: 'inject_resize_test.js'},
1165 function(results) { 1164 function(results) {
1166 console.log('Script has been injected into webview.'); 1165 window.console.log('The resize test has been injected into webview.');
1166 }
1167 );
1168 webview.executeScript(
1169 {file: 'inject_comm_channel.js'},
1170 function(results) {
1171 window.console.log('The guest script for a two-way comm channel has ' +
1172 'been injected into webview.');
1167 // Establish a communication channel with the guest. 1173 // Establish a communication channel with the guest.
1168 var msg = ['connect']; 1174 var msg = ['connect'];
1169 webview.contentWindow.postMessage(JSON.stringify(msg), '*'); 1175 webview.contentWindow.postMessage(JSON.stringify(msg), '*');
1170 } 1176 }
1171 ); 1177 );
1172 }); 1178 });
1173 window.addEventListener('message', function(e) { 1179 window.addEventListener('message', function(e) {
1174 var data = JSON.parse(e.data); 1180 var data = JSON.parse(e.data);
1175 if (data[0] == 'connected') { 1181 if (data[0] == 'connected') {
1176 console.log('A communication channel has been established with webview.'); 1182 console.log('A communication channel has been established with webview.');
1177 console.log('Resizing <webview> width from 300px to 400px.'); 1183 console.log('Resizing <webview> width from 300px to 400px.');
1178 webview.style.width = '400px'; 1184 webview.style.width = '400px';
1179 return; 1185 return;
1180 } 1186 }
1181 if (data[0] == 'resize') { 1187 if (data[0] == 'resize') {
1182 var width = data[1]; 1188 var width = data[1];
1183 var height = data[2]; 1189 var height = data[2];
1184 embedder.test.assertEq(400, width); 1190 embedder.test.assertEq(400, width);
1185 embedder.test.assertEq(300, height); 1191 embedder.test.assertEq(300, height);
1186 embedder.test.succeed(); 1192 embedder.test.succeed();
1187 return; 1193 return;
1188 } 1194 }
1189 console.log('Unexpected message: \'' + data[0] + '\''); 1195 console.log('Unexpected message: \'' + data[0] + '\'');
1190 embedder.test.fail(); 1196 embedder.test.fail();
1191 }); 1197 });
1192 document.body.appendChild(webview); 1198 document.body.appendChild(webview);
1193 } 1199 }
1194 1200
1201 function testPostMessageCommChannel() {
1202 var webview = new WebView();
1203 webview.src = 'about:blank';
1204 webview.addEventListener('loadstop', function(e) {
1205 webview.executeScript(
1206 {file: 'inject_comm_channel.js'},
1207 function(results) {
1208 window.console.log('The guest script for a two-way comm channel has ' +
1209 'been injected into webview.');
1210 // Establish a communication channel with the guest.
1211 var msg = ['connect'];
1212 webview.contentWindow.postMessage(JSON.stringify(msg), '*');
1213 }
1214 );
1215 });
1216 window.addEventListener('message', function(e) {
1217 var data = JSON.parse(e.data);
1218 if (data[0] == 'connected') {
1219 console.log('A communication channel has been established with webview.');
1220 embedder.test.succeed();
1221 return;
1222 }
1223 console.log('Unexpected message: \'' + data[0] + '\'');
1224 embedder.test.fail();
1225 });
1226 document.body.appendChild(webview);
1227 }
1228
1229
1195 embedder.test.testList = { 1230 embedder.test.testList = {
1196 'testAutosizeAfterNavigation': testAutosizeAfterNavigation, 1231 'testAutosizeAfterNavigation': testAutosizeAfterNavigation,
1197 'testAutosizeBeforeNavigation': testAutosizeBeforeNavigation, 1232 'testAutosizeBeforeNavigation': testAutosizeBeforeNavigation,
1198 'testAutosizeRemoveAttributes': testAutosizeRemoveAttributes, 1233 'testAutosizeRemoveAttributes': testAutosizeRemoveAttributes,
1199 'testAutosizeWithPartialAttributes': testAutosizeWithPartialAttributes, 1234 'testAutosizeWithPartialAttributes': testAutosizeWithPartialAttributes,
1200 'testAPIMethodExistence': testAPIMethodExistence, 1235 'testAPIMethodExistence': testAPIMethodExistence,
1201 'testChromeExtensionURL': testChromeExtensionURL, 1236 'testChromeExtensionURL': testChromeExtensionURL,
1202 'testChromeExtensionRelativePath': testChromeExtensionRelativePath, 1237 'testChromeExtensionRelativePath': testChromeExtensionRelativePath,
1203 'testInvalidChromeExtensionURL': testInvalidChromeExtensionURL, 1238 'testInvalidChromeExtensionURL': testInvalidChromeExtensionURL,
1204 'testWebRequestAPIExistence': testWebRequestAPIExistence, 1239 'testWebRequestAPIExistence': testWebRequestAPIExistence,
(...skipping 29 matching lines...) Expand all
1234 'testLoadAbortChromeExtensionURLWrongPartition': 1269 'testLoadAbortChromeExtensionURLWrongPartition':
1235 testLoadAbortChromeExtensionURLWrongPartition, 1270 testLoadAbortChromeExtensionURLWrongPartition,
1236 'testLoadAbortEmptyResponse': testLoadAbortEmptyResponse, 1271 'testLoadAbortEmptyResponse': testLoadAbortEmptyResponse,
1237 'testLoadAbortIllegalChromeURL': testLoadAbortIllegalChromeURL, 1272 'testLoadAbortIllegalChromeURL': testLoadAbortIllegalChromeURL,
1238 'testLoadAbortIllegalFileURL': testLoadAbortIllegalFileURL, 1273 'testLoadAbortIllegalFileURL': testLoadAbortIllegalFileURL,
1239 'testLoadAbortIllegalJavaScriptURL': testLoadAbortIllegalJavaScriptURL, 1274 'testLoadAbortIllegalJavaScriptURL': testLoadAbortIllegalJavaScriptURL,
1240 'testNavigationToExternalProtocol': testNavigationToExternalProtocol, 1275 'testNavigationToExternalProtocol': testNavigationToExternalProtocol,
1241 'testReload': testReload, 1276 'testReload': testReload,
1242 'testRemoveWebviewOnExit': testRemoveWebviewOnExit, 1277 'testRemoveWebviewOnExit': testRemoveWebviewOnExit,
1243 'testRemoveWebviewAfterNavigation': testRemoveWebviewAfterNavigation, 1278 'testRemoveWebviewAfterNavigation': testRemoveWebviewAfterNavigation,
1244 'testResizeWebviewResizesContent': testResizeWebviewResizesContent 1279 'testResizeWebviewResizesContent': testResizeWebviewResizesContent,
1280 'testPostMessageCommChannel': testPostMessageCommChannel
1245 }; 1281 };
1246 1282
1247 onload = function() { 1283 onload = function() {
1248 chrome.test.getConfig(function(config) { 1284 chrome.test.getConfig(function(config) {
1249 embedder.setUp_(config); 1285 embedder.setUp_(config);
1250 chrome.test.sendMessage("Launched"); 1286 chrome.test.sendMessage("Launched");
1251 }); 1287 });
1252 }; 1288 };
OLDNEW
« no previous file with comments | « chrome/test/data/extensions/platform_apps/web_view/shim/inject_resize_test.js ('k') | content/public/common/url_constants.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698