| 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 "base/strings/utf_string_conversions.h" | 5 #include "base/strings/utf_string_conversions.h" |
| 6 #include "chrome/browser/extensions/extension_browsertest.h" | 6 #include "chrome/browser/extensions/extension_browsertest.h" |
| 7 #include "chrome/browser/extensions/extension_test_message_listener.h" | 7 #include "chrome/browser/extensions/extension_test_message_listener.h" |
| 8 #include "chrome/browser/extensions/lazy_background_page_test_util.h" | 8 #include "chrome/browser/extensions/lazy_background_page_test_util.h" |
| 9 #include "chrome/browser/profiles/profile.h" | 9 #include "chrome/browser/profiles/profile.h" |
| 10 #include "chrome/browser/renderer_context_menu/render_view_context_menu.h" | 10 #include "chrome/browser/renderer_context_menu/render_view_context_menu.h" |
| 11 #include "chrome/browser/renderer_context_menu/render_view_context_menu_test_uti
l.h" | 11 #include "chrome/browser/renderer_context_menu/render_view_context_menu_test_uti
l.h" |
| 12 #include "chrome/browser/ui/browser.h" | 12 #include "chrome/browser/ui/browser.h" |
| 13 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 13 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
| 14 #include "chrome/test/base/ui_test_utils.h" | 14 #include "chrome/test/base/ui_test_utils.h" |
| 15 #include "content/public/common/context_menu_params.h" | 15 #include "content/public/common/context_menu_params.h" |
| 16 #include "extensions/browser/extension_registry.h" | 16 #include "extensions/browser/extension_registry.h" |
| 17 #include "extensions/browser/process_manager.h" |
| 17 #include "extensions/browser/test_management_policy.h" | 18 #include "extensions/browser/test_management_policy.h" |
| 18 #include "extensions/common/extension_set.h" | 19 #include "extensions/common/extension_set.h" |
| 19 #include "extensions/common/switches.h" | |
| 20 #include "net/dns/mock_host_resolver.h" | 20 #include "net/dns/mock_host_resolver.h" |
| 21 #include "ui/base/models/menu_model.h" | 21 #include "ui/base/models/menu_model.h" |
| 22 | 22 |
| 23 using content::WebContents; | 23 using content::WebContents; |
| 24 using extensions::ContextMenuMatcher; | 24 using extensions::ContextMenuMatcher; |
| 25 using extensions::MenuItem; | 25 using extensions::MenuItem; |
| 26 using ui::MenuModel; | 26 using ui::MenuModel; |
| 27 | 27 |
| 28 class ExtensionContextMenuBrowserTest : public ExtensionBrowserTest { | 28 class ExtensionContextMenuBrowserTest : public ExtensionBrowserTest { |
| 29 public: | 29 public: |
| (...skipping 515 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 545 } | 545 } |
| 546 | 546 |
| 547 // Tests enabling and disabling a context menu item. | 547 // Tests enabling and disabling a context menu item. |
| 548 IN_PROC_BROWSER_TEST_F(ExtensionContextMenuBrowserTest, Enabled) { | 548 IN_PROC_BROWSER_TEST_F(ExtensionContextMenuBrowserTest, Enabled) { |
| 549 TestEnabledContextMenu(true); | 549 TestEnabledContextMenu(true); |
| 550 TestEnabledContextMenu(false); | 550 TestEnabledContextMenu(false); |
| 551 } | 551 } |
| 552 | 552 |
| 553 class ExtensionContextMenuBrowserLazyTest : | 553 class ExtensionContextMenuBrowserLazyTest : |
| 554 public ExtensionContextMenuBrowserTest { | 554 public ExtensionContextMenuBrowserTest { |
| 555 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { | 555 virtual void SetUpOnMainThread() OVERRIDE { |
| 556 ExtensionContextMenuBrowserTest::SetUpCommandLine(command_line); | 556 ExtensionContextMenuBrowserTest::SetUpOnMainThread(); |
| 557 // Set shorter delays to prevent test timeouts. | 557 // Set shorter delays to prevent test timeouts. |
| 558 command_line->AppendSwitchASCII( | 558 extensions::ProcessManager::SetEventPageIdleTimeForTesting(1); |
| 559 extensions::switches::kEventPageIdleTime, "1"); | 559 extensions::ProcessManager::SetEventPageSuspendingTimeForTesting(0); |
| 560 command_line->AppendSwitchASCII( | |
| 561 extensions::switches::kEventPageSuspendingTime, "0"); | |
| 562 } | 560 } |
| 563 }; | 561 }; |
| 564 | 562 |
| 565 IN_PROC_BROWSER_TEST_F(ExtensionContextMenuBrowserLazyTest, EventPage) { | 563 IN_PROC_BROWSER_TEST_F(ExtensionContextMenuBrowserLazyTest, EventPage) { |
| 566 GURL about_blank("about:blank"); | 564 GURL about_blank("about:blank"); |
| 567 LazyBackgroundObserver page_complete; | 565 LazyBackgroundObserver page_complete; |
| 568 const extensions::Extension* extension = LoadContextMenuExtension( | 566 const extensions::Extension* extension = LoadContextMenuExtension( |
| 569 "event_page"); | 567 "event_page"); |
| 570 ASSERT_TRUE(extension); | 568 ASSERT_TRUE(extension); |
| 571 page_complete.Wait(); | 569 page_complete.Wait(); |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 607 ASSERT_TRUE(LoadContextMenuExtensionIncognito("incognito")); | 605 ASSERT_TRUE(LoadContextMenuExtensionIncognito("incognito")); |
| 608 | 606 |
| 609 // Wait for the extension's processes to tell us they've created an item. | 607 // Wait for the extension's processes to tell us they've created an item. |
| 610 ASSERT_TRUE(created.WaitUntilSatisfied()); | 608 ASSERT_TRUE(created.WaitUntilSatisfied()); |
| 611 ASSERT_TRUE(created_incognito.WaitUntilSatisfied()); | 609 ASSERT_TRUE(created_incognito.WaitUntilSatisfied()); |
| 612 ASSERT_EQ(2u, GetItems().size()); | 610 ASSERT_EQ(2u, GetItems().size()); |
| 613 | 611 |
| 614 browser()->profile()->DestroyOffTheRecordProfile(); | 612 browser()->profile()->DestroyOffTheRecordProfile(); |
| 615 ASSERT_EQ(1u, GetItems().size()); | 613 ASSERT_EQ(1u, GetItems().size()); |
| 616 } | 614 } |
| OLD | NEW |