• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "base/command_line.h"
6 #include "base/utf_string_conversions.h"
7 #include "chrome/browser/bookmarks/bookmark_model.h"
8 #include "chrome/browser/extensions/extension_apitest.h"
9 #include "chrome/browser/extensions/extension_bookmark_manager_api.h"
10 #include "chrome/browser/prefs/pref_service.h"
11 #include "chrome/browser/profiles/profile.h"
12 #include "chrome/browser/ui/browser.h"
13 #include "chrome/common/chrome_switches.h"
14 #include "chrome/common/pref_names.h"
15 #include "chrome/test/ui_test_utils.h"
16 
IN_PROC_BROWSER_TEST_F(ExtensionApiTest,BookmarkManager)17 IN_PROC_BROWSER_TEST_F(ExtensionApiTest, BookmarkManager) {
18   CommandLine::ForCurrentProcess()->AppendSwitch(
19       switches::kEnableExperimentalExtensionApis);
20 
21   ASSERT_TRUE(RunExtensionTest("bookmark_manager/standard")) << message_;
22 }
23 
IN_PROC_BROWSER_TEST_F(ExtensionApiTest,BookmarkManagerEditDisabled)24 IN_PROC_BROWSER_TEST_F(ExtensionApiTest, BookmarkManagerEditDisabled) {
25   CommandLine::ForCurrentProcess()->AppendSwitch(
26       switches::kEnableExperimentalExtensionApis);
27 
28   Profile* profile = browser()->profile();
29 
30   // Provide some testing data here, since bookmark editing will be disabled
31   // within the extension.
32   BookmarkModel* model = profile->GetBookmarkModel();
33   ui_test_utils::WaitForBookmarkModelToLoad(model);
34   const BookmarkNode* bar = model->GetBookmarkBarNode();
35   const BookmarkNode* folder = model->AddFolder(bar, 0, ASCIIToUTF16("Folder"));
36   const BookmarkNode* node = model->AddURL(bar, 1, ASCIIToUTF16("AAA"),
37                                            GURL("http://aaa.example.com"));
38   node = model->AddURL(folder, 0, ASCIIToUTF16("BBB"),
39                                   GURL("http://bbb.example.com"));
40 
41   profile->GetPrefs()->SetBoolean(prefs::kEditBookmarksEnabled, false);
42 
43   ASSERT_TRUE(RunExtensionTest("bookmark_manager/edit_disabled")) << message_;
44 }
45