blob: 127e01d43508c2cf38f5c5f44361e535e0d4a546 [file] [log] [blame]
// Copyright 2014 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef BUFFET_STATES_MOCK_STATE_CHANGE_QUEUE_INTERFACE_H_
#define BUFFET_STATES_MOCK_STATE_CHANGE_QUEUE_INTERFACE_H_
#include <vector>
#include <gmock/gmock.h>
#include "buffet/states/state_change_queue_interface.h"
namespace buffet {
class MockStateChangeQueueInterface : public StateChangeQueueInterface {
public:
MOCK_CONST_METHOD0(IsEmpty, bool());
MOCK_METHOD2(NotifyPropertiesUpdated,
bool(base::Time timestamp,
native_types::Object changed_properties));
MOCK_METHOD0(GetAndClearRecordedStateChanges, std::vector<StateChange>());
MOCK_CONST_METHOD0(GetLastStateChangeId, UpdateID());
MOCK_METHOD1(MockAddOnStateUpdatedCallback,
base::CallbackList<void(UpdateID)>::Subscription*(
const base::Callback<void(UpdateID)>&));
MOCK_METHOD1(NotifyStateUpdatedOnServer, void(UpdateID));
private:
Token AddOnStateUpdatedCallback(
const base::Callback<void(UpdateID)>& callback) override {
return Token{MockAddOnStateUpdatedCallback(callback)};
}
};
} // namespace buffet
#endif // BUFFET_STATES_MOCK_STATE_CHANGE_QUEUE_INTERFACE_H_