| Index: components/offline_pages/core/prefetch/prefetch_dispatcher_impl_unittest.cc
|
| diff --git a/components/offline_pages/core/prefetch/prefetch_dispatcher_impl_unittest.cc b/components/offline_pages/core/prefetch/prefetch_dispatcher_impl_unittest.cc
|
| index 846f697919381afa39cbdd7671150446390f39b1..057278282cddac00199036b4432c019d203d89f7 100644
|
| --- a/components/offline_pages/core/prefetch/prefetch_dispatcher_impl_unittest.cc
|
| +++ b/components/offline_pages/core/prefetch/prefetch_dispatcher_impl_unittest.cc
|
| @@ -12,12 +12,14 @@
|
| #include "components/offline_pages/core/client_namespace_constants.h"
|
| #include "components/offline_pages/core/offline_event_logger.h"
|
| #include "components/offline_pages/core/offline_page_feature.h"
|
| -#include "components/offline_pages/core/prefetch/prefetch_in_memory_store.h"
|
| #include "components/offline_pages/core/prefetch/prefetch_service.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| +#include "url/gurl.h"
|
|
|
| namespace offline_pages {
|
|
|
| +namespace {
|
| +
|
| class TestScopedBackgroundTask
|
| : public PrefetchDispatcher::ScopedBackgroundTask {
|
| public:
|
| @@ -31,8 +33,12 @@ class TestScopedBackgroundTask
|
| bool needs_reschedule_called = false;
|
| };
|
|
|
| +} // namespace
|
| +
|
| class PrefetchDispatcherTest : public testing::Test, public PrefetchService {
|
| public:
|
| + const std::string TEST_NAMESPACE = "TestPrefetchClientNamespace";
|
| +
|
| PrefetchDispatcherTest();
|
|
|
| // Test implementation.
|
| @@ -44,7 +50,6 @@ class PrefetchDispatcherTest : public testing::Test, public PrefetchService {
|
| OfflineMetricsCollector* GetOfflineMetricsCollector() override;
|
| PrefetchDispatcher* GetPrefetchDispatcher() override;
|
| PrefetchGCMHandler* GetPrefetchGCMHandler() override;
|
| - PrefetchStore* GetPrefetchStore() override;
|
| SuggestedArticlesObserver* GetSuggestedArticlesObserver() override;
|
|
|
| // KeyedService implementation.
|
| @@ -57,13 +62,13 @@ class PrefetchDispatcherTest : public testing::Test, public PrefetchService {
|
|
|
| TaskQueue* dispatcher_task_queue() { return &dispatcher_impl_->task_queue_; }
|
|
|
| + protected:
|
| + std::vector<PrefetchURL> test_urls_;
|
| +
|
| private:
|
| + std::unique_ptr<PrefetchDispatcherImpl> dispatcher_impl_;
|
| OfflineEventLogger logger_;
|
| base::test::ScopedFeatureList feature_list_;
|
| -
|
| - std::unique_ptr<PrefetchInMemoryStore> in_memory_store_;
|
| - std::unique_ptr<PrefetchDispatcherImpl> dispatcher_impl_;
|
| -
|
| scoped_refptr<base::TestSimpleTaskRunner> task_runner_;
|
| base::ThreadTaskRunnerHandle task_runner_handle_;
|
| };
|
| @@ -77,9 +82,12 @@ PrefetchDispatcherTest::PrefetchDispatcherTest()
|
| void PrefetchDispatcherTest::SetUp() {
|
| ASSERT_EQ(base::ThreadTaskRunnerHandle::Get(), task_runner_);
|
| ASSERT_FALSE(task_runner_->HasPendingTask());
|
| - in_memory_store_ = base::MakeUnique<PrefetchInMemoryStore>();
|
| dispatcher_impl_ = base::MakeUnique<PrefetchDispatcherImpl>();
|
| dispatcher_impl_->SetService(this);
|
| +
|
| + ASSERT_TRUE(test_urls_.empty());
|
| + test_urls_.push_back({"1", GURL("http://testurl.com/foo")});
|
| + test_urls_.push_back({"2", GURL("https://testurl.com/bar")});
|
| }
|
|
|
| void PrefetchDispatcherTest::TearDown() {
|
| @@ -104,10 +112,6 @@ PrefetchGCMHandler* PrefetchDispatcherTest::GetPrefetchGCMHandler() {
|
| return nullptr;
|
| }
|
|
|
| -PrefetchStore* PrefetchDispatcherTest::GetPrefetchStore() {
|
| - return in_memory_store_.get();
|
| -}
|
| -
|
| SuggestedArticlesObserver*
|
| PrefetchDispatcherTest::GetSuggestedArticlesObserver() {
|
| NOTREACHED();
|
| @@ -119,7 +123,7 @@ void PrefetchDispatcherTest::PumpLoop() {
|
| }
|
|
|
| TEST_F(PrefetchDispatcherTest, DispatcherDoesNotCrash) {
|
| - GetPrefetchDispatcher()->AddCandidatePrefetchURLs(std::vector<PrefetchURL>());
|
| + GetPrefetchDispatcher()->AddCandidatePrefetchURLs(TEST_NAMESPACE, test_urls_);
|
| GetPrefetchDispatcher()->RemoveAllUnprocessedPrefetchURLs(
|
| kSuggestedArticlesNamespace);
|
| GetPrefetchDispatcher()->RemovePrefetchURLsByClientId(
|
| @@ -127,7 +131,7 @@ TEST_F(PrefetchDispatcherTest, DispatcherDoesNotCrash) {
|
| }
|
|
|
| TEST_F(PrefetchDispatcherTest, AddCandidatePrefetchURLsTask) {
|
| - GetPrefetchDispatcher()->AddCandidatePrefetchURLs(std::vector<PrefetchURL>());
|
| + GetPrefetchDispatcher()->AddCandidatePrefetchURLs(TEST_NAMESPACE, test_urls_);
|
| EXPECT_TRUE(dispatcher_task_queue()->HasPendingTasks());
|
| EXPECT_TRUE(dispatcher_task_queue()->HasRunningTask());
|
| PumpLoop();
|
| @@ -140,10 +144,9 @@ TEST_F(PrefetchDispatcherTest, DispatcherDoesNothingIfFeatureNotEnabled) {
|
| disabled_feature_list.InitAndDisableFeature(kPrefetchingOfflinePagesFeature);
|
|
|
| // Don't add a task for new prefetch URLs.
|
| - ClientId client_id("namespace", "id");
|
| - PrefetchURL prefetch_url(client_id, GURL("https://www.chromium.org"));
|
| + PrefetchURL prefetch_url("id", GURL("https://www.chromium.org"));
|
| GetPrefetchDispatcher()->AddCandidatePrefetchURLs(
|
| - std::vector<PrefetchURL>(1, prefetch_url));
|
| + TEST_NAMESPACE, std::vector<PrefetchURL>(1, prefetch_url));
|
| EXPECT_FALSE(dispatcher_task_queue()->HasRunningTask());
|
|
|
| // Do nothing with a new background task.
|
|
|