private void Progression(Journey userJourney, string pageAsString) { var endPage = Page.FromString(pageAsString); var journeys = new Dictionary <Journey, IJourney> { { Journey.Judge, new JudgeJourney() }, { Journey.JudgeSelftest, new JudgeSelfTestJourney() }, { Journey.Participant, new ParticipantJourney() }, { Journey.PanelMemberOrWinger, new PanelMemberOrWingerJourney() }, { Journey.SelfTest, new SelfTestJourney() }, { Journey.Vho, new VhoJourney() } }; journeys[userJourney].VerifyUserIsApplicableToJourney(_c.CurrentUser.User_type); journeys[userJourney].VerifyDestinationIsInThatJourney(endPage); if (userJourney == Journey.JudgeSelftest || userJourney == Journey.SelfTest) { _c.Test.SelfTestJourney = true; } var journey = journeys[userJourney].Journey(); var steps = Steps(); foreach (var page in journey) { if (page != Page.Login) { _browserSteps.ThenTheUserIsOnThePage(page.Name); } if (page.Equals(endPage)) { break; } steps[page].ProgressToNextPage(); } }
public void GivenIAmOnThePage(string user, string page) { GivenIHaveProgressedToThePage(user, page); _browserSteps.ThenTheUserIsOnThePage(page); }