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

Unified Diff: chrome/test/data/extensions/api_test/extension_options/embed_self/options.js

Issue 378783002: Initial implementation of the <extensionoptions> GuestView tag (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Improve test structure Created 6 years, 5 months 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 side-by-side diff with in-line comments
Download patch
Index: chrome/test/data/extensions/api_test/extension_options/embed_self/options.js
diff --git a/chrome/test/data/extensions/api_test/extension_options/embed_self/options.js b/chrome/test/data/extensions/api_test/extension_options/embed_self/options.js
new file mode 100644
index 0000000000000000000000000000000000000000..04ecdfe55da8eba217bf2feaa48f71154acf5550
--- /dev/null
+++ b/chrome/test/data/extensions/api_test/extension_options/embed_self/options.js
@@ -0,0 +1,34 @@
+// Copyright 2014 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.
+
+// This script is opened inside a <extensionoptions> guest view. When opened,
+// it sends a message back to the test page, which responds with which test case
+// it is running. The options page then runs the appropriate code for the
+// specified test case.
+chrome.runtime.sendMessage('ready', function(command) {
+ switch(command) {
+ case 'canCreateExtensionOptionsGuest':
+ // To confirm that the guest view has been successfully created,
+ // {pass: true} is added to every extension Window and broadcasts a
+ // message to the extension using runtime.sendMessage().
+ chrome.extension.getViews().forEach(function(view) {
+ view.pass = true;
+ });
+ chrome.runtime.sendMessage('hi');
not at google - send to devlin 2014/07/19 01:37:09 break;
ericzeng 2014/07/19 03:44:25 Done.
+ case 'guestCanAccessStorage':
+ // To test access to privileged APIs, the guest attempts to write to local
+ // storage, and both the embedder and guest check if the write succeeded.
+ var passed = chrome.test.callbackPass;
+
+ chrome.test.listenOnce(chrome.storage.onChanged, function(change) {
+ chrome.test.assertEq(42, change.test.newValue);
+ });
+
+ chrome.storage.local.set({'test': 42}, passed(function() {
+ chrome.storage.local.get('test', passed(function(storage) {
+ chrome.test.assertEq(42, storage.test);
+ }));
+ }));
+ }
+});

Powered by Google App Engine
This is Rietveld 408576698