| Index: chrome/test/data/extensions/api_test/tabs/basics/audible.js
|
| diff --git a/chrome/test/data/extensions/api_test/tabs/basics/audible.js b/chrome/test/data/extensions/api_test/tabs/basics/audible.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..4b7ff9c0d63d053a29e39c773b9059752cd119ed
|
| --- /dev/null
|
| +++ b/chrome/test/data/extensions/api_test/tabs/basics/audible.js
|
| @@ -0,0 +1,66 @@
|
| +// Copyright (c) 2015 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +var testTabId_;
|
| +
|
| +function injectScriptIntoOnlyTab(filename) {
|
| + var views = chrome.extension.getViews({type: "tab"});
|
| + assertEq(1, views.length);
|
| + var scriptElem = views[0].document.createElement("script");
|
| + scriptElem.type = "text/javascript";
|
| + scriptElem.src = filename;
|
| + views[0].document.body.appendChild(scriptElem);
|
| +}
|
| +
|
| +chrome.test.runTests([
|
| + function setupWindow() {
|
| + chrome.tabs.getCurrent(pass(function(tab) {
|
| + testTabId_ = tab.id;
|
| + }));
|
| + },
|
| +
|
| + function audibleStartsFalse() {
|
| + chrome.tabs.get(testTabId_, pass(function(tab) {
|
| + assertEq(false, tab.audible);
|
| + checkQuery(testTabId_, "audible", false, true, null);
|
| + checkQuery(testTabId_, "audible", true, false, null);
|
| + }));
|
| + },
|
| +
|
| + function audibleUpdateAttemptShouldFail() {
|
| + var error_msg = "Invalid value for argument 2. Property 'audible': " +
|
| + "Unexpected property.";
|
| +
|
| + try
|
| + {
|
| + chrome.tabs.update(testTabId_, {audible: true}, function(tab) {
|
| + chrome.test.fail("Updated audible property via chrome.tabs.update");
|
| + });
|
| + } catch (e)
|
| + {
|
| + assertEq(error_msg, e.message);
|
| + chrome.test.succeed();
|
| + }
|
| + },
|
| +
|
| + function makeAudible() {
|
| + onUpdatedExpect("audible", true, null);
|
| + injectScriptIntoOnlyTab("sinewave.js");
|
| + },
|
| +
|
| + function testStaysAudibleAfterChangingWindow() {
|
| + chrome.windows.create({}, pass(function(window)
|
| + {
|
| + chrome.tabs.move(testTabId_, {windowId: window.id, index: -1},
|
| + pass(function(tab) {
|
| + assertEq(true, tab.audible);
|
| + }));
|
| + }));
|
| + },
|
| +
|
| + function makeNotAudible() {
|
| + onUpdatedExpect("audible", false, null);
|
| + injectScriptIntoOnlyTab("disable_sinewave.js");
|
| + }
|
| +]);
|
|
|