Code coverage improvements (#1665)
* Increased max stack size to 640 * Added new binary for executing unit tests Added new unit tests for argcheck.cc and alt_rsmi.cc files Modified the method to execute unit tests to cover static methods by using a bash script to convert static to non-static functions and variables on the fly restricted to debug build type.
이 커밋은 다음에 포함됨:
@@ -0,0 +1,45 @@
|
||||
/*************************************************************************
|
||||
* Copyright (c) 2022 Advanced Micro Devices, Inc. All rights reserved.
|
||||
*
|
||||
* See LICENSE.txt for license information
|
||||
************************************************************************/
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
#include "EnvVars.hpp"
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
::testing::InitGoogleTest(&argc, argv);
|
||||
RcclUnitTesting::EnvVars ev;
|
||||
ev.ShowConfig();
|
||||
int retCode = RUN_ALL_TESTS();
|
||||
|
||||
// Show timing information
|
||||
|
||||
if (ev.showTiming)
|
||||
{
|
||||
size_t totalTimeMsec = 0;
|
||||
fflush(stdout);
|
||||
printf("[ TIMING ] %-20s: %-20s: %10s ms (%s)\n", "TEST SUITE", "TEST NAME", "TIME", "STATUS");
|
||||
auto unitTest = ::testing::UnitTest::GetInstance();
|
||||
for (int i = 0; i < unitTest->total_test_suite_count(); i++)
|
||||
{
|
||||
auto suiteInfo = unitTest->GetTestSuite(i);
|
||||
if (!suiteInfo->should_run()) continue;
|
||||
|
||||
for (int j = 0; j < suiteInfo->total_test_count(); j++)
|
||||
{
|
||||
auto testInfo = suiteInfo->GetTestInfo(j);
|
||||
if (!testInfo->should_run()) continue;
|
||||
auto testResult = testInfo->result();
|
||||
if (testResult->Skipped()) continue;
|
||||
printf("[ TIMING ] %-20s: %-20s: %10.2f sec (%4s)\n", testInfo->test_suite_name(), testInfo->name(), testResult->elapsed_time() / 1000.0, testResult->Passed() ? "PASS" : "FAIL");
|
||||
}
|
||||
printf("[ TIMING ] %-20s: %-20s: %10.2f sec (%4s)\n", suiteInfo->name(), "TOTAL", suiteInfo->elapsed_time() / 1000.0, suiteInfo->Passed() ? "PASS" : "FAIL");
|
||||
totalTimeMsec += suiteInfo->elapsed_time();
|
||||
}
|
||||
printf("[ TIMING ] Total time: %10.2f minutes\n", totalTimeMsec / (60 * 1000.0));
|
||||
}
|
||||
return retCode;
|
||||
}
|
||||
|
||||
새 이슈에서 참조
사용자 차단