Publishing R3
[platform/upstream/dldt.git] / inference-engine / tests / unit / mocks / cpp_interfaces / impl / mock_async_infer_request_internal.hpp
1 // Copyright (C) 2018 Intel Corporation
2 //
3 // SPDX-License-Identifier: Apache-2.0
4 //
5
6 #pragma once
7
8 #include <string>
9 #include <vector>
10
11 #include <gmock/gmock.h>
12 #include "cpp_interfaces/impl/mock_infer_request_internal.hpp"
13
14 #include <ie_iinfer_request.hpp>
15 #include <cpp_interfaces/impl/ie_infer_async_request_internal.hpp>
16
17 using namespace InferenceEngine;
18
19 class MockAsyncInferRequestInternal : public AsyncInferRequestInternal {
20 public:
21     using AsyncInferRequestInternal::SetBlob;
22     MockAsyncInferRequestInternal(InputsDataMap networkInputs, OutputsDataMap networkOutputs)
23             : AsyncInferRequestInternal(networkInputs, networkOutputs) {}
24
25     MOCK_METHOD0(StartAsyncImpl, void());
26     MOCK_METHOD1(Wait, InferenceEngine::StatusCode(int64_t));
27     MOCK_METHOD1(GetUserData, void(void **));
28     MOCK_METHOD1(SetUserData, void(void *));
29     MOCK_METHOD0(InferImpl, void());
30     MOCK_CONST_METHOD1(GetPerformanceCounts, void(std::map<std::string, InferenceEngineProfileInfo> &));
31     MOCK_METHOD1(setNetworkInputs, void(InputsDataMap));
32     MOCK_METHOD1(setNetworkOutputs, void(OutputsDataMap));
33     MOCK_METHOD2(GetBlob, void(const char *name, Blob::Ptr &));
34     MOCK_METHOD1(SetCompletionCallback, void(IInferRequest::CompletionCallback));
35 };