Skip to content

Commit 059389b

Browse files
rocm-devopssystems-assistant[bot]
authored andcommitted
Adding more unit tests to reach 80%
* Adding more unit tests to reach 80% * Adding pmc and command builder tests * tests for spm, sqtt and trace config * removing non-existent struct members from test * Adding logger tests * aqlprofile_v2 tests * spm builder tests * Addressed feedback [rocm-systems] ROCm/rocm-systems#177 (commit 5b9ba5b)
1 parent d419b76 commit 059389b

15 files changed

+1953
-3
lines changed

src/CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,4 +73,11 @@ add_custom_target( mygen
7373
COMMAND sh -xc "sed 's/_GPU_BLOCKINFO_H_/SRC_DEF_GPU_BLOCK_INFO_H_/' ${BINFO_DEF} >>${BINFO_HEADER}"
7474
)
7575

76+
7677
add_subdirectory(src/core)
78+
if(AQLPROFILE_BUILD_TESTS)
79+
enable_testing()
80+
include(CTest)
81+
add_subdirectory(src/util/tests)
82+
add_subdirectory(src/pm4/tests)
83+
endif()

src/core/tests/CMakeLists.txt

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,3 +123,99 @@ gtest_add_tests(
123123
set_tests_properties(
124124
${counters-test_TESTS} PROPERTIES TIMEOUT 45 LABELS "unittests" FAIL_REGULAR_EXPRESSION
125125
"${AQLPROFILE_DEFAULT_FAIL_REGEX}")
126+
127+
# Add tests for pm4 factory
128+
add_executable(pm4-factory-test)
129+
SET(AQLPROFILE_PM4_FACTORY_SOURCES
130+
${CMAKE_CURRENT_SOURCE_DIR}/pm4_factory_tests.cpp
131+
${CMAKE_CURRENT_SOURCE_DIR}/../pm4_factory.cpp
132+
)
133+
target_sources(pm4-factory-test PRIVATE ${AQLPROFILE_PM4_FACTORY_SOURCES})
134+
target_include_directories(pm4-factory-test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${LIB_DIR} ${LIB_DIR}/core/include)
135+
target_link_libraries(
136+
pm4-factory-test
137+
PRIVATE
138+
hsa-runtime64::hsa-runtime64
139+
GTest::gtest
140+
GTest::gtest_main
141+
GTest::gmock
142+
GTest::gmock_main)
143+
144+
gtest_add_tests(
145+
TARGET pm4-factory-test
146+
SOURCES ${AQLPROFILE_PM4_FACTORY_SOURCES}
147+
TEST_LIST pm4-factory-test_TESTS
148+
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
149+
set_tests_properties(
150+
${pm4-factory-test_TESTS} PROPERTIES TIMEOUT 45 LABELS "unittests" FAIL_REGULAR_EXPRESSION
151+
"${AQLPROFILE_DEFAULT_FAIL_REGEX}")
152+
153+
# Add tests for logger
154+
add_executable(logger-test)
155+
SET(AQLPROFILE_LOGGER_SOURCES
156+
${CMAKE_CURRENT_SOURCE_DIR}/logger_tests.cpp
157+
)
158+
target_sources(logger-test PRIVATE ${AQLPROFILE_LOGGER_SOURCES})
159+
target_include_directories(logger-test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${LIB_DIR} ${LIB_DIR}/core/include)
160+
target_link_libraries(
161+
logger-test
162+
PRIVATE
163+
GTest::gtest
164+
GTest::gtest_main
165+
GTest::gmock
166+
GTest::gmock_main
167+
${CMAKE_DL_LIBS})
168+
169+
gtest_add_tests(
170+
TARGET logger-test
171+
SOURCES ${AQLPROFILE_LOGGER_SOURCES}
172+
TEST_LIST logger-test_TESTS
173+
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
174+
175+
set_tests_properties(
176+
${logger-test_TESTS} PROPERTIES TIMEOUT 45 LABELS "unittests" FAIL_REGULAR_EXPRESSION
177+
"${AQLPROFILE_DEFAULT_FAIL_REGEX}")
178+
179+
# Add tests for aql profile v2 header
180+
add_executable(aql-profile-v2-test)
181+
SET(AQLPROFILE_V2_SOURCES
182+
${CMAKE_CURRENT_SOURCE_DIR}/aql_profile_v2_tests.cpp
183+
${CMAKE_CURRENT_SOURCE_DIR}/../counters.cpp
184+
${CMAKE_CURRENT_SOURCE_DIR}/../memorymanager.cpp
185+
${CMAKE_CURRENT_SOURCE_DIR}/../populate_aql.cpp
186+
${CMAKE_CURRENT_SOURCE_DIR}/../pm4_factory.cpp
187+
${CMAKE_CURRENT_SOURCE_DIR}/../ip_offset_table_init.cpp
188+
${CMAKE_CURRENT_SOURCE_DIR}/../parse_ip_discovery.cpp
189+
${CMAKE_CURRENT_SOURCE_DIR}/../navi_reg_init.cpp
190+
${CMAKE_CURRENT_SOURCE_DIR}/../vega20_reg_init.cpp
191+
${CMAKE_CURRENT_SOURCE_DIR}/../spm_data.cpp
192+
${CMAKE_CURRENT_SOURCE_DIR}/../gfx12_factory.cpp
193+
${CMAKE_CURRENT_SOURCE_DIR}/../gfx11_factory.cpp
194+
${CMAKE_CURRENT_SOURCE_DIR}/../gfx10_factory.cpp
195+
${CMAKE_CURRENT_SOURCE_DIR}/../gfx940_factory.cpp
196+
${CMAKE_CURRENT_SOURCE_DIR}/../gfx908_factory.cpp
197+
${CMAKE_CURRENT_SOURCE_DIR}/../gfx90a_factory.cpp
198+
${CMAKE_CURRENT_SOURCE_DIR}/../gfx9_factory.cpp
199+
200+
)
201+
target_sources(aql-profile-v2-test PRIVATE ${AQLPROFILE_V2_SOURCES})
202+
target_include_directories(aql-profile-v2-test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${LIB_DIR} ${LIB_DIR}/core/include)
203+
target_link_libraries(
204+
aql-profile-v2-test
205+
PRIVATE
206+
hsa-runtime64::hsa-runtime64
207+
GTest::gtest
208+
GTest::gtest_main
209+
GTest::gmock
210+
GTest::gmock_main)
211+
212+
gtest_add_tests(
213+
TARGET aql-profile-v2-test
214+
SOURCES ${AQLPROFILE_V2_SOURCES}
215+
TEST_LIST aql-profile-v2-test_TESTS
216+
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
217+
218+
set_tests_properties(
219+
${aql-profile-v2-test_TESTS} PROPERTIES TIMEOUT 45 LABELS "unittests" FAIL_REGULAR_EXPRESSION
220+
"${AQLPROFILE_DEFAULT_FAIL_REGEX}")
221+

0 commit comments

Comments
 (0)