/// <summary> /// Initializes a new instance of the <see cref="CreatePage"/> class. /// </summary> /// <param name="basePage">The base page.</param> /// <param name="pageObjectFactory">The page object factory.</param> /// <param name="driver">The driver.</param> /// <param name="pageSettings">The page settings.</param> /// <exception cref="ArgumentNullException"> /// basePage /// or /// pageObjectFactory /// </exception> public CreatePage(IBasePage basePage, IPageObjectFactory pageObjectFactory, IWebDriver driver, PageSettings pageSettings) : base(driver, new Uri(pageSettings.AdminBaseUrl, "Customer/Create")) { this.basePage = basePage ?? throw new ArgumentNullException(nameof(basePage)); this.pageObjectFactory = pageObjectFactory ?? throw new ArgumentNullException(nameof(pageObjectFactory)); Info = new _CreateOrUpdateInfoComponent( By.CssSelector(""), pageObjectFactory, WrappedDriver); }
/// <summary> /// Initializes a new instance of the <see cref="EditPage"/> class. /// </summary> /// <param name="basePage">The base page.</param> /// <param name="pageObjectFactory">The page object factory.</param> /// <param name="driver">The driver.</param> /// <param name="pageSettings">The page settings.</param> public EditPage(IBasePage basePage, IPageObjectFactory pageObjectFactory, IWebDriver driver, PageSettings pageSettings) : base(driver, new Uri(pageSettings.BaseUrl, "/Admin"), new UriTemplate("Customer/Edit/{id}")) { this.basePage = basePage ?? throw new ArgumentNullException(nameof(basePage)); this.pageObjectFactory = pageObjectFactory ?? throw new ArgumentNullException(nameof(pageObjectFactory)); InfoTab = new _CreateOrUpdateInfoComponent( By.CssSelector("#tab-info"), pageObjectFactory, WrappedDriver); OrdersTab = new _CreateOrUpdateOrdersComponent( By.CssSelector("#tab-orders"), pageObjectFactory, WrappedDriver); AddressesTab = new _CreateOrUpdateAddressesComponent( By.CssSelector("#tab-address"), pageObjectFactory, WrappedDriver); CurrentShoppingCartAndWishlistTab = new _CreateOrUpdateCurrentShoppingCartComponent( By.CssSelector("#tab-cart"), pageObjectFactory, WrappedDriver); ActivityLogTab = new _CreateOrUpdateActivityLogComponent( By.CssSelector("#tab-activitylog"), pageObjectFactory, driver); ImpersonateTab = new _CreateOrUpdateImpersonateComponent( By.CssSelector("#tab-impersonate"), pageObjectFactory, driver); Tabs = new NavsTabComponent <IEditPage>( By.CssSelector("#customer-edit"), new ILoadableComponent[] { InfoTab, OrdersTab, AddressesTab, CurrentShoppingCartAndWishlistTab, ActivityLogTab, ImpersonateTab }, WrappedDriver, new NavsTabComponentConfiguration { ActiveTabContentElementSelector = By.CssSelector(".tab-content .tab-pane.active"), ActiveTabHeaderElementSelector = By.CssSelector(".nav-tabs li.active"), ActiveTabHeaderNameSelector = By.CssSelector(".nav-tabs li.active"), TabContentElementsSelector = By.CssSelector(".tab-content .tab-pane"), TabHeaderElementsSelector = By.CssSelector(".nav-tabs li"), TabHeaderNamesSelector = By.CssSelector(".nav-tabs li") }, this); }