blob: 73d4d077bb0fd4a35e8b9e368ef4b82de9d1fd5a [file] [log] [blame]
Patrick Ventureef3aead2018-09-12 08:53:29 -07001#pragma once
2
Patrick Venturecd8dab42019-01-15 19:57:38 -08003#include "manager.hpp"
4
Patrick Ventureaceb4ba2018-09-27 14:50:37 -07005#include <blobs-ipmid/blobs.hpp>
Patrick Ventureef3aead2018-09-12 08:53:29 -07006#include <memory>
7#include <string>
8
9#include <gmock/gmock.h>
10
11namespace blobs
12{
13
14class ManagerMock : public ManagerInterface
15{
16 public:
17 virtual ~ManagerMock() = default;
18
19 MOCK_METHOD1(registerHandler, bool(std::unique_ptr<GenericBlobInterface>));
20 MOCK_METHOD0(buildBlobList, uint32_t());
21 MOCK_METHOD1(getBlobId, std::string(uint32_t));
22 MOCK_METHOD3(open, bool(uint16_t, const std::string&, uint16_t*));
23 MOCK_METHOD2(stat, bool(const std::string&, struct BlobMeta*));
24 MOCK_METHOD2(stat, bool(uint16_t, struct BlobMeta*));
25 MOCK_METHOD2(commit, bool(uint16_t, const std::vector<uint8_t>&));
26 MOCK_METHOD1(close, bool(uint16_t));
27 MOCK_METHOD3(read, std::vector<uint8_t>(uint16_t, uint32_t, uint32_t));
28 MOCK_METHOD3(write, bool(uint16_t, uint32_t, const std::vector<uint8_t>&));
29 MOCK_METHOD1(deleteBlob, bool(const std::string&));
Patrick Venture5c4b17b2018-10-04 10:32:22 -070030 MOCK_METHOD3(writeMeta,
31 bool(uint16_t, uint32_t, const std::vector<uint8_t>&));
Patrick Ventureef3aead2018-09-12 08:53:29 -070032};
Patrick Venture03f415e2018-10-04 10:10:58 -070033
34/*
35 * Provide a one-off implementation for now.
36 * To test this, set managerReturned as you need.
37 */
38ManagerInterface* managerReturned;
39
40ManagerInterface* getBlobManager()
41{
42 return managerReturned;
43}
44
Patrick Ventureef3aead2018-09-12 08:53:29 -070045} // namespace blobs