Files
compute-runtime/opencl/test/unit_test/fixtures/program_fixture.h
Krystian Chmielewski d25a5c73f2 fix(ocl zebin): do not expose functions as kernels
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-12-05 12:39:18 +01:00

69 lines
1.6 KiB
C++

/*
* Copyright (C) 2018-2022 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#pragma once
#include "shared/source/helpers/file_io.h"
#include "shared/test/common/helpers/test_files.h"
#include "gtest/gtest.h"
#include <memory>
#include <string>
namespace NEO {
class Context;
class ClDeviceVector;
class MockContext;
class MockProgram;
class ClDevice;
class MockNeoProgram;
using cl_int = int;
class NEOProgramFixture {
public:
NEOProgramFixture();
~NEOProgramFixture();
protected:
void setUp();
void tearDown();
std::unique_ptr<MockContext> context;
std::unique_ptr<MockNeoProgram> program;
};
class ProgramFixture {
public:
void createProgramFromBinary(Context *pContext,
const ClDeviceVector &deviceVector,
const std::string &binaryFileName,
cl_int &retVal,
const std::string &options = "");
void createProgramFromBinary(Context *pContext,
const ClDeviceVector &deviceVector,
const std::string &binaryFileName,
const std::string &options = "");
void createProgramWithSource(Context *pContext,
const std::string &sourceFileName);
protected:
void setUp() {
}
void tearDown() {
cleanup();
}
void cleanup();
MockProgram *pProgram = nullptr;
std::unique_ptr<char[]> knownSource;
size_t knownSourceSize = 0u;
};
} // namespace NEO