Skip to content
Snippets Groups Projects
Commit 4e625c70 authored by Jonas Jucker's avatar Jonas Jucker
Browse files

add g-test for backtrace

parent 4fe21cd0
No related branches found
No related tags found
1 merge request!46Test util_backtrace
Pipeline #50876 failed
...@@ -31,6 +31,7 @@ include("${PROJECT_SOURCE_DIR}/cmake/gtest_helper.cmake") ...@@ -31,6 +31,7 @@ include("${PROJECT_SOURCE_DIR}/cmake/gtest_helper.cmake")
add_icon_c_test(UtilArithmeticExprTest ctest_util_arithmetic_expr.cpp) add_icon_c_test(UtilArithmeticExprTest ctest_util_arithmetic_expr.cpp)
add_icon_c_test(UtilHashTest ctest_util_hash.cpp) add_icon_c_test(UtilHashTest ctest_util_hash.cpp)
add_icon_c_test(UtilBacktraceTest ctest_util_backtrace.cpp)
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/util_file_test.txt" file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/util_file_test.txt"
"This is a test file for unit tests for util_file.c\n") "This is a test file for unit tests for util_file.c\n")
......
#include <gtest/gtest.h>
#include <util_backtrace.h>
class UtilBacktraceCTest : public ::testing::Test {};
bool ContainsSubstring(const std::string& str, const std::string& substr) {
return str.find(substr) != std::string::npos;
}
TEST_F(UtilBacktraceCTest, CanCallBacktrace) {
EXPECT_NO_THROW({ util_backtrace();});
}
TEST_F(UtilBacktraceCTest, PrintsCorrectBacktrace) {
testing::internal::CaptureStdout();
util_backtrace();
std::string output = testing::internal::GetCapturedStdout();
EXPECT_TRUE(ContainsSubstring(output,"util_backtrace"));
EXPECT_TRUE(ContainsSubstring(output,"libfortran-support"));
EXPECT_TRUE(ContainsSubstring(output,"UtilBacktraceCTest_PrintsCorrectBacktrace"));
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment