| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 embedder = {}; | 5 var embedder = {}; |
| 6 embedder.tests = {}; | 6 embedder.tests = {}; |
| 7 embedder.baseGuestURL = ''; | 7 embedder.baseGuestURL = ''; |
| 8 embedder.guestURL = ''; | 8 embedder.guestURL = ''; |
| 9 | 9 |
| 10 // Sends a message to WebViewTest denoting it is done and test | 10 // Sends a message to WebViewTest denoting it is done and test |
| 11 // has failed. | 11 // has failed. |
| 12 embedder.failTest = function(msg) { | 12 embedder.failTest = function(msg) { |
| 13 window.console.log('test failure, reason: ' + msg); | 13 window.console.log('test failure, reason: ' + msg); |
| 14 chrome.test.sendMessage('TEST_FAILED'); | 14 chrome.test.sendMessage('TEST_FAILED'); |
| 15 }; | 15 }; |
| 16 | 16 |
| 17 // Sends a message to WebViewTest denoting it is done and test | 17 // Sends a message to WebViewTest denoting it is done and test |
| 18 // has succeeded. | 18 // has succeeded. |
| 19 embedder.maybePassTest = function() { | 19 embedder.maybePassTest = function() { |
| 20 window.console.log('test passed'); | |
| 21 chrome.test.sendMessage('TEST_PASSED'); | 20 chrome.test.sendMessage('TEST_PASSED'); |
| 22 }; | 21 }; |
| 23 | 22 |
| 24 /** @private */ | 23 /** @private */ |
| 25 embedder.setUpGuest_ = function() { | 24 embedder.setUpGuest_ = function() { |
| 26 document.querySelector('#webview-tag-container').innerHTML = | 25 document.querySelector('#webview-tag-container').innerHTML = |
| 27 '<webview style="width: 100px; height: 100px;"' + | 26 '<webview style="width: 100px; height: 100px;"' + |
| 28 ' src="' + embedder.guestURL + '"' + | 27 ' src="' + embedder.guestURL + '"' + |
| 29 '></webview>'; | 28 '></webview>'; |
| 30 var webview = document.querySelector('webview'); | 29 var webview = document.querySelector('webview'); |
| (...skipping 20 matching lines...) Expand all Loading... |
| 51 }; | 50 }; |
| 52 | 51 |
| 53 // The test loads a guest which requests media sources, which will in turn check | 52 // The test loads a guest which requests media sources, which will in turn check |
| 54 // for media access permission. | 53 // for media access permission. |
| 55 // | 54 // |
| 56 // Note that this is a manually run test, not using chrome.test.runTests. | 55 // Note that this is a manually run test, not using chrome.test.runTests. |
| 57 // This is because we want to wait for MockWebContestsDelegate to catch the | 56 // This is because we want to wait for MockWebContestsDelegate to catch the |
| 58 // media access check and not actually do a check. | 57 // media access check and not actually do a check. |
| 59 | 58 |
| 60 // Entry point for test, called by WebViewTest. | 59 // Entry point for test, called by WebViewTest. |
| 61 function startCheckTest(testName) { | 60 function runTest(testName) { |
| 62 chrome.test.getConfig(function(config) { | 61 chrome.test.getConfig(function(config) { |
| 63 embedder.baseGuestURL = 'http://localhost:' + config.testServer.port; | 62 embedder.baseGuestURL = 'http://localhost:' + config.testServer.port; |
| 64 embedder.guestURL = embedder.baseGuestURL + | 63 embedder.guestURL = embedder.baseGuestURL + '/media_check_guest.html'; |
| 65 '/extensions/platform_apps/web_view/media_access' + | |
| 66 '/media_check_guest.html'; | |
| 67 chrome.test.log('Guest url is: ' + embedder.guestURL); | 64 chrome.test.log('Guest url is: ' + embedder.guestURL); |
| 68 | 65 |
| 69 var webview = embedder.setUpGuest_(); | 66 var webview = embedder.setUpGuest_(); |
| 70 if (!webview) { | 67 if (!webview) { |
| 71 return; | 68 return; |
| 72 } | 69 } |
| 73 | 70 |
| 74 embedder.setUpLoadStop_(webview); | 71 embedder.setUpLoadStop_(webview); |
| 75 | 72 |
| 76 webview.addEventListener('consolemessage', function(e) { | 73 webview.addEventListener('consolemessage', function(e) { |
| 77 window.console.log(e.message); | 74 window.console.log(e.message); |
| 78 }); | 75 }); |
| 79 | 76 |
| 80 window.addEventListener('message', function(e) { | 77 window.addEventListener('message', function(e) { |
| 81 var data = JSON.parse(e.data); | 78 var data = JSON.parse(e.data); |
| 82 if (data[0] == 'got-sources') { | 79 if (data[0] == 'got-sources') { |
| 83 embedder.maybePassTest(); | 80 embedder.maybePassTest(); |
| 84 } else { | 81 } else { |
| 85 window.console.log('Unexpected message: ' + e.message); | 82 window.console.log('Unexpected message: ' + e.message); |
| 86 } | 83 } |
| 87 }); | 84 }); |
| 88 }); | 85 }); |
| 89 } | 86 } |
| 90 | 87 |
| 91 onload = function() { | 88 onload = function() { |
| 92 chrome.test.sendMessage('Launched'); | 89 chrome.test.sendMessage('LAUNCHED'); |
| 93 }; | 90 }; |
| OLD | NEW |