Publishing R5 content (#72)
[platform/upstream/dldt.git] / inference-engine / tests / unit / mocks / mock_iasync_infer_request.hpp
1 // Copyright (C) 2018 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
3 //
4
5 /**
6  * \brief header file for MockIInferRequest
7  * \file mock_iinfer_request.hpp
8  */
9 #pragma once
10
11 #include "ie_iexecutable_network.hpp"
12 #include <gmock/gmock-generated-function-mockers.h>
13
14 using namespace InferenceEngine;
15
16 class MockIInferRequest : public IInferRequest {
17 public:
18     using Ptr = std::shared_ptr<MockIInferRequest>;
19     MOCK_QUALIFIED_METHOD1(StartAsync, noexcept, StatusCode(ResponseDesc*));
20     MOCK_QUALIFIED_METHOD2(Wait, noexcept, StatusCode(int64_t millis_timeout, ResponseDesc*));
21     MOCK_QUALIFIED_METHOD2(GetUserData, noexcept, StatusCode(void**, ResponseDesc*));
22     MOCK_QUALIFIED_METHOD2(SetUserData, noexcept, StatusCode(void*, ResponseDesc*));
23     MOCK_QUALIFIED_METHOD1(SetCompletionCallback, noexcept, StatusCode(IInferRequest::CompletionCallback));
24     MOCK_QUALIFIED_METHOD0(Release, noexcept, void ());
25     MOCK_QUALIFIED_METHOD1(Infer, noexcept, StatusCode(ResponseDesc*));
26     MOCK_QUALIFIED_METHOD2(GetPerformanceCounts, const noexcept,
27                            StatusCode(std::map<std::string, InferenceEngineProfileInfo> &perfMap, ResponseDesc*));
28     MOCK_QUALIFIED_METHOD3(GetBlob, noexcept, StatusCode(const char*, Blob::Ptr&, ResponseDesc*));
29     MOCK_QUALIFIED_METHOD3(SetBlob, noexcept, StatusCode(const char*, const Blob::Ptr&, ResponseDesc*));
30         MOCK_QUALIFIED_METHOD2(SetBatch, noexcept, StatusCode(int batch, ResponseDesc*));
31 };