6fdc1d0f6fa331c764ec2512e9b8a3f00008d308
[platform/upstream/dldt.git] / inference-engine / tests / unit / mocks / cpp_interfaces / impl / mock_async_infer_request_thread_safe_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
12 #include <cpp_interfaces/impl/ie_infer_async_request_thread_safe_internal.hpp>
13
14 using namespace InferenceEngine;
15
16 class MockAsyncInferRequestThreadSafeInternal : public AsyncInferRequestThreadSafeInternal {
17 public:
18     typedef std::shared_ptr<MockAsyncInferRequestThreadSafeInternal> Ptr;
19
20     void setRequestBusy() {
21         AsyncInferRequestThreadSafeInternal::setIsRequestBusy(true);
22     }
23
24     bool isRequestBusy() {
25         return AsyncInferRequestThreadSafeInternal::isRequestBusy();
26     }
27
28     MOCK_METHOD1(Wait, InferenceEngine::StatusCode(int64_t));
29
30     MOCK_METHOD0(StartAsync_ThreadUnsafe, void());
31
32     MOCK_METHOD1(GetUserData_ThreadUnsafe, void(void * *));
33
34     MOCK_METHOD1(SetUserData_ThreadUnsafe, void(void * ));
35
36     MOCK_METHOD0(Infer_ThreadUnsafe, void());
37
38     MOCK_CONST_METHOD1(GetPerformanceCounts_ThreadUnsafe, void(std::map<std::string, InferenceEngineProfileInfo>
39             &));
40
41     MOCK_METHOD2(GetBlob_ThreadUnsafe, void(
42             const char *name, Blob::Ptr
43             &));
44
45     MOCK_METHOD2(SetBlob_ThreadUnsafe, void(
46             const char *name,
47             const Blob::Ptr &));
48
49     MOCK_METHOD1(SetCompletionCallback_ThreadUnsafe, void(IInferRequest::CompletionCallback));
50
51         MOCK_METHOD1(SetBatch, void(int));
52         MOCK_METHOD1(SetBatch_ThreadUnsafe, void(int));
53 };