public void CreateACourse() { //Arrange var loginPage = new LoginPage(_driver); // >>>>>>>Loginto Admnin portal AdminNewCoursePage adminNewCourse = new AdminNewCoursePage(_driver); AdminCoachingNormalAdultPage normalAdult = new AdminCoachingNormalAdultPage(_driver); AdminAddCoursePage adminAddCourse = new AdminAddCoursePage(_driver); AdminCoachingNormalAdultTablePage courseUI = new AdminCoachingNormalAdultTablePage(_driver); // Act loginPage.Login(); adminNewCourse.SelectCoaching(); adminNewCourse.ClickViewCourse(); adminNewCourse.ClickProgrammes(); normalAdult.ClickAddNewCourse(); normalAdult.SelectShortCourse(); //Generate a course name --> this will be passed as name to create the new course var courseName = "Automation_ " + RandomGenerator.RandomString(3, false); Console.WriteLine(courseName); string courseCreatedMessage = adminAddCourse.addNewCourse(courseName, "100"); // Assert Assert.AreEqual(courseCreatedMessage, "COURSE SUCCESSFULLY CREATED", "The names match"); // Go back to the active courses adminNewCourse.SelectCoaching(); adminNewCourse.ClickViewCourse(); adminNewCourse.ClickProgrammes(); //Search the UI for the verifying that the course is present courseUI.SearchCourseUI(courseName); //Click the course direct link courseUI.ClickDirectLink(); //Switch to the new tab when the course direct link has launched courseUI.SwitchToDirectLinkPage(); // Assert that the course name on the direct link matches with the name that was used to create the course. string courseNameFromDirectLinkPage = courseUI.GetCourseNameFromDirectLinkPage(); Assert.AreEqual(courseName, courseNameFromDirectLinkPage, "The names match"); }
public void CreateAHolidayCampAndBookOnToIt() { //Arrange var loginPage = new LoginPage(_driver); // >>>>>>>Loginto Admnin portal AdminNewCoursePage adminNewCourse = new AdminNewCoursePage(_driver); AdminHolidayCampPage adminHolidayCamp = new AdminHolidayCampPage(_driver); AdminAddCampPage adminNewCamp = new AdminAddCampPage(_driver); AdminLogOutPage adminLogout = new AdminLogOutPage(_driver); CreateNewMemberPage createNewMember = new CreateNewMemberPage(_driver); SelectHolidayCampPage selectHolidayCamp = new SelectHolidayCampPage(_driver); MemberHolidayCampPage memberHolidayCamp = new MemberHolidayCampPage(_driver); MemberHolidayCampDetailPage memberHolidayCampDetail = new MemberHolidayCampDetailPage(_driver); MemberHolidayCampBookingPage memberHolidayCampBooking = new MemberHolidayCampBookingPage(_driver); MemberBookingPage memberBookingPage = new MemberBookingPage(_driver); MemberHolidayCampBookingConfirmationPage memberBookingConfirmation = new MemberHolidayCampBookingConfirmationPage(_driver); // Act loginPage.Login(); adminNewCourse.SelectCoaching(); adminNewCourse.ClickHolidayCamps(); //Assert-->on holiday camp page var holidayCampPageTitle = _driver.Title; Console.WriteLine(holidayCampPageTitle); Assert.IsTrue(holidayCampPageTitle.Contains("ClubSpark / Admin / Coaching / Holiday Camps")); // Act --> click add new camp adminHolidayCamp.ClickAddNewCamp(); // Assert --> on add camp var addCampPageTitle = _driver.Title; Console.WriteLine(addCampPageTitle); Assert.IsTrue(addCampPageTitle.Contains("ClubSpark / Admin / Coaching /Holiday Camps / Add camp")); //Generate a course name --> this will be passed as name to create the new course var courseName = "Automation_HolidayCamp_" + RandomGenerator.RandomString(3, false); Console.WriteLine(courseName); string campCreatedMessage = adminNewCamp.addNewHolidayCamp(courseName, "30", "60"); Console.WriteLine(campCreatedMessage); // Assert Assert.AreEqual(campCreatedMessage, "CAMP SAVED", "The names match"); adminLogout.LogoutOfAdmin(); // Below to generate random email string emailid = GenerateEmailId.GenerateRandomEmailId(); //Act createNewMember.RegisterUser("Jennifer", "Jane", emailid, emailid); string newMember = createNewMember.getMemberText(); Console.WriteLine("The new member created is :" + newMember); selectHolidayCamp.ClickHolidayCamp(); memberHolidayCamp.SelectHolidayCamp(courseName); memberHolidayCampDetail.ClickSession(); memberHolidayCampDetail.ContinueToOrderSummary(); memberHolidayCampBooking.EnterDetails(); memberHolidayCampBooking.SelectMember(); memberHolidayCampBooking.SelectTermsAndConditions(); memberHolidayCampBooking.ClickPayNow(); memberBookingPage.EnterStripeAccount(); string bookingConfirmText = memberBookingConfirmation.BookingConfirmationText(); Assert.AreEqual(bookingConfirmText, "Confirmed! Your Holiday camp is booked.", "The names should match"); }
public void RefundACourseBooking() { //Arrange var loginPage = new LoginPage(_driver); // >>>>>>>Login to Admnin portal AdminNewCoursePage adminNewCourse = new AdminNewCoursePage(_driver); AdminCoachingNormalAdultPage normalAdult = new AdminCoachingNormalAdultPage(_driver); AdminAddCoursePage adminAddCourse = new AdminAddCoursePage(_driver); AdminCoachingNormalAdultTablePage courseUI = new AdminCoachingNormalAdultTablePage(_driver); AdminLogOutPage adminLogout = new AdminLogOutPage(_driver); CreateNewMemberPage createNewMember = new CreateNewMemberPage(_driver); MemberHomePage memberHomePage = new MemberHomePage(_driver); MemberCoachingTabPage memberCoachingTabPage = new MemberCoachingTabPage(_driver); MemberBookingPage memberBookingPage = new MemberBookingPage(_driver); MemberCoachingBookingConfirmationPage bookingConfirmation = new MemberCoachingBookingConfirmationPage(_driver); MemberLogoutPage memberLogout = new MemberLogoutPage(_driver); AdminCoachingSearchCoursePage searchCourse = new AdminCoachingSearchCoursePage(_driver); AdminCoachingAttendeesListPage selectAttendee = new AdminCoachingAttendeesListPage(_driver); AdminCoachingIndividualAttendeePage selectAttendeeForRefund = new AdminCoachingIndividualAttendeePage(_driver); // stripe details StripeLogInPage logIn = new StripeLogInPage(_driver); StripePaymentRefundPage stripeRefund = new StripePaymentRefundPage(_driver); // Act loginPage.Login(); adminNewCourse.SelectCoaching(); adminNewCourse.ClickViewCourse(); adminNewCourse.ClickProgrammes(); normalAdult.ClickAddNewCourse(); normalAdult.SelectShortCourse(); //Generate a course name --> this will be passed as name to create the new course var courseName = "Automation_1" + RandomGenerator.RandomString(3, false); Console.WriteLine(courseName); string courseCreatedMessage = adminAddCourse.addNewCourse(courseName, "100"); _driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(15); // Assert Assert.AreEqual(courseCreatedMessage, "COURSE SUCCESSFULLY CREATED", "The names match"); adminLogout.LogoutOfAdmin(); // Below to generate random email string emailid = GenerateEmailId.GenerateRandomEmailId(); // create a new user and join the course created above createNewMember.RegisterUser("Mary", "Lin", emailid, emailid); string newMember = createNewMember.getMemberText(); Console.WriteLine("The new member created is :" + newMember); //Assert --> Verify the new member created Assert.AreEqual(createNewMember.getMemberText(), "Mary Lin", "The names should match"); //Act memberHomePage.SelectCoachingTab(); memberCoachingTabPage.JoinACourse(courseName); memberBookingPage.SelectCourseBooking(); memberBookingPage.EnterStripeAccount(); string bookingConfirmText = bookingConfirmation.BookingConfirmationText(); //Assert Assert.AreEqual(bookingConfirmText, "Thank you for booking", "The names should match"); memberLogout.SignOut(); //Act // Sign into admin account and search for the course enrolled by the member loginPage.Login(); memberHomePage.SelectCoachingTab(); adminNewCourse.ClickViewCourse(); adminNewCourse.ClickProgrammes(); searchCourse.SearchCourseForCancellation(courseName); selectAttendee.SelectAttendee(); string emailIdFromRefund = selectAttendeeForRefund.ReadEmailID(); Console.WriteLine(emailIdFromRefund); //Assert Assert.AreEqual(emailIdFromRefund, emailid, "The names should match"); // Act // Start the refunding process selectAttendeeForRefund.ClickRefund(); _driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10); selectAttendeeForRefund.SelectConfirmCheckbox(); selectAttendeeForRefund.ClickYes(); Thread.Sleep(10000);//--> this is used as a jquery call updates the payment status. Webdriver Implicit and explicit is not working string status = selectAttendeeForRefund.RefundStatus(); Console.WriteLine(status); Assert.AreEqual(status, "REFUNDED", "The names should match"); adminLogout.LogoutOfAdmin(); // Act // Verify in stripe for refund logIn.LogInToStripe("*****@*****.**", "Sp0rtlabs123"); stripeRefund.CLickOnRefunded(); stripeRefund.SearchEmailId(emailid); string refundStatus = stripeRefund.RefundStatus(); Console.WriteLine(refundStatus); //Assert Assert.AreEqual(refundStatus, "Refunded", "The names should match"); }