blob: 0e3222371f543cbf13ff695ba462f4f2580b4614 [file] [log] [blame]
Thieu Le3426c8f2012-01-11 17:35:11 -08001// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
Chris Masone6515aab2011-10-12 16:19:09 -07002// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include <string>
6
7#include "shill/service.h"
8
9namespace shill {
10
11class ControlInterface;
12class Error;
13class EventDispatcher;
14class Manager;
Thieu Le3426c8f2012-01-11 17:35:11 -080015class Metrics;
Chris Masone6515aab2011-10-12 16:19:09 -070016
17// This is a simple Service subclass with all the pure-virutal methods stubbed
18class ServiceUnderTest : public Service {
19 public:
20 static const char kRpcId[];
21 static const char kStorageId[];
22
23 ServiceUnderTest(ControlInterface *control_interface,
24 EventDispatcher *dispatcher,
Thieu Le3426c8f2012-01-11 17:35:11 -080025 Metrics *metrics,
Chris Masone6515aab2011-10-12 16:19:09 -070026 Manager *manager);
27 virtual ~ServiceUnderTest();
28
Hristo Stefanoved2c28c2011-11-29 15:37:30 -080029 virtual std::string CalculateState(Error *error);
Chris Masone6515aab2011-10-12 16:19:09 -070030 virtual std::string GetRpcIdentifier() const;
Hristo Stefanoved2c28c2011-11-29 15:37:30 -080031 virtual std::string GetDeviceRpcId(Error *error);
Chris Masone6515aab2011-10-12 16:19:09 -070032 virtual std::string GetStorageIdentifier() const;
33
34 private:
35 DISALLOW_COPY_AND_ASSIGN(ServiceUnderTest);
36};
37
38} // namespace shill