Chromium Code Reviews| Index: chrome/browser/extensions/extension_context_menu_model_unittest.cc |
| diff --git a/chrome/browser/extensions/extension_context_menu_model_unittest.cc b/chrome/browser/extensions/extension_context_menu_model_unittest.cc |
| index 0ae2aa3f4973e52fa2c8b21057f1b06c8e81c5c6..0b46e2601d1f428764ba6e5ca99f672efc4c7d68 100644 |
| --- a/chrome/browser/extensions/extension_context_menu_model_unittest.cc |
| +++ b/chrome/browser/extensions/extension_context_menu_model_unittest.cc |
| @@ -4,6 +4,7 @@ |
| #include "chrome/browser/extensions/extension_context_menu_model.h" |
| +#include "base/strings/utf_string_conversions.h" |
| #include "chrome/browser/extensions/api/extension_action/extension_action_api.h" |
| #include "chrome/browser/extensions/extension_service.h" |
| #include "chrome/browser/extensions/extension_service_test_base.h" |
| @@ -31,6 +32,9 @@ namespace extensions { |
| namespace { |
| +// Label for test extension menu item. |
| +const char* kTestExtensionItemLabel = "test-ext-item"; |
| + |
| // Build an extension to pass to the menu constructor, with the an action |
| // specified by |action_key|. |
| scoped_refptr<const Extension> BuildExtension(const std::string& name, |
| @@ -84,6 +88,8 @@ class ExtensionContextMenuModelTest : public ExtensionServiceTestBase { |
| void RefreshMenu(ExtensionContextMenuModel* model); |
| // Returns the number of extension menu items that show up in |model|. |
| + // For this test, all the extension items have samel label |
| + // |kTestExtensionItemLabel|. |
| int CountExtensionItems(ExtensionContextMenuModel* model); |
| private: |
| @@ -104,24 +110,29 @@ void ExtensionContextMenuModelTest::AddContextItemAndRefreshModel( |
| const MenuItem::ExtensionKey key(extension->id()); |
| MenuItem::Id id(false, key); |
| id.uid = ++cur_id_; |
| - manager->AddContextItem(extension, |
| - new MenuItem(id, |
| - "test", |
| - false, // checked |
| - true, // enabled |
| - type, |
| - contexts)); |
| + manager->AddContextItem(extension, new MenuItem(id, kTestExtensionItemLabel, |
| + false, // checked |
| + true, // enabled |
| + type, contexts)); |
| RefreshMenu(model); |
| } |
| void ExtensionContextMenuModelTest::RefreshMenu( |
| ExtensionContextMenuModel* model) { |
| + model->Clear(); |
|
lazyboy
2015/05/08 22:53:39
This used to be a bug in the test.
|
| model->InitMenu(model->GetExtension(), ExtensionContextMenuModel::VISIBLE); |
| } |
| int ExtensionContextMenuModelTest::CountExtensionItems( |
| ExtensionContextMenuModel* model) { |
| - return model->extension_items_count_; |
| + base::string16 expected_label = base::ASCIIToUTF16(kTestExtensionItemLabel); |
| + int num_items_found = 0; |
| + for (int i = 0; i < model->GetItemCount(); ++i) { |
| + if (expected_label == model->GetLabelAt(i)) |
| + ++num_items_found; |
| + } |
| + EXPECT_EQ(num_items_found, model->extension_items_count_); |
| + return num_items_found; |
| } |
| // Tests that applicable menu items are disabled when a ManagementPolicy |