Add Unit test for deferred deleter

- test run() function

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
This commit is contained in:
Mateusz Hoppe
2022-09-30 09:41:23 +00:00
committed by Compute-Runtime-Automation
parent c012034c19
commit 4292a47c53
3 changed files with 28 additions and 3 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2019-2021 Intel Corporation
* Copyright (C) 2019-2022 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
@@ -7,6 +7,8 @@
#include "shared/source/helpers/deferred_deleter_helper.h"
#include "shared/test/common/helpers/debug_manager_state_restore.h"
#include "shared/test/common/mocks/mock_deferrable_deletion.h"
#include "shared/test/common/mocks/mock_deferred_deleter.h"
#include "gtest/gtest.h"
@@ -21,4 +23,15 @@ TEST(deferredDeleterHelper, DeferredDeleterIsEnabledWhenCheckIFDeferrDeleterIsEn
DebugManagerStateRestore dbgRestore;
DebugManager.flags.EnableDeferredDeleter.set(true);
EXPECT_TRUE(isDeferredDeleterEnabled());
}
TEST(DeferredDeleter, GivenNoShouldStopWhenRunIsExecutingThenQueueIsProcessedInTheLoop) {
MockDeferredDeleter deleter;
deleter.stopAfter3loopsInRun = true;
auto deletion = new MockDeferrableDeletion();
deleter.DeferredDeleter::deferDeletion(deletion);
MockDeferredDeleter::run(&deleter);
EXPECT_EQ(3, deleter.shouldStopCalled);
}