mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-03 06:49:52 +08:00
test: fix cleanup order in ULTs
- program using device must be released before device is destroyed. Reset program unique_ptr in fixtures before device fixture tearDown() - reorder fixtures members to ensure correct order of destructors Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
35ef2f760b
commit
c28f0c72ea
@@ -35,9 +35,8 @@ class ProcessElfBinaryTests : public ::testing::Test {
|
||||
device = std::make_unique<MockClDevice>(MockDevice::createWithNewExecutionEnvironment<MockDevice>(nullptr, rootDeviceIndex));
|
||||
program = std::make_unique<MockProgram>(nullptr, false, toClDeviceVector(*device));
|
||||
}
|
||||
|
||||
std::unique_ptr<MockProgram> program;
|
||||
std::unique_ptr<ClDevice> device;
|
||||
std::unique_ptr<MockProgram> program;
|
||||
const uint32_t rootDeviceIndex = 1;
|
||||
};
|
||||
|
||||
@@ -121,8 +120,8 @@ class ProcessElfBinaryTestsWithBinaryType : public ::testing::TestWithParam<unsi
|
||||
device = std::make_unique<MockClDevice>(MockDevice::createWithNewExecutionEnvironment<MockDevice>(nullptr, rootDeviceIndex));
|
||||
program = std::make_unique<MockProgram>(nullptr, false, toClDeviceVector(*device));
|
||||
}
|
||||
std::unique_ptr<MockProgram> program;
|
||||
std::unique_ptr<ClDevice> device;
|
||||
std::unique_ptr<MockProgram> program;
|
||||
const uint32_t rootDeviceIndex = 1;
|
||||
};
|
||||
|
||||
|
||||
@@ -26,6 +26,9 @@ using namespace NEO;
|
||||
class MyMockProgram : public MockProgram {
|
||||
public:
|
||||
MyMockProgram() : MockProgram(toClDeviceVector(*(new MockClDevice(new MockDevice())))), device(this->clDevices[0]) {}
|
||||
~MyMockProgram() override {
|
||||
clDevices.clear();
|
||||
}
|
||||
|
||||
private:
|
||||
std::unique_ptr<ClDevice> device;
|
||||
|
||||
@@ -2800,8 +2800,8 @@ struct setProgramSpecializationConstantTests : public ::testing::Test {
|
||||
}
|
||||
|
||||
SpecializationConstantCompilerInterfaceMock *mockCompiler = nullptr;
|
||||
std::unique_ptr<SpecializationConstantProgramMock> mockProgram;
|
||||
MockClDevice device;
|
||||
std::unique_ptr<SpecializationConstantProgramMock> mockProgram;
|
||||
|
||||
int specValue = 1;
|
||||
};
|
||||
|
||||
@@ -24,6 +24,7 @@ void ProgramWithZebinFixture::TearDown() {
|
||||
program->setGlobalSurface(nullptr);
|
||||
program->setConstantSurface(nullptr);
|
||||
program->getKernelInfoArray(rootDeviceIndex).clear();
|
||||
program.reset();
|
||||
ProgramTests::TearDown();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user