blob: 73d4d077bb0fd4a35e8b9e368ef4b82de9d1fd5a [file] [log] [blame]
#pragma once
#include "manager.hpp"
#include <blobs-ipmid/blobs.hpp>
#include <memory>
#include <string>
#include <gmock/gmock.h>
namespace blobs
{
class ManagerMock : public ManagerInterface
{
public:
virtual ~ManagerMock() = default;
MOCK_METHOD1(registerHandler, bool(std::unique_ptr<GenericBlobInterface>));
MOCK_METHOD0(buildBlobList, uint32_t());
MOCK_METHOD1(getBlobId, std::string(uint32_t));
MOCK_METHOD3(open, bool(uint16_t, const std::string&, uint16_t*));
MOCK_METHOD2(stat, bool(const std::string&, struct BlobMeta*));
MOCK_METHOD2(stat, bool(uint16_t, struct BlobMeta*));
MOCK_METHOD2(commit, bool(uint16_t, const std::vector<uint8_t>&));
MOCK_METHOD1(close, bool(uint16_t));
MOCK_METHOD3(read, std::vector<uint8_t>(uint16_t, uint32_t, uint32_t));
MOCK_METHOD3(write, bool(uint16_t, uint32_t, const std::vector<uint8_t>&));
MOCK_METHOD1(deleteBlob, bool(const std::string&));
MOCK_METHOD3(writeMeta,
bool(uint16_t, uint32_t, const std::vector<uint8_t>&));
};
/*
* Provide a one-off implementation for now.
* To test this, set managerReturned as you need.
*/
ManagerInterface* managerReturned;
ManagerInterface* getBlobManager()
{
return managerReturned;
}
} // namespace blobs