OLD | NEW |
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 1060 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1071 return; | 1071 return; |
1072 } | 1072 } |
1073 console.log('Unexpected message: \'' + data[0] + '\''); | 1073 console.log('Unexpected message: \'' + data[0] + '\''); |
1074 embedder.test.fail(); | 1074 embedder.test.fail(); |
1075 }); | 1075 }); |
1076 | 1076 |
1077 webview.src = embedder.emptyGuestURL; | 1077 webview.src = embedder.emptyGuestURL; |
1078 document.body.appendChild(webview); | 1078 document.body.appendChild(webview); |
1079 } | 1079 } |
1080 | 1080 |
| 1081 function testAddContentScriptWithCode() { |
| 1082 var webview = document.createElement('webview'); |
| 1083 |
| 1084 console.log("Step 1: call <webview>.addContentScripts."); |
| 1085 webview.addContentScripts( |
| 1086 [{"name": 'myrule', |
| 1087 "matches": ["http://*/extensions/*"], |
| 1088 "code": ["document.body.style.backgroundColor = \"red\";"], |
| 1089 "run_at": "document_end"}]); |
| 1090 |
| 1091 webview.addEventListener('loadstop', function() { |
| 1092 console.log('Step 2: call webview.executeScript() to check result.') |
| 1093 webview.executeScript({ |
| 1094 code: "document.body.style.backgroundColor;"}, |
| 1095 function(results) { |
| 1096 embedder.test.assertEq(1, results.length); |
| 1097 embedder.test.assertEq('red', results[0]); |
| 1098 embedder.test.succeed(); |
| 1099 }); |
| 1100 }); |
| 1101 |
| 1102 webview.src = embedder.emptyGuestURL; |
| 1103 document.body.appendChild(webview); |
| 1104 } |
| 1105 |
1081 function testExecuteScriptFail() { | 1106 function testExecuteScriptFail() { |
1082 var webview = document.createElement('webview'); | 1107 var webview = document.createElement('webview'); |
1083 document.body.appendChild(webview); | 1108 document.body.appendChild(webview); |
1084 setTimeout(function() { | 1109 setTimeout(function() { |
1085 webview.executeScript( | 1110 webview.executeScript( |
1086 {code:'document.body.style.backgroundColor = "red";'}, | 1111 {code:'document.body.style.backgroundColor = "red";'}, |
1087 function(results) { | 1112 function(results) { |
1088 embedder.test.fail(); | 1113 embedder.test.fail(); |
1089 }); | 1114 }); |
1090 setTimeout(function() { | 1115 setTimeout(function() { |
(...skipping 1464 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2555 'testAddMultipleContentScripts': testAddMultipleContentScripts, | 2580 'testAddMultipleContentScripts': testAddMultipleContentScripts, |
2556 'testAddContentScriptWithSameNameShouldOverwriteTheExistingOne': | 2581 'testAddContentScriptWithSameNameShouldOverwriteTheExistingOne': |
2557 testAddContentScriptWithSameNameShouldOverwriteTheExistingOne, | 2582 testAddContentScriptWithSameNameShouldOverwriteTheExistingOne, |
2558 'testAddContentScriptToOneWebViewShouldNotInjectToTheOtherWebView': | 2583 'testAddContentScriptToOneWebViewShouldNotInjectToTheOtherWebView': |
2559 testAddContentScriptToOneWebViewShouldNotInjectToTheOtherWebView, | 2584 testAddContentScriptToOneWebViewShouldNotInjectToTheOtherWebView, |
2560 'testAddAndRemoveContentScripts': testAddAndRemoveContentScripts, | 2585 'testAddAndRemoveContentScripts': testAddAndRemoveContentScripts, |
2561 'testAddContentScriptsWithNewWindowAPI': | 2586 'testAddContentScriptsWithNewWindowAPI': |
2562 testAddContentScriptsWithNewWindowAPI, | 2587 testAddContentScriptsWithNewWindowAPI, |
2563 'testContentScriptIsInjectedAfterTerminateAndReloadWebView': | 2588 'testContentScriptIsInjectedAfterTerminateAndReloadWebView': |
2564 testContentScriptIsInjectedAfterTerminateAndReloadWebView, | 2589 testContentScriptIsInjectedAfterTerminateAndReloadWebView, |
| 2590 'testAddContentScriptWithCode': testAddContentScriptWithCode, |
2565 'testExecuteScriptFail': testExecuteScriptFail, | 2591 'testExecuteScriptFail': testExecuteScriptFail, |
2566 'testExecuteScript': testExecuteScript, | 2592 'testExecuteScript': testExecuteScript, |
2567 'testExecuteScriptIsAbortedWhenWebViewSourceIsChanged': | 2593 'testExecuteScriptIsAbortedWhenWebViewSourceIsChanged': |
2568 testExecuteScriptIsAbortedWhenWebViewSourceIsChanged, | 2594 testExecuteScriptIsAbortedWhenWebViewSourceIsChanged, |
2569 'testTerminateAfterExit': testTerminateAfterExit, | 2595 'testTerminateAfterExit': testTerminateAfterExit, |
2570 'testAssignSrcAfterCrash': testAssignSrcAfterCrash, | 2596 'testAssignSrcAfterCrash': testAssignSrcAfterCrash, |
2571 'testNavOnConsecutiveSrcAttributeChanges': | 2597 'testNavOnConsecutiveSrcAttributeChanges': |
2572 testNavOnConsecutiveSrcAttributeChanges, | 2598 testNavOnConsecutiveSrcAttributeChanges, |
2573 'testNavOnSrcAttributeChange': testNavOnSrcAttributeChange, | 2599 'testNavOnSrcAttributeChange': testNavOnSrcAttributeChange, |
2574 'testReassignSrcAttribute': testReassignSrcAttribute, | 2600 'testReassignSrcAttribute': testReassignSrcAttribute, |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2621 'testPerViewZoomMode': testPerViewZoomMode, | 2647 'testPerViewZoomMode': testPerViewZoomMode, |
2622 'testDisabledZoomMode': testDisabledZoomMode, | 2648 'testDisabledZoomMode': testDisabledZoomMode, |
2623 }; | 2649 }; |
2624 | 2650 |
2625 onload = function() { | 2651 onload = function() { |
2626 chrome.test.getConfig(function(config) { | 2652 chrome.test.getConfig(function(config) { |
2627 embedder.setUp_(config); | 2653 embedder.setUp_(config); |
2628 chrome.test.sendMessage("Launched"); | 2654 chrome.test.sendMessage("Launched"); |
2629 }); | 2655 }); |
2630 }; | 2656 }; |
OLD | NEW |