public void SmokeTest_NewMember_NewParty_ExistingVessel() { var mainflowData = new MainFlowData(); Start <StartPage>(mainflowData, page => page #region Create application .CreateVesselRiskQuote(mainflowData.SetQuoteCreationData(new QuoteCreationData { RiskType = "Vessel Risk", ProductType = "YACHT", PolicyBilling = "Standard", TemplateType = "Yacht", TemplateCategory = "Yacht", TemplateName = "Yacht Liability Insurance", //FromDate = "01/01/2018", //ToDate = "31/12/2018", IsDateToBeConfirmed = false })) .WaitToQuotePageOpen(mainflowData.WindowsHandlerData) #endregion #region Set data for Quote Details tab //Also available method SelectNewMember() or SelectExistingMember() .SelectNewMember(mainflowData.SetMemberData(new MemberData { ////Commented fields not mandatory, uncomment particular property if you want to populate it Reference = "69937", //FirstName = "SigmaMember2109_02", LastNameOrOrganisationName = "SigmaMember0210_06", Domicilie = "ARUBA", Group = "A10 - ACAV", AddressName = "AN", Street1 = "S1", Street2 = "S2", City = "City", PostalCode = "PC", Country = "AZORES", Phone = "12345", Fax = "67890", Email = "*****@*****.**" })) .ManageQuoteDetails(mainflowData.SetQuoteDetailsTabData(new QuoteDetailsTabData { ////Commented fields not mandatory, uncomment particular property if you want to populate it //MemberAssuredCapacities = "Crew Manager", IsClearMemberCapacities = false, EntryType = "Charterers Liability", QuoteType = "Quotation", //Underwriter = "Janie Welsh", IsSeparateCommissionNote = true, //ValidTo = "01/01/2019", //PolicyCondition = "Watersports Exclusion", IsClearPolicyConditions = true, TradingLimitsStandardText = "CANADA TRADE" })) .SaveQuoteDetails(mainflowData) .GetQuoteDetails(mainflowData.QuotePolicyData) #endregion #region Set data for Risks tab .NavidateToRisksTab() ////Also available method: //.AddExistingVessel() - use instead PerformVesselSearch() and AddNewVessel() methods .AddExistingVessel(mainflowData.SetVesselSearchData(new VesselSearchData { VesselName = "Vessel" })) #endregion #region Set data for Party tab ////Uncoment this set of code to manage Associated parties ////Commented fields not mandatory, please uncomment if you want to populate them //.NavigateToAssociatedPartyTab() ////Available AddNewParty() and AddExistingParty() methods //.AddNewParty(mainflowData // .SetPartySearchData( // new PartySearchData // { // Ref = "26448" // }).SetPartyData( // new PartyData // { // PartyRole = "Joint Assured", // //FirstName = "First name", // LastNameOrOrganisationName = "SigmaParty2709_01", // Description = "Description", // //FromDate = "01/02/2018", // //ToDate = "31/12/2018", // //Here you could select multiple capacities // //Capacity = new string[] { "Agent", "Additional Assured" }, // //Clause = "Crew Managers Clause", // AddressName = "Address name", // Street1 = "Street1", // Street2 = "Street2", // City = "City", // PostalCode = "Postal code", // Country = "ARUBA", // Phone = "Phone", // Fax = "Fax", // Email = "*****@*****.**" // } // )) //===================================================================== ////Uncoment this code to Add existing party //.AddExistingParty(mainflowData.SetPartySearchData( // new PartySearchData //{ // Ref = "26448", //}).SetExistingPartyDetailsData( // new ExistingPartyDetailsData //{ // Description = "Description", // Role = "Joint Assured", // FromDate = "01/01/2018", // ToDate = "01/12/2018", // Capacity = "Agent", // Clause = "Crew Managers Clause" //} //)) #endregion #region Set data for Broker tab .NavigateToBrokersTab() .AddBrokerToPolicy(mainflowData.SetBrokerData( new BrokerData { //FullName = "Broker", Reference = "2189" } )) #endregion #region Set data for Cover tab .NavigateToCoversTab() //For now, implemented just removing unnecessary Covers .RemoveCoversExcept(mainflowData, new string[] { "Yacht Legal Costs Cover" }) #endregion #region Set data for Premiums tab .NavigateToPremiumsTab() .ManagePremiumsFinancialData(mainflowData.SetEditFinancialData( new EditFinancialDataData { ////Commented fields not mandatory, please uncomment if you want to populate them Currency = "CANADIAN DOLLARS (CAD)", //ApplicableTax = "AUSTRALIA", //Comments = "Comments", //FlagAtRenewals = true, //RenewalComments = "Renewal comments" } )) .ManageInstallmentsAndCommissionsData(mainflowData.SetInstalmentsAndCommissionData( new InstalmentsAndCommissionData { CommissionPercentage = "10", CallType = "Fixed Premium", PremiumType = "Annual" })) .ManageSetAndUpdatePremiumData(mainflowData.SetSetUpdatePremiumsData( new SetUpdatePremiumsData { Ammount = "1000" } )) #endregion #region Set data for Premium Instalments tab .NavigateToPremiumIstalmentsTab() .SetInstalmentDetails(mainflowData.SetInstalmentsDetailsData( new InstalmentsDetailsData { IsInstalmentPatternBespoke = false, InstalmentsPattern = "100%" })) #endregion #region Issue and Bind quote .IssueQuote() .PerformQuickSearch_Quote(mainflowData.QuotePolicyData.QuoteReference, mainflowData) .GetQuoteDetails(mainflowData.QuotePolicyData) .BindQuote(mainflowData) .ManageInvoiceDetails(mainflowData.SetBindQuoteSelectDocumentationData( new BindQuoteSelectDocumentationData { IsShortFormTradingCertificate = true, LongFormCertificate = "Singular", Invoice = "Singular", InvoiceAddressee = "Member", InvoiceFormat = "Include Commission", Comments = "Some comments" } )) .ManageQuoteReinsurance(mainflowData.SetBindQuoteAddPatternData( new BindQuoteAddPatternData { Comments = "Some comments" } )) .PerformQuickSearch_Policy(mainflowData.QuotePolicyData.QuoteReference, mainflowData) ); #endregion }