public void RequestThirdPartyOperator() { // navigate back to Licenses tab ClickLicencesTab(); /* * Page Title: Licences & Authorizations * Subtitle: Catering Licences */ string addOrChangeThirdParty = "Add or Change a Third Party Operator"; // click on the Add or Change a Third Party Operator Link NgWebElement uiAddOrChangeThirdPartyOp = ngDriver.FindElement(By.LinkText(addOrChangeThirdParty)); uiAddOrChangeThirdPartyOp.Click(); /* * Page Title: Add or Change a Third Party Operator */ // check that licence number field is populated NgWebElement uiLicenseNumber = ngDriver.FindElement(By.CssSelector("input[formcontrolname='licenseNumber']")); string fieldValueLicenseNumber = uiLicenseNumber.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueLicenseNumber)); // check that establishment name field is populated NgWebElement uiEstablishmentName = ngDriver.FindElement(By.CssSelector("input[formcontrolname='establishmentName']")); string fieldValueEstablishmentName = uiEstablishmentName.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentName)); // check that establishment address street field is populated NgWebElement uiEstablishmentAddressStreet = ngDriver.FindElement(By.CssSelector("input[formcontrolname='establishmentAddressStreet']")); string fieldValueEstablishmentAddressStreet = uiEstablishmentAddressStreet.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentAddressStreet)); // check that establishment address city field is populated NgWebElement uiEstablishmentAddressCity = ngDriver.FindElement(By.CssSelector("input[formcontrolname='establishmentAddressCity']")); string fieldValueEstablishmentAddressCity = uiEstablishmentAddressCity.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentAddressCity)); // check that establishment province field is populated NgWebElement uiEstablishmentProvince = ngDriver.FindElement(By.CssSelector("input.form-control[value='British Columbia']")); string fieldValueEstablishmentProvince = uiEstablishmentProvince.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentProvince)); // check that establishment postal code field is populated NgWebElement uiEstablishmentAddressPostalCode = ngDriver.FindElement(By.CssSelector("input[formcontrolname='establishmentAddressPostalCode']")); string fieldValueEstablishmentAddressPostalCode = uiEstablishmentAddressPostalCode.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentAddressPostalCode)); // check that establishment country field is populated NgWebElement uiEstablishmentAddressCountry = ngDriver.FindElement(By.CssSelector("input.form-control[value='Canada']")); string fieldValueEstablishmentCountry = uiEstablishmentAddressCountry.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentCountry)); // check that establishment PID is populated NgWebElement uiEstablishmentParcelId = ngDriver.FindElement(By.CssSelector("input[formcontrolname='establishmentParcelId']")); string fieldValueEstablishmentParcelId = uiEstablishmentParcelId.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentParcelId)); // create test data string thirdparty = "GunderCorp"; // search for the proposed licensee NgWebElement uiThirdPartyOperator = ngDriver.FindElement(By.CssSelector("input[formcontrolname='autocompleteInput']")); uiThirdPartyOperator.SendKeys(thirdparty); var uiThirdPartyOperatorOption = ngDriver.FindElements(By.CssSelector("mat-option[role='option'] span")); if (uiThirdPartyOperatorOption.Count > 0) { uiThirdPartyOperatorOption[0].Click(); } else { throw new Exception($"Unable to find {thirdparty}"); } // click on authorized to submit checkbox NgWebElement uiAuthorizedToSubmit = ngDriver.FindElement(By.CssSelector("input[formcontrolname='authorizedToSubmit']")); JavaScriptClick(uiAuthorizedToSubmit); // click on signature agreement checkbox NgWebElement uiSignatureAgreement = ngDriver.FindElement(By.CssSelector("input[formcontrolname='signatureAgreement']")); JavaScriptClick(uiSignatureAgreement); // click on submit button ClickOnSubmitButton(); // navigate back to Licenses tab ClickLicencesTab(); /* * Page Title: Welcome to Liquor and Cannabis Licensing */ ngDriver.Navigate().Refresh(); // confirm that the application has been initiated Assert.True(ngDriver.FindElement(By.XPath("//body[contains(.,'Third Party Operator Application Initiated')]")).Displayed); }
public void RequestOwnershipTransfer(string licenceType) { /* * Page Title: Licences & Authorizations */ string transferOwnership = "Transfer Licence"; // click on the Transfer Ownership link NgWebElement uiTransferOwnership = ngDriver.FindElement(By.LinkText(transferOwnership)); uiTransferOwnership.Click(); // check that licence number field is populated NgWebElement uiLicenseNumber = ngDriver.FindElement(By.CssSelector("input[formcontrolname='licenseNumber']")); string fieldValueLicenseNumber = uiLicenseNumber.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueLicenseNumber)); if (licenceType != "an agent") { // check that establishment name field is populated NgWebElement uiEstablishmentName = ngDriver.FindElement(By.CssSelector("input[formcontrolname='establishmentName']")); string fieldValueEstablishmentName = uiEstablishmentName.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentName)); } // check that establishment address street field is populated NgWebElement uiEstablishmentAddressStreet = ngDriver.FindElement(By.CssSelector("input[formcontrolname='establishmentAddressStreet']")); string fieldValueEstablishmentAddressStreet = uiEstablishmentAddressStreet.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentAddressStreet)); // check that establishment address city field is populated NgWebElement uiEstablishmentAddressCity = ngDriver.FindElement(By.CssSelector("input[formcontrolname='establishmentAddressCity']")); string fieldValueEstablishmentAddressCity = uiEstablishmentAddressCity.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentAddressCity)); // check that establishment province field is populated NgWebElement uiEstablishmentProvince = ngDriver.FindElement(By.CssSelector("input.form-control[value='British Columbia']")); string fieldValueEstablishmentProvince = uiEstablishmentProvince.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentProvince)); // check that establishment postal code field is populated NgWebElement uiEstablishmentAddressPostalCode = ngDriver.FindElement(By.CssSelector("input[formcontrolname='establishmentAddressPostalCode']")); string fieldValueEstablishmentAddressPostalCode = uiEstablishmentAddressPostalCode.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentAddressPostalCode)); // check that establishment country field is populated NgWebElement uiEstablishmentAddressCountry = ngDriver.FindElement(By.CssSelector("input.form-control[value='Canada']")); string fieldValueEstablishmentCountry = uiEstablishmentAddressCountry.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentCountry)); if (licenceType != "an agent") { // check that establishment PID is populated NgWebElement uiEstablishmentParcelId = ngDriver.FindElement(By.CssSelector("input[formcontrolname='establishmentParcelId']")); string fieldValueEstablishmentParcelId = uiEstablishmentParcelId.GetProperty("value"); Assert.False(string.IsNullOrEmpty(fieldValueEstablishmentParcelId)); } string licensee = "GunderCorp"; // search for the proposed licensee NgWebElement uiProposedLicensee = ngDriver.FindElement(By.CssSelector("input[formcontrolname='autocompleteInput']")); uiProposedLicensee.SendKeys(licensee); NgWebElement uiThirdPartyOperatorOption = ngDriver.FindElement(By.CssSelector("mat-option[role='option'] span")); uiThirdPartyOperatorOption.Click(); // click on consent to licence transfer checkbox NgWebElement uiConsentToTransfer = ngDriver.FindElement(By.CssSelector("mat-checkbox[formcontrolname='transferConsent']")); uiConsentToTransfer.Click(); // click on authorize signature checkbox NgWebElement uiAuthorizeSignature = ngDriver.FindElement(By.CssSelector("mat-checkbox[formcontrolname='authorizedToSubmit']")); uiAuthorizeSignature.Click(); // click on signature agreement checkbox NgWebElement uiSignatureAgreement = ngDriver.FindElement(By.CssSelector("mat-checkbox[formcontrolname='signatureAgreement']")); uiSignatureAgreement.Click(); // click on submit transfer button NgWebElement uiSubmitTransferButton = ngDriver.FindElement(By.CssSelector("app-application-ownership-transfer button.btn-primary")); uiSubmitTransferButton.Click(); ClickLicencesTab(); }