blob: bfb334894ed7d4feb6fd1ff5658ac26a664e1217 [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*));
Patrick Venture8bc11772019-06-04 07:20:24 -070023 MOCK_METHOD2(stat, bool(const std::string&, BlobMeta*));
24 MOCK_METHOD2(stat, bool(uint16_t, BlobMeta*));
Patrick Ventureef3aead2018-09-12 08:53:29 -070025 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