示例#1
0
        public void End_To_End()
        {
            // arrange
            string     testrunId     = Guid.NewGuid().ToString("N");
            PitstopApp pitstop       = new PitstopApp(testrunId, TestConstants.PitstopStartUrl);
            var        homePage      = pitstop.Start();
            string     licenseNumber = TestDataGenerators.GenerateRandomLicenseNumber();

            // act
            pitstop.Menu
            .CustomerManagement()
            .RegisterCustomer()
            .Cancel()
            .RegisterCustomer()
            .FillCustomerDetails(
                $"TestCustomer {testrunId}", "Verzonnenstraat 21",
                "Uitdeduimerveen", "1234 AZ", "+31612345678", "*****@*****.**")
            .Submit()
            .SelectCustomer($"TestCustomer {testrunId}")
            .Back();

            pitstop.Menu
            .VehicleManagement()
            .RegisterVehicle()
            .Cancel()
            .RegisterVehicle()
            .FillVehicleDetails(licenseNumber, "Testla", "Model T", $"TestCustomer {testrunId}")
            .Submit()
            .SelectVehicle(licenseNumber)
            .Back();

            pitstop.Menu
            .WorkshopManagement()
            .RegisterMaintenanceJob()
            .Cancel()
            .RegisterMaintenanceJob()
            .FillJobDetails("08:00", "12:00", $"Job {testrunId}", licenseNumber)
            .Submit()
            .SelectMaintenanceJob($"Job {testrunId}")
            .Back();

            pitstop.Menu
            .WorkshopManagement()
            .SelectMaintenanceJob($"Job {testrunId}")
            .GetJobStatus(out string beforeJobStatus)
            .Complete()
            .FillJobDetails("08:00", "11:00", $"Mechanic notes {testrunId}")
            .Complete()
            .GetJobStatus(out string afterJobStatus)
            .Back();

            // assert
            Assert.Equal("Planned", beforeJobStatus);
            Assert.Equal("Completed", afterJobStatus);

            // cleanup
            pitstop.Stop();
        }
示例#2
0
        public void MainMenu_About()
        {
            // arrange
            Guid       testrunId = Guid.NewGuid();
            PitstopApp pitstop   = new PitstopApp(testrunId, TestConstants.PitstopStartUrl);
            var        homePage  = pitstop.Start();

            // act
            var page = pitstop.Menu
                       .About();

            // assert
            Assert.True(page.IsActive());

            // cleanup
            pitstop.Stop();
        }
示例#3
0
 public RegisterCustomerPage(PitstopApp pitstop) : base("Customer Management - register customer", pitstop)
 {
 }
示例#4
0
 public UpdateCustomerPage(PitstopApp pitstop) : base("Customer Management - edit customer", pitstop)
 {
 }
 public FinishMaintenanceJobPage(PitstopApp pitstop) : base("Workshop Management - finish maintenance job", pitstop)
 {
 }
示例#6
0
 public UpdateMaintenanceJobPage(PitstopApp pitstop) : base("Workshop Management - update maintenance", pitstop)
 {
 }
示例#7
0
 public CustomerDetailsPage(PitstopApp pitstop) : base("Customer Management - details", pitstop)
 {
 }
示例#8
0
 public MaintenanceJobDetailsPage(PitstopApp pitstop) : base("Workshop Management - details", pitstop)
 {
 }
示例#9
0
 public HomePage(PitstopApp pitstop) : base("Pitstop - Garage Management System", pitstop)
 {
 }
示例#10
0
 public AboutPage(PitstopApp pitstop) : base("About Pitstop", pitstop)
 {
 }
示例#11
0
 /// <summary>
 /// Initialize a new PitstopPage instance.
 /// </summary>
 /// <param name="title">The title on the page. This is the text shown as standard title on the page (not the browser window-title!).</param>
 /// <param name="pitstop">The WebApp instance used for the test.</param>
 public PitstopPage(string title, PitstopApp pitstop)
 {
     Title   = title;
     Pitstop = pitstop;
 }
示例#12
0
 public VehicleDetailsPage(PitstopApp pitstop) : base("Vehicle Management - details", pitstop)
 {
 }
 public CustomerManagementPage(PitstopApp pitstop) : base("Customer Management - overview", pitstop)
 {
 }
 public WorkshopManagementPage(PitstopApp pitstop) : base("Workshop Management - overview", pitstop)
 {
 }
示例#15
0
 public UpdateVehiclePage(PitstopApp pitstop) : base("Vehicle Management - update vehicle", pitstop)
 {
 }
 public RegisterVehiclePage(PitstopApp pitstop) : base("Vehicle Management - register vehicle", pitstop)
 {
 }
示例#17
0
 public RegisterMaintenanceJobPage(PitstopApp pitstop) : base("Workshop Management - schedule maintenance", pitstop)
 {
 }
 public VehicleManagementPage(PitstopApp pitstop) : base("Vehicle Management - overview", pitstop)
 {
 }