X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fsymbolize_unittest.cc;h=26616e695baa2b8253795bde39ab078be7f67b7a;hb=0d78884a22802cffc96d3779e953e764cb4fdaa4;hp=f25909d1247bd3ee9ff6960812f714f919667cb8;hpb=8c4e3a9238a433b709c2fe172bc29d80c4f275b3;p=platform%2Fupstream%2Fglog.git diff --git a/src/symbolize_unittest.cc b/src/symbolize_unittest.cc index f25909d..26616e6 100644 --- a/src/symbolize_unittest.cc +++ b/src/symbolize_unittest.cc @@ -41,6 +41,11 @@ #include "googletest.h" #include "config.h" +#ifdef HAVE_LIB_GFLAGS +#include +using namespace GFLAGS_NAMESPACE; +#endif + using namespace std; using namespace GOOGLE_NAMESPACE; @@ -94,7 +99,13 @@ TEST(Symbolize, Symbolize) { // Compilers should give us pointers to them. EXPECT_STREQ("nonstatic_func", TrySymbolize((void *)(&nonstatic_func))); - EXPECT_STREQ("static_func", TrySymbolize((void *)(&static_func))); + + // The name of an internal linkage symbol is not specified; allow either a + // mangled or an unmangled name here. + const char *static_func_symbol = TrySymbolize((void *)(&static_func)); + CHECK(NULL != static_func_symbol); + EXPECT_TRUE(strcmp("static_func", static_func_symbol) == 0 || + strcmp("static_func()", static_func_symbol) == 0); EXPECT_TRUE(NULL == TrySymbolize(NULL)); } @@ -262,9 +273,13 @@ TEST(Symbolize, SymbolizeStackConsumption) { EXPECT_GT(stack_consumed, 0); EXPECT_LT(stack_consumed, kStackConsumptionUpperLimit); + // The name of an internal linkage symbol is not specified; allow either a + // mangled or an unmangled name here. symbol = SymbolizeStackConsumption((void *)(&static_func), &stack_consumed); - EXPECT_STREQ("static_func", symbol); + CHECK(NULL != symbol); + EXPECT_TRUE(strcmp("static_func", symbol) == 0 || + strcmp("static_func()", symbol) == 0); EXPECT_GT(stack_consumed, 0); EXPECT_LT(stack_consumed, kStackConsumptionUpperLimit); }