| 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/base_switches.h" | 5 #include "base/base_switches.h" |
| 6 #include "base/command_line.h" | 6 #include "base/command_line.h" |
| 7 #include "base/memory/memory_pressure_listener.h" | 7 #include "base/memory/memory_pressure_listener.h" |
| 8 #include "base/test/simple_test_tick_clock.h" | 8 #include "base/test/simple_test_tick_clock.h" |
| 9 #include "build/build_config.h" | 9 #include "build/build_config.h" |
| 10 #include "chrome/browser/browser_process.h" | 10 #include "chrome/browser/browser_process.h" |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 #include "content/public/test/test_utils.h" | 26 #include "content/public/test/test_utils.h" |
| 27 #include "url/gurl.h" | 27 #include "url/gurl.h" |
| 28 | 28 |
| 29 using content::OpenURLParams; | 29 using content::OpenURLParams; |
| 30 | 30 |
| 31 #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) | 31 #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) |
| 32 | 32 |
| 33 namespace memory { | 33 namespace memory { |
| 34 | 34 |
| 35 class TabManagerTest : public InProcessBrowserTest { | 35 class TabManagerTest : public InProcessBrowserTest { |
| 36 public: | |
| 37 // Tab discarding is enabled by default on CrOS. On other platforms, force it | |
| 38 // by turning on the corresponding experiment as some tests assume this | |
| 39 // behavior it turned on. | |
| 40 void SetUpCommandLine(base::CommandLine* command_line) override { | |
| 41 #if !defined(OS_LINUX) | |
| 42 command_line->AppendSwitchASCII(switches::kEnableFeatures, | |
| 43 features::kAutomaticTabDiscarding.name); | |
| 44 #endif | |
| 45 } | |
| 46 }; | 36 }; |
| 47 | 37 |
| 48 IN_PROC_BROWSER_TEST_F(TabManagerTest, TabManagerBasics) { | 38 IN_PROC_BROWSER_TEST_F(TabManagerTest, TabManagerBasics) { |
| 49 using content::WindowedNotificationObserver; | 39 using content::WindowedNotificationObserver; |
| 50 TabManager* tab_manager = g_browser_process->GetTabManager(); | 40 TabManager* tab_manager = g_browser_process->GetTabManager(); |
| 51 EXPECT_FALSE(tab_manager->recent_tab_discard()); | 41 EXPECT_FALSE(tab_manager->recent_tab_discard()); |
| 52 | 42 |
| 53 // Disable the protection of recent tabs. | 43 // Disable the protection of recent tabs. |
| 54 tab_manager->set_minimum_protection_time_for_tests( | 44 tab_manager->set_minimum_protection_time_for_tests( |
| 55 base::TimeDelta::FromMinutes(0)); | 45 base::TimeDelta::FromMinutes(0)); |
| (...skipping 385 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 441 tab_manager->SetTabAutoDiscardableState(tsm->GetWebContentsAt(0), true); | 431 tab_manager->SetTabAutoDiscardableState(tsm->GetWebContentsAt(0), true); |
| 442 | 432 |
| 443 // Now it should be able to discard the tab. | 433 // Now it should be able to discard the tab. |
| 444 EXPECT_TRUE(tab_manager->DiscardTabImpl()); | 434 EXPECT_TRUE(tab_manager->DiscardTabImpl()); |
| 445 EXPECT_TRUE(tab_manager->IsTabDiscarded(tsm->GetWebContentsAt(0))); | 435 EXPECT_TRUE(tab_manager->IsTabDiscarded(tsm->GetWebContentsAt(0))); |
| 446 } | 436 } |
| 447 | 437 |
| 448 } // namespace memory | 438 } // namespace memory |
| 449 | 439 |
| 450 #endif // OS_WIN || OS_MAXOSX || OS_LINUX | 440 #endif // OS_WIN || OS_MAXOSX || OS_LINUX |
| OLD | NEW |