TEST_F(HookRegistrationTest, beforeAllHooksAreInvokedInAnyOrderDuringFirstScenarioOnly) { EXPECT_EQ("", afterAllHookCallMarker.str()); beginScenario(0); EXPECT_EQ(correctBeforeAllOrder, sort(beforeAllHookCallMarker.str())); clearHookCallMarkers(); invokeStep(); endScenario(); EXPECT_EQ("", sort(beforeAllHookCallMarker.str())); beginScenario(0); invokeStep(); endScenario(); EXPECT_EQ("", sort(beforeAllHookCallMarker.str())); }
TEST_F(HookRegistrationTest, beforeHooksAreInvokedInAnyOrder) { EXPECT_EQ("", beforeHookCallMarker.str()); beginScenario(0); EXPECT_EQ(correctBeforeOrder, sort(beforeHookCallMarker.str())); invokeStep(); endScenario(); EXPECT_EQ(correctBeforeOrder, sort(beforeHookCallMarker.str())); }
TEST_F(HookRegistrationTest, hooksAreRegisteredByTheMacros) { beginScenario(0); EXPECT_EQ(correctBeforeOrder, sort(beforeHookOrder())); EXPECT_EQ(correctBeforeAroundStepOrder, sort(aroundStepHookOrder())); EXPECT_EQ(correctAfterStepOrder, sort(afterStepHookOrder())); EXPECT_EQ(correctAfterOrder, sort(afterHookOrder())); endScenario(); }
TEST_F(HookRegistrationTest, afterHooksAreInvokedInAnyOrder) { beginScenario(0); invokeStep(); invokeStep(); EXPECT_EQ("", sort(afterHookCallMarker.str())); endScenario(); EXPECT_EQ(correctAfterOrder, sort(afterHookCallMarker.str())); }
TEST_F(HookRegistrationTest, afterStepHooksAreInvokedAfterAroundStepHooks) { beginScenario(0); EXPECT_EQ("", globalStepHookCallMarker.str()); invokeStep(); EXPECT_EQ(beforeAroundStepHookCallMarker.str() + afterAroundStepHookCallMarker.str() + afterStepHookCallMarker.str(), globalStepHookCallMarker.str()); endScenario(); }
TEST_F(HookRegistrationTest, aroundStepHooksAreInvokedInAnyOrderButNested) { beginScenario(0); EXPECT_EQ("", beforeAroundStepHookCallMarker.str()); invokeStep(); EXPECT_EQ(correctBeforeAroundStepOrder, sort(beforeAroundStepHookCallMarker.str())); EXPECT_EQ(correctAfterAroundStepOrder, sort(afterAroundStepHookCallMarker.str())); endScenario(); EXPECT_EQ(correctBeforeAroundStepOrder, sort(beforeAroundStepHookCallMarker.str())); EXPECT_EQ(correctAfterAroundStepOrder, sort(afterAroundStepHookCallMarker.str())); }
TEST_F(HookRegistrationTest, contextIsAccessibleInAfterHooks) { beginScenario(0); endScenario(); EXPECT_EQ(CONTEXT_MARKER, contextContents); }