diff options
Diffstat (limited to 'chromium/chrome/browser/extensions/api/bookmarks')
4 files changed, 45 insertions, 19 deletions
diff --git a/chromium/chrome/browser/extensions/api/bookmarks/bookmark_api_helpers_unittest.cc b/chromium/chrome/browser/extensions/api/bookmarks/bookmark_api_helpers_unittest.cc index 5f90d3df246..8671eb11e31 100644 --- a/chromium/chrome/browser/extensions/api/bookmarks/bookmark_api_helpers_unittest.cc +++ b/chromium/chrome/browser/extensions/api/bookmarks/bookmark_api_helpers_unittest.cc @@ -35,11 +35,11 @@ namespace bookmark_api_helpers { class ExtensionBookmarksTest : public testing::Test { public: ExtensionBookmarksTest() - : managed_(NULL), - model_(NULL), - node_(NULL), - node2_(NULL), - folder_(NULL) {} + : managed_(nullptr), + model_(nullptr), + node_(nullptr), + node2_(nullptr), + folder_(nullptr) {} void SetUp() override { profile_.CreateBookmarkModel(false); diff --git a/chromium/chrome/browser/extensions/api/bookmarks/bookmark_apitest.cc b/chromium/chrome/browser/extensions/api/bookmarks/bookmark_apitest.cc index 0664a2e51ba..78136b17ddb 100644 --- a/chromium/chrome/browser/extensions/api/bookmarks/bookmark_apitest.cc +++ b/chromium/chrome/browser/extensions/api/bookmarks/bookmark_apitest.cc @@ -19,12 +19,37 @@ #include "components/bookmarks/test/bookmark_test_helpers.h" #include "components/prefs/pref_service.h" #include "content/public/test/browser_test.h" +#include "extensions/common/scoped_worker_based_extensions_channel.h" using bookmarks::BookmarkModel; namespace extensions { -IN_PROC_BROWSER_TEST_F(ExtensionApiTest, Bookmarks) { +using ContextType = ExtensionApiTest::ContextType; + +class BookmarksApiTest : public ExtensionApiTest, + public testing::WithParamInterface<ContextType> { + public: + void SetUp() override { + ExtensionApiTest::SetUp(); + // Service Workers are currently only available on certain channels, so set + // the channel for those tests. + if (GetParam() == ContextType::kServiceWorker) + current_channel_ = std::make_unique<ScopedWorkerBasedExtensionsChannel>(); + } + + private: + std::unique_ptr<ScopedWorkerBasedExtensionsChannel> current_channel_; +}; + +INSTANTIATE_TEST_SUITE_P(EventPage, + BookmarksApiTest, + ::testing::Values(ContextType::kEventPage)); +INSTANTIATE_TEST_SUITE_P(ServiceWorker, + BookmarksApiTest, + ::testing::Values(ContextType::kServiceWorker)); + +IN_PROC_BROWSER_TEST_P(BookmarksApiTest, Bookmarks) { // Add test managed bookmarks to verify that the bookmarks API can read them // and can't modify them. Profile* profile = browser()->profile(); @@ -45,7 +70,13 @@ IN_PROC_BROWSER_TEST_F(ExtensionApiTest, Bookmarks) { profile->GetPrefs()->Set(bookmarks::prefs::kManagedBookmarks, list); ASSERT_EQ(2u, managed->managed_node()->children().size()); - ASSERT_TRUE(RunExtensionTest("bookmarks")) << message_; + if (GetParam() == ContextType::kEventPage) { + ASSERT_TRUE(RunExtensionTest("bookmarks")) << message_; + } else { + ASSERT_TRUE(RunExtensionTestWithFlags( + "bookmarks", kFlagRunAsServiceWorkerBasedExtension, kFlagNone)) + << message_; + } } } // namespace extensions diff --git a/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc b/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc index f7fa8079e88..2e7f7b8235d 100644 --- a/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc +++ b/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc @@ -272,7 +272,7 @@ void BookmarkEventRouter::BookmarkModelLoaded(BookmarkModel* model, } void BookmarkEventRouter::BookmarkModelBeingDeleted(BookmarkModel* model) { - model_ = NULL; + model_ = nullptr; } void BookmarkEventRouter::BookmarkNodeMoved(BookmarkModel* model, @@ -744,17 +744,12 @@ void BookmarksIOFunction::ShowSelectFileDialog( gfx::NativeWindow owning_window = web_contents ? platform_util::GetTopLevel(web_contents->GetNativeView()) : gfx::kNullNativeWindow; - // |web_contents| can be NULL (for background pages), which is fine. In such - // a case if file-selection dialogs are forbidden by policy, we will not + // |web_contents| can be nullptr (for background pages), which is fine. In + // such a case if file-selection dialogs are forbidden by policy, we will not // show an InfoBar, which is better than letting one appear out of the blue. - select_file_dialog_->SelectFile(type, - base::string16(), - default_path, - &file_type_info, - 0, - base::FilePath::StringType(), - owning_window, - NULL); + select_file_dialog_->SelectFile( + type, base::string16(), default_path, &file_type_info, 0, + base::FilePath::StringType(), owning_window, nullptr); } void BookmarksIOFunction::FileSelectionCanceled(void* params) { diff --git a/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.h b/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.h index e604b22d732..73703408cde 100644 --- a/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.h +++ b/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.h @@ -165,7 +165,7 @@ class BookmarksFunction : public ExtensionFunction, bool EditBookmarksEnabled(); // Helper that checks if |node| can be modified. Returns false if |node| - // is NULL, or a managed node, or the root node. In these cases the node + // is nullptr, or a managed node, or the root node. In these cases the node // can't be edited, can't have new child nodes appended, and its direct // children can't be moved or reordered. bool CanBeModified(const bookmarks::BookmarkNode* node, std::string* error); |