diff options
author | joaodasilva@chromium.org <joaodasilva@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-13 09:57:21 +0000 |
---|---|---|
committer | joaodasilva@chromium.org <joaodasilva@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-13 09:57:21 +0000 |
commit | 9d25f372972dc5ac24028c053e79c42d9df2795d (patch) | |
tree | cf1933fb5cb1d4fabe7190d8cc3780e815d1e81f /chrome/test | |
parent | b4bd05478c5e4475d4cc91d05825094f931799e2 (diff) | |
download | chromium_src-9d25f372972dc5ac24028c053e79c42d9df2795d.zip chromium_src-9d25f372972dc5ac24028c053e79c42d9df2795d.tar.gz chromium_src-9d25f372972dc5ac24028c053e79c42d9df2795d.tar.bz2 |
Bookmarks extension API checks if editing is allowed.
BUG=49604
TEST=Set the EditBookmarksEnabled preference to false, and extensions won't be able to modify bookmarks.
Review URL: http://codereview.chromium.org/6824083
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81389 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/test')
-rw-r--r-- | chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/manifest.json | 7 | ||||
-rw-r--r-- | chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/test.html (renamed from chrome/test/data/extensions/api_test/bookmark_manager/test.html) | 0 | ||||
-rw-r--r-- | chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/test.js | 76 | ||||
-rw-r--r-- | chrome/test/data/extensions/api_test/bookmark_manager/standard/manifest.json (renamed from chrome/test/data/extensions/api_test/bookmark_manager/manifest.json) | 0 | ||||
-rw-r--r-- | chrome/test/data/extensions/api_test/bookmark_manager/standard/test.html | 1 | ||||
-rw-r--r-- | chrome/test/data/extensions/api_test/bookmark_manager/standard/test.js (renamed from chrome/test/data/extensions/api_test/bookmark_manager/test.js) | 0 |
6 files changed, 84 insertions, 0 deletions
diff --git a/chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/manifest.json b/chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/manifest.json new file mode 100644 index 0000000..6a60660 --- /dev/null +++ b/chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/manifest.json @@ -0,0 +1,7 @@ +{ + "name": "chrome.experimental.bookmarkManager (edit disabled)", + "version": "0.1", + "description": "end-to-end browser test for chrome.experimental.bookmarkManager API with editing disabled", + "background_page": "test.html", + "permissions": ["bookmarks", "experimental"] +} diff --git a/chrome/test/data/extensions/api_test/bookmark_manager/test.html b/chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/test.html index 46f4d74..46f4d74 100644 --- a/chrome/test/data/extensions/api_test/bookmark_manager/test.html +++ b/chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/test.html diff --git a/chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/test.js b/chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/test.js new file mode 100644 index 0000000..a016ebd --- /dev/null +++ b/chrome/test/data/extensions/api_test/bookmark_manager/edit_disabled/test.js @@ -0,0 +1,76 @@ +// Bookmark Manager API test for Chrome. +// browser_tests.exe --gtest_filter=ExtensionApiTest.BookmarkManagerEditDisabled + +const pass = chrome.test.callbackPass; +const fail = chrome.test.callbackFail; +const assertEq = chrome.test.assertEq; +const assertTrue = chrome.test.assertTrue; +const bookmarks = chrome.bookmarks; +const bookmarkManager = chrome.experimental.bookmarkManager; + +var ERROR = "Bookmark editing is disabled."; + +// Bookmark model within this test: +// <root>/ +// Bookmarks Bar/ +// Folder/ +// "BBB" +// "AAA" +// Other Bookmarks/ + +var tests = [ + function verifyModel() { + bookmarks.getTree(pass(function(result) { + assertEq(1, result.length); + var root = result[0]; + assertEq(2, root.children.length); + bar = root.children[0]; + assertEq(2, bar.children.length); + folder = bar.children[0]; + aaa = bar.children[1]; + assertEq('Folder', folder.title); + assertEq('AAA', aaa.title); + bbb = folder.children[0]; + assertEq('BBB', bbb.title); + })); + }, + + function createDisabled() { + bookmarks.create({ parentId: bar.id, title: 'Folder2' }, fail(ERROR)); + }, + + function moveDisabled() { + bookmarks.move(aaa.id, { parentId: folder.id }, fail(ERROR)); + }, + + function removeDisabled() { + bookmarks.remove(aaa.id, fail(ERROR)); + }, + + function removeTreeDisabled() { + bookmarks.removeTree(folder.id, fail(ERROR)); + }, + + function updateDisabled() { + bookmarks.update(aaa.id, { title: 'CCC' }, fail(ERROR)); + }, + + function importDisabled() { + bookmarks.import(fail(ERROR)); + }, + + function cutDisabled() { + bookmarkManager.cut([bbb.id], fail(ERROR)); + }, + + function canPasteDisabled() { + bookmarkManager.canPaste(folder.id, fail(ERROR)); + }, + + function pasteDisabled() { + bookmarkManager.paste(folder.id, [bbb.id], fail(ERROR)); + }, + +]; + +chrome.test.runTests(tests); diff --git a/chrome/test/data/extensions/api_test/bookmark_manager/manifest.json b/chrome/test/data/extensions/api_test/bookmark_manager/standard/manifest.json index ce4e407..ce4e407 100644 --- a/chrome/test/data/extensions/api_test/bookmark_manager/manifest.json +++ b/chrome/test/data/extensions/api_test/bookmark_manager/standard/manifest.json diff --git a/chrome/test/data/extensions/api_test/bookmark_manager/standard/test.html b/chrome/test/data/extensions/api_test/bookmark_manager/standard/test.html new file mode 100644 index 0000000..46f4d74 --- /dev/null +++ b/chrome/test/data/extensions/api_test/bookmark_manager/standard/test.html @@ -0,0 +1 @@ +<script src="test.js"></script> diff --git a/chrome/test/data/extensions/api_test/bookmark_manager/test.js b/chrome/test/data/extensions/api_test/bookmark_manager/standard/test.js index e4ec7cd..e4ec7cd 100644 --- a/chrome/test/data/extensions/api_test/bookmark_manager/test.js +++ b/chrome/test/data/extensions/api_test/bookmark_manager/standard/test.js |