// 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 THERMALD_MOCK_TEMPERATURE_SENSOR_H_
#define THERMALD_MOCK_TEMPERATURE_SENSOR_H_

#include "gmock/gmock.h"

#include "thermald/temperature_sensor_common.h"

namespace thermald {

class MockTemperatureSensor : public TemperatureSensorCommon {
 public:
  MockTemperatureSensor(const std::string &name) :
      TemperatureSensorCommon(name) {};

  virtual ~MockTemperatureSensor() {}

  MOCK_METHOD1(ReadTemperature, bool(int* value));
};

}  // namespace thermald

#endif  // THERMALD_MOCK_TEMPERATURE_SENSOR_H_
