mock_download_item.h revision 2a99a7e74a7f215066514fe81d2bfa6639d9eddd
16849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg// Copyright (c) 2012 The Chromium Authors. All rights reserved.
26849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg// Use of this source code is governed by a BSD-style license that can be
35d35343d12ab462100c9eec50a579b73463e465aJeremy Huddleston// found in the LICENSE file.
46849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg
56849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg#ifndef CONTENT_PUBLIC_TEST_MOCK_DOWNLOAD_ITEM_H_
66849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg#define CONTENT_PUBLIC_TEST_MOCK_DOWNLOAD_ITEM_H_
76849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg
86849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg#include "base/time.h"
96849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg#include "content/public/browser/download_id.h"
106849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg#include "content/public/browser/download_interrupt_reasons.h"
116849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg#include "content/public/browser/download_item.h"
126849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg#include "googleurl/src/gurl.h"
136849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg#include "testing/gmock/include/gmock/gmock.h"
146849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg#include "testing/gtest/include/gtest/gtest.h"
156849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg
166849916170c0275c13510251a7b217c20f2b993eKristian Høgsbergnamespace content {
176849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg
186849916170c0275c13510251a7b217c20f2b993eKristian Høgsbergclass MockDownloadItem : public DownloadItem {
196849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg public:
206849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MockDownloadItem();
216849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  virtual ~MockDownloadItem();
226849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD1(AddObserver, void(DownloadItem::Observer*));
236849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD1(RemoveObserver, void(DownloadItem::Observer*));
246849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD0(UpdateObservers, void());
256849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD0(DangerousDownloadValidated, void());
266849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD0(Pause, void());
276849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD0(Resume, void());
286849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD0(ResumeInterruptedDownload, void());
296849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD1(Cancel, void(bool));
306849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD1(Delete, void(DeleteReason));
316849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD0(Remove, void());
326849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD0(OpenDownload, void());
336849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD0(ShowDownloadInShell, void());
346849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetId, int32());
356849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetGlobalId, DownloadId());
365d35343d12ab462100c9eec50a579b73463e465aJeremy Huddleston  MOCK_CONST_METHOD0(GetState, DownloadState());
37559e4f8ebcb186b491d7d687ac43f22a62448fc1Jeremy Huddleston  MOCK_CONST_METHOD0(GetLastReason, DownloadInterruptReason());
385d35343d12ab462100c9eec50a579b73463e465aJeremy Huddleston  MOCK_CONST_METHOD0(IsPaused, bool());
395d35343d12ab462100c9eec50a579b73463e465aJeremy Huddleston  MOCK_CONST_METHOD0(IsTemporary, bool());
405d35343d12ab462100c9eec50a579b73463e465aJeremy Huddleston  MOCK_CONST_METHOD0(IsPartialDownload, bool());
415d35343d12ab462100c9eec50a579b73463e465aJeremy Huddleston  MOCK_CONST_METHOD0(IsInProgress, bool());
42559e4f8ebcb186b491d7d687ac43f22a62448fc1Jeremy Huddleston  MOCK_CONST_METHOD0(IsCancelled, bool());
435d35343d12ab462100c9eec50a579b73463e465aJeremy Huddleston  MOCK_CONST_METHOD0(IsInterrupted, bool());
445d35343d12ab462100c9eec50a579b73463e465aJeremy Huddleston  MOCK_CONST_METHOD0(IsComplete, bool());
456849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetURL, const GURL&());
466849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetUrlChain, const std::vector<GURL>&());
476849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetOriginalUrl, const GURL&());
48c6cf82fb553405bee241170f6e51cafd751d46eaJeremy Huddleston  MOCK_CONST_METHOD0(GetReferrerUrl, const GURL&());
496849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetSuggestedFilename, std::string());
506849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetContentDisposition, std::string());
516849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetMimeType, std::string());
526849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetOriginalMimeType, std::string());
536849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetReferrerCharset, std::string());
546849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetRemoteAddress, std::string());
555d35343d12ab462100c9eec50a579b73463e465aJeremy Huddleston  MOCK_CONST_METHOD0(HasUserGesture, bool());
566849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetTransitionType, PageTransition());
577c5f37c032231ad144a8a5c5a0b18f3e26c0aea7Jeremy Huddleston  MOCK_CONST_METHOD0(GetLastModifiedTime, const std::string&());
586849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetETag, const std::string&());
596849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(IsSavePackageDownload, bool());
606849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetFullPath, const base::FilePath&());
616849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetTargetFilePath, const base::FilePath&());
625d35343d12ab462100c9eec50a579b73463e465aJeremy Huddleston  MOCK_CONST_METHOD0(GetForcedFilePath, const base::FilePath&());
636849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetUserVerifiedFilePath, base::FilePath());
64a128355ecb5b782a69461a04991e4cffb32249dbJeremy Huddleston  MOCK_CONST_METHOD0(GetFileNameToReportUser, base::FilePath());
65a128355ecb5b782a69461a04991e4cffb32249dbJeremy Huddleston  MOCK_CONST_METHOD0(GetTargetDisposition, TargetDisposition());
666849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetHash, const std::string&());
676849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetHashState, const std::string&());
686849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetFileExternallyRemoved, bool());
696849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(IsDangerous, bool());
706849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD0(GetDangerType, DownloadDangerType());
716849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD1(TimeRemaining, bool(base::TimeDelta*));
725c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(CurrentSpeed, int64());
735c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(PercentComplete, int());
745c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(AllDataSaved, bool());
755c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(GetTotalBytes, int64());
765c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(GetReceivedBytes, int64());
775c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(GetStartTime, base::Time());
785c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(GetEndTime, base::Time());
795c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_METHOD0(CanShowInFolder, bool());
805c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_METHOD0(CanOpenDownload, bool());
815c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_METHOD0(ShouldOpenFileBasedOnExtension, bool());
825c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(GetOpenWhenComplete, bool());
835c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_METHOD0(GetAutoOpened, bool());
845c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(GetOpened, bool());
855c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(GetBrowserContext, BrowserContext*());
865c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_CONST_METHOD0(GetWebContents, WebContents*());
875c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_METHOD1(OnContentCheckCompleted, void(DownloadDangerType));
885c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_METHOD1(SetOpenWhenComplete, void(bool));
895c44c1348ea13f51a1616968daa7034bb48e42b1Jeremy Huddleston  MOCK_METHOD1(SetIsTemporary, void(bool));
906849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD1(SetOpened, void(bool));
916849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_METHOD1(SetDisplayName, void(const base::FilePath&));
926849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg  MOCK_CONST_METHOD1(DebugString, std::string(bool));
936849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg};
946849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg
956849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg}  // namespace content
966849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg
976849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg#endif  // CONTENT_PUBLIC_TEST_MOCK_DOWNLOAD_ITEM_H_
986849916170c0275c13510251a7b217c20f2b993eKristian Høgsberg