1 /*
2  * Copyright (C) 2018-2021 Intel Corporation
3  *
4  * SPDX-License-Identifier: MIT
5  *
6  */
7 
8 #pragma once
9 #include "opencl/source/command_queue/command_queue.h"
10 #include "opencl/source/context/context.h"
11 #include "opencl/source/program/program.h"
12 #include "opencl/test/unit_test/perf_tests/fixtures/command_queue_fixture.h"
13 #include "opencl/test/unit_test/perf_tests/fixtures/device_fixture.h"
14 #include "opencl/test/unit_test/perf_tests/fixtures/platform_fixture.h"
15 #include "opencl/test/unit_test/perf_tests/perf_test_utils.h"
16 
17 #include "gtest/gtest.h"
18 
19 namespace NEO {
20 
21 struct api_fixture : public PlatformFixture,
22                      public CommandQueueHwFixture,
23                      public DeviceFixture {
24   public:
25     api_fixture(void);
26 
27   protected:
28     virtual void SetUp();
29     virtual void TearDown();
30 
31     cl_int retVal;
32     size_t retSize;
33 
34     CommandQueue *pCommandQueue;
35     Context *pContext;
36     Kernel *pKernel;
37     Program *pProgram;
38 };
39 
40 struct api_tests : public api_fixture,
41                    public ::testing::Test {
SetUpapi_tests42     void SetUp() override {
43         api_fixture::SetUp();
44     }
TearDownapi_tests45     void TearDown() override {
46         api_fixture::TearDown();
47     }
48 };
49 } // namespace NEO
50