extension_bookmark_manager_apitest.cc revision ddb351dbec246cf1fab5ec20d2d5520909041de1
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 17IN_PROC_BROWSER_TEST_F(ExtensionApiTest, BookmarkManager) { 18 CommandLine::ForCurrentProcess()->AppendSwitch( 19 switches::kEnableExperimentalExtensionApis); 20 21 ASSERT_TRUE(RunExtensionTest("bookmark_manager/standard")) << message_; 22} 23 24IN_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