Chromium Code Reviews| Index: chrome/browser/ui/browser_unittest.cc |
| diff --git a/chrome/browser/ui/browser_unittest.cc b/chrome/browser/ui/browser_unittest.cc |
| index 5d152002fa913b3d49e00e5243f5fdc45485bec4..3c74ab45a22532d683877e533843f16f120f4341 100644 |
| --- a/chrome/browser/ui/browser_unittest.cc |
| +++ b/chrome/browser/ui/browser_unittest.cc |
| @@ -5,6 +5,8 @@ |
| #include "chrome/browser/ui/browser.h" |
| #include "base/macros.h" |
| +#include "chrome/app/chrome_command_ids.h" |
| +#include "chrome/browser/ui/browser_command_controller.h" |
| #include "chrome/browser/ui/browser_commands.h" |
| #include "chrome/browser/ui/tabs/tab_strip_model.h" |
| #include "chrome/test/base/browser_with_test_window_test.h" |
| @@ -63,6 +65,28 @@ TEST_F(BrowserUnitTest, ReloadCrashedTab) { |
| EXPECT_TRUE(contents2->IsCrashed()); |
| } |
| +// Ensure the print command gets disabled when a tab crashes. |
| +TEST_F(BrowserUnitTest, DisablePrintOnCrashedTab) { |
| + TabStripModel* tab_strip_model = browser()->tab_strip_model(); |
| + |
| + WebContents* contents = CreateTestWebContents(); |
| + tab_strip_model->AppendWebContents(contents, true); |
| + WebContentsTester::For(contents)->NavigateAndCommit(GURL("about:blank")); |
| + |
| + CommandUpdater* command_updater = |
| + browser()->command_controller()->command_updater(); |
| + |
| + EXPECT_TRUE(command_updater->IsCommandEnabled(IDC_PRINT)); |
| + EXPECT_TRUE(chrome::CanPrint(browser())); |
| + EXPECT_FALSE(contents->IsCrashed()); |
|
Peter Kasting
2016/03/31 21:59:05
Nit: Move the IsCrashed() check to the top of each
|
| + |
| + contents->SetIsCrashed(base::TERMINATION_STATUS_PROCESS_CRASHED, -1); |
| + |
| + EXPECT_FALSE(command_updater->IsCommandEnabled(IDC_PRINT)); |
| + EXPECT_FALSE(chrome::CanPrint(browser())); |
| + EXPECT_TRUE(contents->IsCrashed()); |
| +} |
| + |
| class BrowserBookmarkBarTest : public BrowserWithTestWindowTest { |
| public: |
| BrowserBookmarkBarTest() {} |