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

Unified Diff: chrome/test/data/extensions/api_test/management/management_policy/prohibited.js

Issue 9694038: OBSOLETE REVIEW. See http://codereview.chromium.org/10382149/ (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 7 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/management/management_policy/prohibited.js
===================================================================
--- chrome/test/data/extensions/api_test/management/management_policy/prohibited.js (revision 0)
+++ chrome/test/data/extensions/api_test/management/management_policy/prohibited.js (revision 0)
@@ -0,0 +1,71 @@
+// Copyright (c) 2012 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 callback = chrome.test.callback;
+
+// The names of the extensions to operate on, from their manifest.json files.
+var ENABLED_NAME = 'enabled_extension';
+var DISABLED_NAME = 'disabled_extension';
+var UNINSTALL_NAME = 'enabled_extension';
+
+function findByName(items, name) {
+ var item;
+ for (var i = 0; i < items.length; i++) {
+ item = items[i];
+ if (item.name == name)
+ break;
+ }
+ if (name != item.name)
+ chrome.test.fail('Couldn\'t find installed extension ' + name);
+ return item;
+}
+
+function checkEnabled(id, enabled) {
+ chrome.management.get(id, callback(function(result) {
+ chrome.test.assertEq(enabled, result.enabled);
+ }));
+}
+
+var tests = [
+ function prohibitedDisable() {
+ chrome.management.getAll(callback(function(items) {
+ var item = findByName(items, ENABLED_NAME);
+ chrome.test.assertEq(false, item.mayDisable);
+ chrome.test.assertEq(true, item.enabled);
+
+ var id = item.id;
+ var expectedError = 'Extension ' + id + ' can not be disabled by user';
+ chrome.management.setEnabled(id, false,
+ callback(function() { checkEnabled(id, true); }, expectedError));
+ }));
+ },
+
+ function prohibitedEnable() {
+ chrome.management.getAll(callback(function(items) {
+ var item = findByName(items, DISABLED_NAME);
+ chrome.test.assertEq(false, item.mayDisable);
+ chrome.test.assertEq(false, item.enabled);
+
+ var id = item.id;
+ var expectedError = 'Extension ' + id + ' can not be modified by user';
+ chrome.management.setEnabled(id, true,
+ callback(function() { checkEnabled(id, false); }, expectedError));
+ }));
+ },
+
+ function prohibitedUninstall() {
+ chrome.management.getAll(callback(function(items) {
+ var item = findByName(items, UNINSTALL_NAME);
+ chrome.test.assertEq(false, item.mayDisable);
+
+ var id = item.id;
+ var expectedError = 'Extension ' + id + ' can not be disabled by user';
+ chrome.management.uninstall(id,
+ callback(function() { checkEnabled(id, true); }, expectedError));
+ }));
+ }
+];
+
+chrome.test.runTests(tests);
+
Property changes on: chrome\test\data\extensions\api_test\management\management_policy\prohibited.js
___________________________________________________________________
Added: svn:eol-style
+ LF

Powered by Google App Engine
This is Rietveld 408576698