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