| Index: components/offline_pages/downloads/download_notifying_observer_unittest.cc
|
| diff --git a/components/offline_pages/downloads/download_notifying_observer_unittest.cc b/components/offline_pages/downloads/download_notifying_observer_unittest.cc
|
| deleted file mode 100644
|
| index 6943b129c08b952a6c79809c625d1209373645c7..0000000000000000000000000000000000000000
|
| --- a/components/offline_pages/downloads/download_notifying_observer_unittest.cc
|
| +++ /dev/null
|
| @@ -1,284 +0,0 @@
|
| -// Copyright 2016 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "components/offline_pages/downloads/download_notifying_observer.h"
|
| -
|
| -#include "base/memory/ptr_util.h"
|
| -#include "components/offline_pages/background/save_page_request.h"
|
| -#include "components/offline_pages/client_namespace_constants.h"
|
| -#include "components/offline_pages/client_policy_controller.h"
|
| -#include "components/offline_pages/downloads/offline_page_download_notifier.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -
|
| -namespace offline_pages {
|
| -
|
| -namespace {
|
| -static const int64_t kTestOfflineId = 42L;
|
| -static const char kTestUrl[] = "http://foo.com/bar";
|
| -static const char kTestGuid[] = "cccccccc-cccc-4ccc-0ccc-ccccccccccc1";
|
| -static const ClientId kTestClientId(kDownloadNamespace, kTestGuid);
|
| -static const base::Time kTestCreationTime = base::Time::Now();
|
| -static const bool kTestUserRequested = true;
|
| -
|
| -enum class LastNotificationType {
|
| - NONE,
|
| - DOWNLOAD_SUCCESSFUL,
|
| - DOWNLOAD_FAILED,
|
| - DOWNLOAD_PROGRESS,
|
| - DOWNLOAD_PAUSED,
|
| - DOWNLOAD_INTERRUPTED,
|
| - DOWNLOAD_CANCELED,
|
| -};
|
| -
|
| -class TestNotifier : public OfflinePageDownloadNotifier {
|
| - public:
|
| - TestNotifier();
|
| - ~TestNotifier() override;
|
| -
|
| - // OfflinePageDownloadNotifier implementation:
|
| - void NotifyDownloadSuccessful(const DownloadUIItem& item) override;
|
| - void NotifyDownloadFailed(const DownloadUIItem& item) override;
|
| - void NotifyDownloadProgress(const DownloadUIItem& item) override;
|
| - void NotifyDownloadPaused(const DownloadUIItem& item) override;
|
| - void NotifyDownloadInterrupted(const DownloadUIItem& item) override;
|
| - void NotifyDownloadCanceled(const DownloadUIItem& item) override;
|
| -
|
| - void Reset();
|
| -
|
| - LastNotificationType last_notification_type() const {
|
| - return last_notification_type_;
|
| - }
|
| -
|
| - DownloadUIItem* download_item() const { return download_item_.get(); }
|
| -
|
| - private:
|
| - LastNotificationType last_notification_type_;
|
| - std::unique_ptr<DownloadUIItem> download_item_;
|
| -};
|
| -
|
| -TestNotifier::TestNotifier()
|
| - : last_notification_type_(LastNotificationType::NONE) {}
|
| -
|
| -TestNotifier::~TestNotifier() {}
|
| -
|
| -void TestNotifier::NotifyDownloadSuccessful(const DownloadUIItem& item) {
|
| - last_notification_type_ = LastNotificationType::DOWNLOAD_SUCCESSFUL;
|
| - download_item_.reset(new DownloadUIItem(item));
|
| -}
|
| -
|
| -void TestNotifier::NotifyDownloadFailed(const DownloadUIItem& item) {
|
| - last_notification_type_ = LastNotificationType::DOWNLOAD_FAILED;
|
| - download_item_.reset(new DownloadUIItem(item));
|
| -}
|
| -
|
| -void TestNotifier::NotifyDownloadProgress(const DownloadUIItem& item) {
|
| - last_notification_type_ = LastNotificationType::DOWNLOAD_PROGRESS;
|
| - download_item_.reset(new DownloadUIItem(item));
|
| -}
|
| -
|
| -void TestNotifier::NotifyDownloadPaused(const DownloadUIItem& item) {
|
| - last_notification_type_ = LastNotificationType::DOWNLOAD_PAUSED;
|
| - download_item_.reset(new DownloadUIItem(item));
|
| -}
|
| -
|
| -void TestNotifier::NotifyDownloadInterrupted(const DownloadUIItem& item) {
|
| - last_notification_type_ = LastNotificationType::DOWNLOAD_INTERRUPTED;
|
| - download_item_.reset(new DownloadUIItem(item));
|
| -}
|
| -
|
| -void TestNotifier::NotifyDownloadCanceled(const DownloadUIItem& item) {
|
| - last_notification_type_ = LastNotificationType::DOWNLOAD_CANCELED;
|
| - download_item_.reset(new DownloadUIItem(item));
|
| -}
|
| -
|
| -void TestNotifier::Reset() {
|
| - last_notification_type_ = LastNotificationType::NONE;
|
| - download_item_.reset(nullptr);
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| -class DownloadNotifyingObserverTest : public testing::Test {
|
| - public:
|
| - DownloadNotifyingObserverTest();
|
| - ~DownloadNotifyingObserverTest() override;
|
| -
|
| - // testing::Test implementation:
|
| - void SetUp() override;
|
| -
|
| - TestNotifier* notifier() const { return notifier_; }
|
| - DownloadNotifyingObserver* observer() { return observer_.get(); }
|
| -
|
| - private:
|
| - TestNotifier* notifier_;
|
| - std::unique_ptr<DownloadNotifyingObserver> observer_;
|
| - std::unique_ptr<ClientPolicyController> policy_controller_;
|
| -};
|
| -
|
| -DownloadNotifyingObserverTest::DownloadNotifyingObserverTest() {}
|
| -
|
| -DownloadNotifyingObserverTest::~DownloadNotifyingObserverTest() {}
|
| -
|
| -void DownloadNotifyingObserverTest::SetUp() {
|
| - std::unique_ptr<TestNotifier> notifier(new TestNotifier);
|
| - policy_controller_.reset(new ClientPolicyController());
|
| - notifier_ = notifier.get();
|
| - observer_.reset(new DownloadNotifyingObserver(std::move(notifier),
|
| - policy_controller_.get()));
|
| -}
|
| -
|
| -TEST_F(DownloadNotifyingObserverTest, OnAddedAsAvailable) {
|
| - SavePageRequest request(kTestOfflineId, GURL(kTestUrl), kTestClientId,
|
| - kTestCreationTime, kTestUserRequested);
|
| - request.set_request_state(SavePageRequest::RequestState::AVAILABLE);
|
| - observer()->OnAdded(request);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_INTERRUPTED,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -}
|
| -
|
| -TEST_F(DownloadNotifyingObserverTest, OnAddedAsOffling) {
|
| - SavePageRequest request(kTestOfflineId, GURL(kTestUrl), kTestClientId,
|
| - kTestCreationTime, kTestUserRequested);
|
| - request.set_request_state(SavePageRequest::RequestState::OFFLINING);
|
| - observer()->OnAdded(request);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_PROGRESS,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| -}
|
| -
|
| -TEST_F(DownloadNotifyingObserverTest, OnAddedAsPaused) {
|
| - SavePageRequest request(kTestOfflineId, GURL(kTestUrl), kTestClientId,
|
| - kTestCreationTime, kTestUserRequested);
|
| - request.set_request_state(SavePageRequest::RequestState::PAUSED);
|
| - observer()->OnAdded(request);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_PAUSED,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| -}
|
| -
|
| -TEST_F(DownloadNotifyingObserverTest, OnChangedToPaused) {
|
| - SavePageRequest request(kTestOfflineId, GURL(kTestUrl), kTestClientId,
|
| - kTestCreationTime, kTestUserRequested);
|
| - request.set_request_state(SavePageRequest::RequestState::PAUSED);
|
| - observer()->OnChanged(request);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_PAUSED,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -}
|
| -
|
| -TEST_F(DownloadNotifyingObserverTest, OnChangedToAvailable) {
|
| - SavePageRequest request(kTestOfflineId, GURL(kTestUrl), kTestClientId,
|
| - kTestCreationTime, kTestUserRequested);
|
| - request.set_request_state(SavePageRequest::RequestState::AVAILABLE);
|
| - observer()->OnChanged(request);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_INTERRUPTED,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -}
|
| -
|
| -TEST_F(DownloadNotifyingObserverTest, OnChangedToOfflining) {
|
| - SavePageRequest request(kTestOfflineId, GURL(kTestUrl), kTestClientId,
|
| - kTestCreationTime, kTestUserRequested);
|
| - request.set_request_state(SavePageRequest::RequestState::OFFLINING);
|
| - observer()->OnChanged(request);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_PROGRESS,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -}
|
| -
|
| -TEST_F(DownloadNotifyingObserverTest, OnCompletedSuccess) {
|
| - SavePageRequest request(kTestOfflineId, GURL(kTestUrl), kTestClientId,
|
| - kTestCreationTime, kTestUserRequested);
|
| - observer()->OnCompleted(request,
|
| - RequestNotifier::BackgroundSavePageResult::SUCCESS);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_SUCCESSFUL,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -}
|
| -
|
| -TEST_F(DownloadNotifyingObserverTest, OnCompletedCanceled) {
|
| - SavePageRequest request(kTestOfflineId, GURL(kTestUrl), kTestClientId,
|
| - kTestCreationTime, kTestUserRequested);
|
| - observer()->OnCompleted(request,
|
| - RequestNotifier::BackgroundSavePageResult::REMOVED);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_CANCELED,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -}
|
| -
|
| -TEST_F(DownloadNotifyingObserverTest, OnCompletedFailure) {
|
| - SavePageRequest request(kTestOfflineId, GURL(kTestUrl), kTestClientId,
|
| - kTestCreationTime, kTestUserRequested);
|
| - observer()->OnCompleted(
|
| - request, RequestNotifier::BackgroundSavePageResult::PRERENDER_FAILURE);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_FAILED,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -
|
| - notifier()->Reset();
|
| - observer()->OnCompleted(
|
| - request, RequestNotifier::BackgroundSavePageResult::FOREGROUND_CANCELED);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_FAILED,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -
|
| - notifier()->Reset();
|
| - observer()->OnCompleted(
|
| - request, RequestNotifier::BackgroundSavePageResult::SAVE_FAILED);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_FAILED,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -
|
| - notifier()->Reset();
|
| - observer()->OnCompleted(request,
|
| - RequestNotifier::BackgroundSavePageResult::EXPIRED);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_FAILED,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -
|
| - notifier()->Reset();
|
| - observer()->OnCompleted(
|
| - request, RequestNotifier::BackgroundSavePageResult::RETRY_COUNT_EXCEEDED);
|
| - EXPECT_EQ(LastNotificationType::DOWNLOAD_FAILED,
|
| - notifier()->last_notification_type());
|
| - EXPECT_EQ(kTestGuid, notifier()->download_item()->guid);
|
| - EXPECT_EQ(GURL(kTestUrl), notifier()->download_item()->url);
|
| - EXPECT_EQ(kTestCreationTime, notifier()->download_item()->start_time);
|
| -}
|
| -
|
| -TEST_F(DownloadNotifyingObserverTest, NamespacesNotVisibleInUI) {
|
| - std::vector<std::string> name_spaces = {kBookmarkNamespace, kLastNNamespace,
|
| - kCCTNamespace, kDefaultNamespace};
|
| -
|
| - for (auto name_space : name_spaces) {
|
| - ClientId invisible_client_id(name_space, kTestGuid);
|
| - SavePageRequest request(kTestOfflineId, GURL(kTestUrl), invisible_client_id,
|
| - kTestCreationTime, kTestUserRequested);
|
| - observer()->OnAdded(request);
|
| - EXPECT_EQ(LastNotificationType::NONE, notifier()->last_notification_type());
|
| - }
|
| -}
|
| -
|
| -} // namespace offline_pages
|
|
|