Index: chrome/test/data/extensions/platform_apps/windows_api_ime/has_permissions_whitelisted/background.js |
diff --git a/chrome/test/data/extensions/platform_apps/windows_api_ime/has_permissions_whitelisted/background.js b/chrome/test/data/extensions/platform_apps/windows_api_ime/has_permissions_whitelisted/background.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..6aaf9170904e9c0bdbc7e7bb5d450ccc67b3215f |
--- /dev/null |
+++ b/chrome/test/data/extensions/platform_apps/windows_api_ime/has_permissions_whitelisted/background.js |
@@ -0,0 +1,45 @@ |
+// 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. |
+ |
+var error = "IME extensions must create window with \"ime: true\" and " + |
+"\"frame: 'none'\"."; |
+ |
+function testImeEnabled(createOptions) { |
+ if (createOptions.frame == 'none' && createOptions.ime) { |
+ chrome.app.window.create('index.html', |
+ createOptions, |
+ chrome.test.callbackPass(function(win) {})); |
+ } else { |
+ chrome.app.window.create('index.html', |
+ createOptions, |
+ chrome.test.callbackFail(error)); |
+ } |
+} |
+ |
+// All these tests are run with app.window.ime permission set and on a system |
+// with ime window support. |
+chrome.test.runTests([ |
+ |
+ // Window is created with ime set to true and frame set to none. |
+ // Expect pass. |
+ function testImeEnabledPermissionImeTrueFrameNone() { |
+ testImeEnabled({ ime: true, frame: 'none' }); |
+ }, |
+ |
+ // Window is created with ime set to false or frame not set. |
+ // Expect fail. |
+ function testImeEnabledPermissionImeInitFalse() { |
+ testImeEnabled({ ime: false, frame: 'none' }); |
+ testImeEnabled({ ime: false }); |
+ testImeEnabled({ ime: true }); |
+ }, |
+ |
+ // Window is created with ime not explicitly set. |
+ // Expect fail. |
+ function testImeEnabledPermissonImeNoInit() { |
+ testImeEnabled({ frame: 'none' }); |
+ testImeEnabled({}); |
+ } |
+ |
+]); |