Files
compute-runtime/opencl/test/unit_test/fixtures/memory_management_fixture.h
Mateusz Jablonski ee5ebde417 Add absolute include paths
Change-Id: I5b8631603b0f0b2ed8eb1a61f7e7770b27867423
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-24 01:21:00 +01:00

43 lines
1.1 KiB
C++

/*
* Copyright (C) 2017-2020 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#pragma once
#include "shared/test/unit_test/helpers/memory_management.h"
#include "gtest/gtest.h"
#include <functional>
struct MemoryManagementFixture {
MemoryManagementFixture() {
MemoryManagement::detailedAllocationLoggingActive = true;
};
virtual ~MemoryManagementFixture() { MemoryManagement::detailedAllocationLoggingActive = false; };
// Typical Fixture methods
virtual void SetUp(void);
virtual void TearDown(void);
// Helper methods
void setFailingAllocation(size_t allocation);
void clearFailingAllocation(void);
::testing::AssertionResult assertLeak(
const char *leak_expr,
size_t leakIndex);
void checkForLeaks(void);
typedef std::function<void(size_t)> InjectedFunction;
void injectFailures(InjectedFunction &method, uint32_t maxIndex = 0);
void injectFailureOnIndex(InjectedFunction &method, uint32_t Index);
// Used to keep track of # of allocations prior at SetUp time
// Gets compared to # at TearDown time
size_t previousAllocations;
};