From: yelini-jeong Date: Mon, 15 Nov 2021 08:39:22 +0000 (+0900) Subject: [Coverage] Increase code Coverage X-Git-Tag: submit/tizen/20220103.094045~12 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=99a95278628f782308c5597588e8eff83eb03946;p=platform%2Fadaptation%2Fnpu%2Ftrix-engine.git [Coverage] Increase code Coverage This patch increases coverage of npu memory blocks. Signed-off-by: yelini-jeong --- diff --git a/tests/unittests/ne_core_mem_test.cc b/tests/unittests/ne_core_mem_test.cc index 83e44b0..8776a04 100644 --- a/tests/unittests/ne_core_mem_test.cc +++ b/tests/unittests/ne_core_mem_test.cc @@ -88,6 +88,58 @@ TEST (ne_core_mem_test, create_instance_no_api_n) { EXPECT_EQ (mem.get (), nullptr); } +/** + * @brief test 0 size error handling + */ +TEST (ne_core_mem_test, memory_invalid_args_n) { + std::unique_ptr api = DriverAPI::createDriverAPI (NPUCOND_TRIV2_CONN_SOCIP, 0); + ASSERT_NE (api.get (), nullptr); + + /** + * 'resv_mem_size' decides which memory allocator will be used. + * 'resv_mem_size' = 0: MemDefault. + */ + ASSERT_EQ (setenv ("NE_RESV_MEM_SIZE", "0", 1), 0); + ASSERT_EQ (Conf::getInstance ().getResvMemSize (), (size_t) 0); + + std::unique_ptr mem = MemAllocator::createInstance (api.get ()); + EXPECT_NE (mem.get (), nullptr); + + void *addr; + + /** invalid arguments */ + EXPECT_EQ (mem->allocMemory (0, &addr), -EINVAL); + + int dmabuf = mem->allocMemory (4 * K, &addr); + EXPECT_GE (dmabuf, 0); + + /** invalid arguments */ + EXPECT_NE (mem->deallocMemory (dmabuf, 0, addr), 0); +} + +/** + * @brief test nullptr error handling + */ +TEST (ne_core_mem_test, alloc_no_impl_n) { + std::unique_ptr api = DriverAPI::createDriverAPI (NPUCOND_TRIV2_CONN_SOCIP, 0); + ASSERT_NE (api.get (), nullptr); + + /** + * 'resv_mem_size' decides which memory allocator will be used. + * 'resv_mem_size' = 0: MemDefault. + */ + ASSERT_EQ (setenv ("NE_RESV_MEM_SIZE", "0", 1), 0); + ASSERT_EQ (Conf::getInstance ().getResvMemSize (), (size_t) 0); + + std::unique_ptr mem = MemAllocator::createInstance (api.get ()); + EXPECT_NE (mem.get (), nullptr); + + HWmemImpl *impl = nullptr; + EXPECT_EQ (mem->allocModel (impl), nullptr); + EXPECT_EQ (mem->allocBuffer (impl), nullptr); + EXPECT_EQ (mem->allocSegmentTable (impl), nullptr); +} + /** * @brief main function for unit test */