blob: a2c80f4c51d97df5b4b4bb91291b594aa77d735f [file] [log] [blame]
Jay Srinivasan6f6ea002012-12-14 11:26:28 -08001// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_MOCK_PAYLOAD_STATE_H__
6#define CHROMEOS_PLATFORM_UPDATE_ENGINE_MOCK_PAYLOAD_STATE_H__
7
8#include "gmock/gmock.h"
Jay Srinivasan2b5a0f02012-12-19 17:25:56 -08009#include "update_engine/omaha_request_action.h"
10#include "update_engine/payload_state_interface.h"
Jay Srinivasan6f6ea002012-12-14 11:26:28 -080011
12namespace chromeos_update_engine {
13
Jay Srinivasan2b5a0f02012-12-19 17:25:56 -080014class MockPayloadState: public PayloadStateInterface {
Jay Srinivasan6f6ea002012-12-14 11:26:28 -080015 public:
Jay Srinivasan2b5a0f02012-12-19 17:25:56 -080016 bool Initialize(PrefsInterface* prefs) {
17 return true;
18 }
19
Jay Srinivasan08262882012-12-28 19:29:43 -080020 // Significant methods.
Jay Srinivasan2b5a0f02012-12-19 17:25:56 -080021 MOCK_METHOD1(SetResponse, void(const OmahaResponse& response));
22 MOCK_METHOD0(DownloadComplete, void());
23 MOCK_METHOD1(DownloadProgress, void(size_t count));
David Zeuthen9a017f22013-04-11 16:10:26 -070024 MOCK_METHOD0(UpdateSucceeded, void());
Jay Srinivasan6f6ea002012-12-14 11:26:28 -080025 MOCK_METHOD1(UpdateFailed, void(ActionExitCode error));
Jay Srinivasan08262882012-12-28 19:29:43 -080026 MOCK_METHOD0(ShouldBackoffDownload, bool());
27
28 // Getters.
29 MOCK_METHOD0(GetResponseSignature, std::string());
Jay Srinivasan2b5a0f02012-12-19 17:25:56 -080030 MOCK_METHOD0(GetPayloadAttemptNumber, uint32_t());
31 MOCK_METHOD0(GetUrlIndex, uint32_t());
32 MOCK_METHOD0(GetUrlFailureCount, uint32_t());
Jay Srinivasan08262882012-12-28 19:29:43 -080033 MOCK_METHOD0(GetBackoffExpiryTime, base::Time());
David Zeuthen9a017f22013-04-11 16:10:26 -070034 MOCK_METHOD0(GetUpdateDuration, base::TimeDelta());
35 MOCK_METHOD0(GetUpdateDurationUptime, base::TimeDelta());
Jay Srinivasan6f6ea002012-12-14 11:26:28 -080036};
37
38} // namespace chromeos_update_engine
39
40#endif // CHROMEOS_PLATFORM_UPDATE_ENGINE_MOCK_PAYLOAD_STATE_H__