public void GivenNewUser() { window = BrowserWindow.Launch($"{TestConfig.UrlBase}/DecomposingPageObjects/Change5"); HtmlCustom nav = new HtmlCustom(window); nav.SearchProperties.Add(HtmlControl.PropertyNames.TagName, "nav"); HtmlButton registerButton = new HtmlButton(nav); registerButton.SearchProperties.Add(HtmlButton.PropertyNames.DisplayText, "Register"); Mouse.Click(registerButton); RegistrationControlPageObject registrationControl = new RegistrationControlPageObject(window); this.newUsername = Guid.NewGuid().ToString("N"); this.newPassword = "******"; registrationControl.SetFormValues(this.newUsername, this.newPassword, this.newPassword); registrationControl.ClickRegister(); HtmlButton ordersButton = new HtmlButton(nav); ordersButton.SearchProperties.Add(HtmlButton.PropertyNames.DisplayText, "Orders"); Mouse.Click(ordersButton); //this.ordersPageObject = new OrdersPageObject(window); this.ordersPageModel = new OrdersPageModel(window); }
public void GivenNewUser() { window = BrowserWindow.Launch($"{TestConfig.UrlBase}/DecomposingPageObjects/Change6"); /********* * this.newUsername = Guid.NewGuid().ToString("N"); * this.newPassword = "******"; * * var registerOrchestrations = new RegisterOrchestations( * new LayoutPageModelBase(this.window).Nav * .Register.Click()); * * this.ordersPageModel = * registerOrchestrations.Register(this.newUsername, this.newPassword) * .Nav * .Orders.Click(); * */ // demo: the details of setting up a user with credentials // is not something that should be splattered thru TestInitialize methods var userScenarios = new NewUserScenarios(new LayoutPageModelBase(window)); this.ordersPageModel = userScenarios.CreateValidatedUser() .AccountSettingsModel .Nav .Orders.Click(); }
public void GivenNewUser() { window = BrowserWindow.Launch($"{TestConfig.UrlBase}/DecomposingPageObjects/Change5"); this.newUsername = Guid.NewGuid().ToString("N"); this.newPassword = "******"; /**************** * HtmlCustom nav = new HtmlCustom(window); * nav.SearchProperties.Add(HtmlControl.PropertyNames.TagName, "nav"); * * HtmlButton registerButton = new HtmlButton(nav); * registerButton.SearchProperties.Add(HtmlButton.PropertyNames.DisplayText, "Register"); * * Mouse.Click(registerButton); * * RegistrationControlPageObject registrationControl = new RegistrationControlPageObject(window); * * registrationControl.SetFormValues(this.newUsername, this.newPassword, this.newPassword); * registrationControl.ClickRegister(); * * HtmlButton ordersButton = new HtmlButton(nav); * ordersButton.SearchProperties.Add(HtmlButton.PropertyNames.DisplayText, "Orders"); * * Mouse.Click(ordersButton); * * this.ordersPageModel = new OrdersPageModel(window); */ /******************* * // we don't really care which page we start on * // we'll just use the navigation to get where we need to go * var startinPageModel = new LayoutPageModelBase(this.window); * * // demo: isn't this much nicer? * this.ordersPageModel = * startinPageModel.Nav * .Register.Click() * .Username.SetValue(this.newUsername) * .Password.SetValue(this.newPassword) * .ConfirmPassword.SetValue(this.newPassword) * .Register.Click() * .Nav * .Orders.Click(); */ var registerOrchestrations = new RegisterOrchestations( new LayoutPageModelBase(this.window).Nav .Register.Click()); // demo: one high level method call // demo: what happens if registration changes? this.ordersPageModel = registerOrchestrations.Register(this.newUsername, this.newPassword) .Nav .Orders.Click(); }
public OrdersRowPageModel(BrowserWindow bw, HtmlReadonlyListItem me, IOrdersPageModel ordersPageModel) : base(bw, me) { this.ordersPageParent = ordersPageModel; }
public OrdersOrchestrations(IOrdersPageModel model) { this.Model = model; }