Chromium Code Reviews| Index: chrome/browser/android/offline_pages/recent_tab_helper_unittest.cc |
| diff --git a/chrome/browser/android/offline_pages/recent_tab_helper_unittest.cc b/chrome/browser/android/offline_pages/recent_tab_helper_unittest.cc |
| index 1f76c0e1eded643b8c9e29c12bf270a1c8b37193..671a7b69f9f276e36940c9e6089bf4cb4d590c6b 100644 |
| --- a/chrome/browser/android/offline_pages/recent_tab_helper_unittest.cc |
| +++ b/chrome/browser/android/offline_pages/recent_tab_helper_unittest.cc |
| @@ -7,11 +7,13 @@ |
| #include "base/memory/ptr_util.h" |
| #include "base/run_loop.h" |
| #include "base/strings/string16.h" |
| +#include "base/test/scoped_feature_list.h" |
| #include "base/test/test_mock_time_task_runner.h" |
| #include "base/threading/thread_task_runner_handle.h" |
| #include "chrome/browser/android/offline_pages/offline_page_model_factory.h" |
| #include "chrome/browser/android/offline_pages/test_offline_page_model_builder.h" |
| #include "chrome/test/base/chrome_render_view_host_test_harness.h" |
| +#include "components/offline_pages/offline_page_feature.h" |
| #include "components/offline_pages/offline_page_item.h" |
| #include "components/offline_pages/offline_page_model.h" |
| #include "components/offline_pages/offline_page_test_archiver.h" |
| @@ -150,6 +152,7 @@ RecentTabHelperTest::RecentTabHelperTest() |
| void RecentTabHelperTest::SetUp() { |
| content::RenderViewHostTestHarness::SetUp(); |
| + |
| // Sets up the factory for testing. |
| OfflinePageModelFactory::GetInstance()->SetTestingFactoryAndUse( |
| browser_context(), BuildTestOfflinePageModel); |
| @@ -203,9 +206,14 @@ TEST_F(RecentTabHelperTest, Basic) { |
| } |
| TEST_F(RecentTabHelperTest, SimpleCapture) { |
| + base::test::ScopedFeatureList scoped_feature_list; |
|
dewittj
2016/08/24 23:01:40
Can I suggest putting this as a member of RecentTa
Dmitry Titov
2016/08/25 00:36:09
Done.
|
| + scoped_feature_list.InitAndEnableFeature(kOffliningRecentPagesFeature); |
| + |
| NavigateAndCommit(kTestPageUrl); |
|
dewittj
2016/08/24 23:01:39
may want to separate navigate / commit phases to b
Dmitry Titov
2016/08/25 00:36:09
Not sure I have a good idea what exact navigate/co
|
| + EXPECT_FALSE(recent_tab_helper()->is_page_ready_for_snapshot()); |
| recent_tab_helper()->DocumentOnLoadCompletedInMainFrame(); |
| RunUntilIdle(); |
| + EXPECT_TRUE(recent_tab_helper()->is_page_ready_for_snapshot()); |
| EXPECT_TRUE(model()->is_loaded()); |
| GetAllPages(); |
| EXPECT_EQ(1U, all_pages().size()); |
| @@ -213,6 +221,9 @@ TEST_F(RecentTabHelperTest, SimpleCapture) { |
| } |
| TEST_F(RecentTabHelperTest, NoTabIdNoCapture) { |
| + base::test::ScopedFeatureList scoped_feature_list; |
| + scoped_feature_list.InitAndEnableFeature(kOffliningRecentPagesFeature); |
| + |
| // Create delegate that returns 'false' as TabId retrieval result. |
| recent_tab_helper()->SetDelegate(base::MakeUnique<TestDelegate>( |
| this, task_runner(), kTabId, false)); |
| @@ -222,12 +233,15 @@ TEST_F(RecentTabHelperTest, NoTabIdNoCapture) { |
| RunUntilIdle(); |
| EXPECT_TRUE(model()->is_loaded()); |
| GetAllPages(); |
| - // No page shodul be captured. |
| + // No page should be captured. |
| EXPECT_EQ(0U, all_pages().size()); |
| } |
| // Should end up with 1 page. |
| TEST_F(RecentTabHelperTest, TwoCapturesSameUrl) { |
| + base::test::ScopedFeatureList scoped_feature_list; |
| + scoped_feature_list.InitAndEnableFeature(kOffliningRecentPagesFeature); |
| + |
| NavigateAndCommit(kTestPageUrl); |
| // Triggers snapshot after a time delay. |
| recent_tab_helper()->DocumentAvailableInMainFrame(); |
| @@ -256,6 +270,9 @@ TEST_F(RecentTabHelperTest, TwoCapturesSameUrl) { |
| // Should end up with 1 page. |
| TEST_F(RecentTabHelperTest, TwoCapturesDifferentUrls) { |
| + base::test::ScopedFeatureList scoped_feature_list; |
| + scoped_feature_list.InitAndEnableFeature(kOffliningRecentPagesFeature); |
| + |
| NavigateAndCommit(kTestPageUrl); |
| // Triggers snapshot after a time delay. |
| recent_tab_helper()->DocumentAvailableInMainFrame(); |
| @@ -284,6 +301,9 @@ TEST_F(RecentTabHelperTest, TwoCapturesDifferentUrls) { |
| } |
| TEST_F(RecentTabHelperTest, NoCaptureOnErrorPage) { |
| + base::test::ScopedFeatureList scoped_feature_list; |
| + scoped_feature_list.InitAndEnableFeature(kOffliningRecentPagesFeature); |
| + |
| FailLoad(kTestPageUrl); |
| recent_tab_helper()->DocumentOnLoadCompletedInMainFrame(); |
| RunUntilIdle(); |
| @@ -292,4 +312,14 @@ TEST_F(RecentTabHelperTest, NoCaptureOnErrorPage) { |
| EXPECT_EQ(0U, all_pages().size()); |
| } |
| +TEST_F(RecentTabHelperTest, FeatureNotEnabled) { |
| + NavigateAndCommit(kTestPageUrl); |
| + recent_tab_helper()->DocumentOnLoadCompletedInMainFrame(); |
| + RunUntilIdle(); |
| + EXPECT_TRUE(model()->is_loaded()); |
| + GetAllPages(); |
| + // No page should be captured. |
| + EXPECT_EQ(0U, all_pages().size()); |
| +} |
| + |
| } // namespace offline_pages |