| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/extensions/extension_context_menu_model.h" | 5 #include "chrome/browser/extensions/extension_context_menu_model.h" |
| 6 | 6 |
| 7 #include "chrome/browser/extensions/api/extension_action/extension_action_api.h" | 7 #include "chrome/browser/extensions/api/extension_action/extension_action_api.h" |
| 8 #include "chrome/browser/extensions/extension_service.h" | 8 #include "chrome/browser/extensions/extension_service.h" |
| 9 #include "chrome/browser/extensions/extension_service_test_base.h" | 9 #include "chrome/browser/extensions/extension_service_test_base.h" |
| 10 #include "chrome/browser/extensions/menu_manager.h" | 10 #include "chrome/browser/extensions/menu_manager.h" |
| 11 #include "chrome/browser/extensions/menu_manager_factory.h" | 11 #include "chrome/browser/extensions/menu_manager_factory.h" |
| 12 #include "chrome/browser/prefs/incognito_mode_prefs.h" |
| 12 #include "chrome/browser/ui/browser.h" | 13 #include "chrome/browser/ui/browser.h" |
| 13 #include "chrome/browser/ui/host_desktop.h" | 14 #include "chrome/browser/ui/host_desktop.h" |
| 14 #include "chrome/common/extensions/api/context_menus.h" | 15 #include "chrome/common/extensions/api/context_menus.h" |
| 15 #include "chrome/grit/generated_resources.h" | 16 #include "chrome/grit/generated_resources.h" |
| 16 #include "chrome/test/base/test_browser_window.h" | 17 #include "chrome/test/base/test_browser_window.h" |
| 17 #include "chrome/test/base/testing_profile.h" | 18 #include "chrome/test/base/testing_profile.h" |
| 18 #include "components/crx_file/id_util.h" | 19 #include "components/crx_file/id_util.h" |
| 19 #include "extensions/browser/extension_prefs.h" | 20 #include "extensions/browser/extension_prefs.h" |
| 20 #include "extensions/browser/extension_system.h" | 21 #include "extensions/browser/extension_system.h" |
| 21 #include "extensions/browser/test_management_policy.h" | 22 #include "extensions/browser/test_management_policy.h" |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 } | 67 } |
| 67 return -1; | 68 return -1; |
| 68 } | 69 } |
| 69 | 70 |
| 70 } // namespace | 71 } // namespace |
| 71 | 72 |
| 72 class ExtensionContextMenuModelTest : public ExtensionServiceTestBase { | 73 class ExtensionContextMenuModelTest : public ExtensionServiceTestBase { |
| 73 public: | 74 public: |
| 74 ExtensionContextMenuModelTest(); | 75 ExtensionContextMenuModelTest(); |
| 75 | 76 |
| 77 static void SetUpTestCase() { |
| 78 ExtensionServiceTestBase::SetUpTestCase(); |
| 79 // Creating a browser requires platform parental controls initialization. |
| 80 IncognitoModePrefs::InitializePlatformParentalControls(); |
| 81 } |
| 82 |
| 83 static void TearDownTestCase() { |
| 84 IncognitoModePrefs::UninitializePlatformParentalControls(); |
| 85 ExtensionServiceTestBase::TearDownTestCase(); |
| 86 } |
| 87 |
| 76 // Creates an extension menu item for |extension| with the given |context| | 88 // Creates an extension menu item for |extension| with the given |context| |
| 77 // and adds it to |manager|. Refreshes |model| to show new item. | 89 // and adds it to |manager|. Refreshes |model| to show new item. |
| 78 void AddContextItemAndRefreshModel(MenuManager* manager, | 90 void AddContextItemAndRefreshModel(MenuManager* manager, |
| 79 const Extension* extension, | 91 const Extension* extension, |
| 80 MenuItem::Context context, | 92 MenuItem::Context context, |
| 81 ExtensionContextMenuModel* model); | 93 ExtensionContextMenuModel* model); |
| 82 | 94 |
| 83 // Reinitializes the given |model|. | 95 // Reinitializes the given |model|. |
| 84 void RefreshMenu(ExtensionContextMenuModel* model); | 96 void RefreshMenu(ExtensionContextMenuModel* model); |
| 85 | 97 |
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 293 // Hide the browser action. This should mean the string is "show". | 305 // Hide the browser action. This should mean the string is "show". |
| 294 ExtensionActionAPI::SetBrowserActionVisibility( | 306 ExtensionActionAPI::SetBrowserActionVisibility( |
| 295 prefs, browser_action->id(), false); | 307 prefs, browser_action->id(), false); |
| 296 menu = new ExtensionContextMenuModel(browser_action.get(), browser.get()); | 308 menu = new ExtensionContextMenuModel(browser_action.get(), browser.get()); |
| 297 index = GetCommandIndex(menu, visibility_command); | 309 index = GetCommandIndex(menu, visibility_command); |
| 298 EXPECT_NE(-1, index); | 310 EXPECT_NE(-1, index); |
| 299 EXPECT_EQ(show_string, menu->GetLabelAt(index)); | 311 EXPECT_EQ(show_string, menu->GetLabelAt(index)); |
| 300 } | 312 } |
| 301 | 313 |
| 302 } // namespace extensions | 314 } // namespace extensions |
| OLD | NEW |