TEST(CallStackTestGroup, GetName) { CallStack TestCallStack; TestSuiteUnwind5(TestCallStack); /* check for names, format is "pointer:name" so we compare the name for * symbols that should be resolved */ CHECK_EQUAL(0, strcmp(strchr(TestCallStack.GetName(0), ':')+1, "TestSuiteUnwind1")); CHECK_EQUAL(0, strcmp(strchr(TestCallStack.GetName(1), ':')+1, "TestSuiteUnwind2")); CHECK_EQUAL(0, strcmp(strchr(TestCallStack.GetName(2), ':')+1, "TestSuiteUnwind3")); CHECK_EQUAL(0, strcmp(strchr(TestCallStack.GetName(3), ':')+1, "TestSuiteUnwind4")); CHECK_EQUAL(0, strcmp(strchr(TestCallStack.GetName(4), ':')+1, "TestSuiteUnwind5(CallStack&)")); };
TEST(CallStackTestGroup, GetNameCaller) { CallStack TestCallStack; TestSuiteCaller1(TestCallStack); /* check for names, format is "pointer:name" so we compare the name for * symbols that should be resolved */ CHECK_EQUAL(0, strcmp(strchr(TestCallStack.GetName(0), ':')+1, "TestSuiteCaller1")); uint32_t Level; for(Level=1;Level<TestCallStack.GetDepth(); Level++) { POINTERS_EQUAL(NULL, TestCallStack.GetName(Level)); } };
TEST(CallStackTestGroup, GetNameBigLevel) { CallStack TestCallStack; TestSuiteUnwind5(TestCallStack); POINTERS_EQUAL(NULL, TestCallStack.GetName(300000)); };