blob: 4a598ce209e66c056a5dbb28ee839480168bb4fe [file] [log] [blame]
Peter Qiu1dbf9fd2015-01-09 13:36:55 -08001// Copyright 2015 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 APMANAGER_MOCK_PROCESS_FACTORY_H_
6#define APMANAGER_MOCK_PROCESS_FACTORY_H_
7
8#include <base/lazy_instance.h>
9#include <gmock/gmock.h>
10
11#include "apmanager/process_factory.h"
12
13namespace apmanager {
14
15class MockProcessFactory : public ProcessFactory {
16 public:
17 ~MockProcessFactory() override;
18
19 // This is a singleton. Use MockDHCPServerFactory::GetInstance()->Foo().
20 static MockProcessFactory* GetInstance();
21
22 MOCK_METHOD0(CreateProcess, chromeos::Process*());
23
24 protected:
25 MockProcessFactory();
26
27 private:
28 friend struct base::DefaultLazyInstanceTraits<MockProcessFactory>;
29
30 DISALLOW_COPY_AND_ASSIGN(MockProcessFactory);
31};
32
33} // namespace apmanager
34
35#endif // APMANAGER_MOCK_PROCESS_FACTORY_H_