36 #include "gtest/gtest.h" 40 using ::testing::Environment;
42 using ::testing::Test;
44 using ::testing::TestEventListener;
45 using ::testing::TestInfo;
46 using ::testing::TestPartResult;
47 using ::testing::UnitTest;
68 <<
"(" << iteration <<
")";
112 <<
"(" << iteration <<
")";
131 g_events->push_back(
"Environment::SetUp");
135 g_events->push_back(
"Environment::TearDown");
142 g_events->push_back(
"ListenerTest::SetUpTestCase");
146 g_events->push_back(
"ListenerTest::TearDownTestCase");
150 g_events->push_back(
"ListenerTest::SetUp");
154 g_events->push_back(
"ListenerTest::TearDown");
161 g_events->push_back(
"ListenerTest::* Test Body");
166 g_events->push_back(
"ListenerTest::* Test Body");
174 using ::testing::internal::EnvironmentInvocationCatcher;
175 using ::testing::internal::EventRecordingListener;
178 const char*
const* expected_data,
179 int expected_data_size) {
180 const int actual_size = data.size();
183 EXPECT_EQ(expected_data_size, actual_size);
186 const int shorter_size = expected_data_size <= actual_size ?
187 expected_data_size : actual_size;
189 for (; i < shorter_size; ++i) {
191 <<
"at position " << i;
195 for (; i < actual_size; ++i) {
196 printf(
" Actual event #%d: %s\n", i, data[i].c_str());
200 int main(
int argc,
char **argv) {
201 std::vector<std::string> events;
213 <<
"AddGlobalTestEnvironment should not generate any events itself.";
218 const char*
const expected_events[] = {
219 "1st.OnTestProgramStart",
220 "2nd.OnTestProgramStart",
221 "1st.OnTestIterationStart(0)",
222 "2nd.OnTestIterationStart(0)",
223 "1st.OnEnvironmentsSetUpStart",
224 "2nd.OnEnvironmentsSetUpStart",
225 "Environment::SetUp",
226 "2nd.OnEnvironmentsSetUpEnd",
227 "1st.OnEnvironmentsSetUpEnd",
228 "1st.OnTestCaseStart",
229 "2nd.OnTestCaseStart",
230 "ListenerTest::SetUpTestCase",
233 "ListenerTest::SetUp",
234 "ListenerTest::* Test Body",
235 "1st.OnTestPartResult",
236 "2nd.OnTestPartResult",
237 "ListenerTest::TearDown",
242 "ListenerTest::SetUp",
243 "ListenerTest::* Test Body",
244 "1st.OnTestPartResult",
245 "2nd.OnTestPartResult",
246 "ListenerTest::TearDown",
249 "ListenerTest::TearDownTestCase",
252 "1st.OnEnvironmentsTearDownStart",
253 "2nd.OnEnvironmentsTearDownStart",
254 "Environment::TearDown",
255 "2nd.OnEnvironmentsTearDownEnd",
256 "1st.OnEnvironmentsTearDownEnd",
257 "2nd.OnTestIterationEnd(0)",
258 "1st.OnTestIterationEnd(0)",
259 "1st.OnTestIterationStart(1)",
260 "2nd.OnTestIterationStart(1)",
261 "1st.OnEnvironmentsSetUpStart",
262 "2nd.OnEnvironmentsSetUpStart",
263 "Environment::SetUp",
264 "2nd.OnEnvironmentsSetUpEnd",
265 "1st.OnEnvironmentsSetUpEnd",
266 "1st.OnTestCaseStart",
267 "2nd.OnTestCaseStart",
268 "ListenerTest::SetUpTestCase",
271 "ListenerTest::SetUp",
272 "ListenerTest::* Test Body",
273 "1st.OnTestPartResult",
274 "2nd.OnTestPartResult",
275 "ListenerTest::TearDown",
280 "ListenerTest::SetUp",
281 "ListenerTest::* Test Body",
282 "1st.OnTestPartResult",
283 "2nd.OnTestPartResult",
284 "ListenerTest::TearDown",
287 "ListenerTest::TearDownTestCase",
290 "1st.OnEnvironmentsTearDownStart",
291 "2nd.OnEnvironmentsTearDownStart",
292 "Environment::TearDown",
293 "2nd.OnEnvironmentsTearDownEnd",
294 "1st.OnEnvironmentsTearDownEnd",
295 "2nd.OnTestIterationEnd(1)",
296 "1st.OnTestIterationEnd(1)",
297 "2nd.OnTestProgramEnd",
298 "1st.OnTestProgramEnd" 302 sizeof(expected_events)/
sizeof(expected_events[0]));
int RUN_ALL_TESTS() GTEST_MUST_USE_RESULT_
virtual void OnTestCaseStart(const TestCase &)
virtual void OnTestProgramEnd(const UnitTest &)
std::string GetFullMethodName(const char *name)
Environment * AddGlobalTestEnvironment(Environment *env)
virtual void OnTestStart(const TestInfo &)
virtual void OnEnvironmentsTearDownEnd(const UnitTest &)
EventRecordingListener(const char *name)
virtual void OnTestProgramStart(const UnitTest &)
virtual void OnTestIterationEnd(const UnitTest &, int iteration)
std::vector< std::string > * g_events
virtual void OnTestPartResult(const TestPartResult &)
void Append(TestEventListener *listener)
virtual void OnTestEnd(const TestInfo &)
TEST_F(ListenerTest, DoesFoo)
TestEventListeners & listeners()
std::string GetString() const
virtual void OnTestIterationStart(const UnitTest &, int iteration)
static void SetUpTestCase()
static void TearDownTestCase()
virtual void OnTestCaseEnd(const TestCase &)
#define ASSERT_STREQ(expected, actual)
void InitGoogleTest(int *argc, char **argv)
static UnitTest * GetInstance()
virtual void OnEnvironmentsTearDownStart(const UnitTest &)
virtual void OnEnvironmentsSetUpStart(const UnitTest &)
virtual void OnEnvironmentsSetUpEnd(const UnitTest &)
#define GTEST_CHECK_(condition)
int main(int argc, char **argv)
#define EXPECT_EQ(expected, actual)
void VerifyResults(const std::vector< std::string > &data, const char *const *expected_data, int expected_data_size)
void printf(BasicWriter< Char > &w, BasicCStringRef< Char > format, ArgList args)