1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 config.IS_CHROME_TEST = true;
7 config.IS_JS_ONLY_GUEST = true;
8 config.TEST_DIR = 'speech_recognition_api_no_permission';
13 var LOG = function(msg) {
14 window.console.log(msg);
17 var startTest = function() {
18 var container = document.createElement('div');
19 container.id = 'webview-tag-container';
20 document.body.appendChild(container);
22 chrome.test.getConfig(function(chromeConfig) {
23 LOG('getConfig: ' + chromeConfig);
24 utils.setUp(chromeConfig, config);
25 embedder.loadGuest(function() {
26 LOG('loadGuest done, start Running test');
27 chrome.test.runTests([
28 speechTests.testAllow,
32 if (data[0] != 'recognition') {
36 LOG('embedder.onPostMessageReceived: ' + data[1]);
48 return /* handled */ true;
54 var onPermissionRequest = function(e) {
55 LOG('onPermissionRequest');
56 utils.test.assertEq('media', e.permission);
64 speechTests.testHelper_ = function(expectSpeech, allowRequest) {
65 g_allowRequest = allowRequest;
66 embedder.webview.addEventListener(
67 'permissionrequest', onPermissionRequest);
68 embedder.webview.contentWindow.postMessage(
69 JSON.stringify(['runSpeechRecognitionAPI']), '*');
73 speechTests.testAllow = function testAllow() {
74 speechTests.testHelper_(false /* expectSpeech */, true /* allowRequest */);
77 speechTests.testDeny = function testDeny() {
78 speechTests.testHelper_(false /* expectSpeech */, false /* allowRequest */);