public void StartPage(Event details) { if (details.StartPage.EventType.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventType.SelectWithText(details.StartPage.EventType.ToString()); } if (details.StartPage.StartDate.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartDate_Type(details.StartPage.StartDate.Value); } if (details.StartPage.EndDate.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EndDate_Type(details.StartPage.EndDate.Value); } if (details.StartPage.StartTime.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartTime_Type(details.StartPage.StartTime.Value); } if (details.StartPage.EndTime.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EndTime_Type(details.StartPage.EndTime.Value); } if (details.StartPage.Location != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.LocationName.Type(details.StartPage.Location); } if (details.StartPage.Phone != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.LocationPhone.Type(details.StartPage.Phone); } if (details.StartPage.Country != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.Country_Select(details.StartPage.Country); } if (details.StartPage.Address1 != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.AddressLineOne.Type(details.StartPage.Address1); } if (details.StartPage.Address2 != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.AddressLineTwo.Type(details.StartPage.Address2); } if (details.StartPage.City != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.City.Type(details.StartPage.City); } if (details.StartPage.State != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.State.SelectWithText(details.StartPage.State); } if (details.StartPage.Zip != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.PostalCode.Type(details.StartPage.Zip); } if (details.StartPage.ContactInfo != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EditContactInfo_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.ContactInfo.SelectByName(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.ContactInfo.HtmlMode_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.ContactInfo.Content_Type(details.StartPage.ContactInfo); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.ContactInfo.SaveAndClose_Click(); } if (details.StartPage.EventHome != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventHome.Type(details.StartPage.EventHome); } if (details.StartPage.EventLimit != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.LimitRegs_Set(true); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegSpaces.Type(details.StartPage.EventLimit.Spaces); if (details.StartPage.EventLimit.EnableWaitList.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EnableWaitlist.Set(details.StartPage.EventLimit.EnableWaitList.Value); } } if (details.StartPage.RegTypes.Count != 0) { foreach (RegType regType in details.StartPage.RegTypes) { KeywordProvider.AddRegType.Add_RegType(regType, details); PageObject.Builder.RegistrationFormPages.RegTypeRow row = new PageObject.Builder.RegistrationFormPages.RegTypeRow(regType.Name); regType.Id = row.RegTypeId; } } if (details.StartPage.Customize_RegType_DisplayOptions.IsCustomized) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.CustomizeRegTypeDisplayOptions_Set(true); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDisplayFormat.SelectWithValue(CustomStringAttribute.GetCustomString(details.StartPage.Customize_RegType_DisplayOptions.DisplayOption)); } // Set event name and shortcut after regType created to avoid bug 24560 PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.Title.Type(details.Title); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.Shortcut.Type(details.Shortcut); // Set event fee if (details.StartPage.Event_Fee != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFee_Type(details.StartPage.Event_Fee.StandardPrice); if (details.StartPage.Event_Fee.Early_Price != null || details.StartPage.Event_Fee.Late_Price != null || (details.StartPage.Event_Fee.AllCustomCodes != null && details.StartPage.Event_Fee.AllCustomCodes.Count > 0)) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFeeAdvanced_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFeeDefine.AdjustRADWindowPositionAndResize(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFeeDefine.SelectByName(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFeeDefine.Options_Expand(); if (details.StartPage.Event_Fee.Name != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFeeDefine.NameOnReceipt.Type(details.StartPage.Event_Fee.Name); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFeeDefine.NameOnReports.Type(details.StartPage.Event_Fee.Name); } else { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFeeDefine.NameOnReceipt.Type(details.StartPage.Event_Fee.Name + "_" + RegType.Default.FeeName); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFeeDefine.NameOnReports.Type(details.StartPage.Event_Fee.Name + "_" + RegType.Default.FeeName); } if (details.StartPage.Event_Fee.AllCustomCodes.Count != 0) { foreach (DataCollection.CustomFieldCode code in details.StartPage.Event_Fee.AllCustomCodes) { KeywordProvider.AddDiscountCode.AddDiscountCodes(code, FormData.Location.EventFee); } PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFeeDefine.RequireCode.Set(details.StartPage.Event_Fee.RequireDC); } PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventFeeDefine.SaveAndClose_Click(); } } if (details.StartPage.AllowGroupReg.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.AllGroupReg_Set(details.StartPage.AllowGroupReg.Value); PageObject.PageObjectProvider.Builder.EventDetails.SaveAndStay_Click(); } if (details.StartPage.ForceSelectSameRegType.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.ForceSameGroupType.Set(details.StartPage.ForceSelectSameRegType.Value); } if (details.StartPage.AllowChangeRegType.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.AllowChangeRegType.Set(details.StartPage.AllowChangeRegType.Value); } if (details.StartPage.AdvancedSettings != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.AdvancedSettings_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventAdvancedSettings.SelectByName(); if (details.StartPage.AdvancedSettings.ThisIsAParentEvent.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventAdvancedSettings.ThisIsAParentEvent.Set(details.StartPage.AdvancedSettings.ThisIsAParentEvent.Value); } if (details.StartPage.AdvancedSettings.ThisIsAChildEvent.HasValue) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventAdvancedSettings.ThisIsAChildEvent.Set(details.StartPage.AdvancedSettings.ThisIsAChildEvent.Value); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventAdvancedSettings.SelectParentEvent(details); } PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EventAdvancedSettings.SaveAndClose_Click(); } if ((details.StartPage.PageHeader != null) || (details.StartPage.PageFooter != null)) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.GotoPage(FormData.Page.Start); if (details.StartPage.PageHeader != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartPageHeader_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartPageHeaderEditor.SelectByName(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartPageHeaderEditor.HtmlMode_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartPageHeaderEditor.Content_Type(details.StartPage.PageHeader); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartPageHeaderEditor.SaveAndClose_Click(); } if (details.StartPage.PageFooter != null) { PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartPageFooter_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartPageFooterEditor.SelectByName(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartPageFooterEditor.HtmlMode_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartPageFooterEditor.Content_Type(details.StartPage.PageFooter); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.StartPageFooterEditor.SaveAndClose_Click(); } } }
public void SetupSSO() { string attri2 = "disabled"; string wrongFormatURL1 = "http://www.xx.com"; string wrongFormatURL2 = "www.xx.com"; RegType regType1 = new RegType("SSORegType"); regType1.IsSSO = true; RegType regType2 = new RegType("NoneSSORegType"); regType2.IsSSO = true; Event evt = new Event("SetupSSO"); KeywordProvider.SignIn.SignIn(EventFolders.Folders.SSO); if (KeywordProvider.ManagerDefault.DoesEventExist(evt.Title)) { KeywordProvider.ManagerDefault.DeleteEvent(evt.Title); } KeywordProvider.EventCreator.ClickAddEventAndGetEventId(evt); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.EmptyAddRegType_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.SelectByName(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.NameOnForm.Type(regType1.Name); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.NameOnReports.Type(regType1.Name); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthentication_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.SelectByName(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.SSORadio.Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.EndpointURL.Type(wrongFormatURL1); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.LoginURL.Type(SSOData.SSOLoginURL); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.SaveAndClose_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.SelectByName(); Assert.True(PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.ErrorMessage(Messages.BuilderError.ServiceEndPointFormatError).IsPresent); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.EndpointURL.Type(wrongFormatURL2); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.SaveAndClose_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.SelectByName(); Assert.True(PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.ErrorMessage(Messages.BuilderError.ServiceEndPointFormatError).IsPresent); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.EndpointURL.Type(SSOData.SSOEndpointURL); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.SaveAndClose_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.SelectByName(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.EnableExternalAuthentication.Set(true); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.SaveAndClose_Click(); PageObject.Builder.RegistrationFormPages.RegTypeRow row1 = new PageObject.Builder.RegistrationFormPages.RegTypeRow(regType1.Name); KeywordProvider.AddRegType.Add_RegType(regType2, evt); PageObject.Builder.RegistrationFormPages.RegTypeRow row2 = new PageObject.Builder.RegistrationFormPages.RegTypeRow(regType2.Name); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.Title.Type(evt.Title); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.Shortcut.Type(evt.Shortcut); PageObject.PageObjectProvider.Builder.EventDetails.SaveAndClose_Click(); KeywordProvider.ManagerDefault.OpenFormDashboard(evt.Title); PageObject.PageObjectProvider.Manager.Dashboard.EventDetails.ThirdParty_Click(); PageObject.PageObjectProvider.Manager.Dashboard.EventDetails.ThirdPartyIntegrations.SelectByName(); PageObject.PageObjectProvider.Manager.Dashboard.EventDetails.ThirdPartyIntegrations.ExternalAuthentication_Click(); Assert.True(PageObject.PageObjectProvider.Manager.SSOBase.SSORadio.IsChecked); Assert.AreEqual(PageObject.PageObjectProvider.Manager.SSOBase.EndpointURL.Value, SSOData.SSOEndpointURL); Assert.AreEqual(PageObject.PageObjectProvider.Manager.SSOBase.LoginURL.Value, SSOData.SSOLoginURL); Assert.True(PageObject.PageObjectProvider.Manager.SSOBase.RegTypeEnabled(regType1).IsChecked); Assert.True(PageObject.PageObjectProvider.Manager.SSOBase.RegTypeEnabled(regType2).IsChecked); PageObject.PageObjectProvider.Manager.SSOBase.EndpointURL.Type(wrongFormatURL1); PageObject.PageObjectProvider.Manager.SSOBase.SaveAndClose_Click(); PageObject.PageObjectProvider.Manager.SSOBase.SelectByName(); Assert.True(PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.ErrorMessage(Messages.BuilderError.ServiceEndPointFormatError).IsPresent); PageObject.PageObjectProvider.Manager.SSOBase.EndpointURL.Type(wrongFormatURL2); PageObject.PageObjectProvider.Manager.SSOBase.SaveAndClose_Click(); PageObject.PageObjectProvider.Manager.SSOBase.SelectByName(); Assert.True(PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.ExternalAuthenticationSetup.ErrorMessage(Messages.BuilderError.ServiceEndPointFormatError).IsPresent); PageObject.PageObjectProvider.Manager.SSOBase.EndpointURL.Type(SSOData.SSOEndpointURL); PageObject.PageObjectProvider.Manager.SSOBase.RegTypeEnabled(regType2).Set(false); regType2.IsSSO = false; PageObject.PageObjectProvider.Manager.SSOBase.SaveAndClose_Click(); PageObject.PageObjectProvider.Manager.Dashboard.EventDetails.EditForm_Click(); row2.Title_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.SelectByName(); Assert.False(PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.EnableExternalAuthentication.IsChecked); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.Cancel_Click(); PageObject.PageObjectProvider.Builder.EventDetails.SaveAndClose_Click(); PageObject.PageObjectProvider.Manager.Dashboard.ReturnToList_Click(); Registrant reg1 = new Registrant(evt, SSOData.SSOTestEmail); reg1.Password = SSOData.SSOPassword; reg1.EventFee_Response = new EventFeeResponse(regType1); Registrant reg2 = new Registrant(evt); reg2.EventFee_Response = new EventFeeResponse(regType2); KeywordProvider.RegistrationCreation.CreateRegistration(reg1); KeywordProvider.RegistrationCreation.CreateRegistration(reg2); KeywordProvider.SignIn.SignIn(EventFolders.Folders.SSO); KeywordProvider.ManagerDefault.OpenFormDashboard(evt.Title); PageObject.PageObjectProvider.Manager.Dashboard.EventDetails.EditForm_Click(); row1.Title_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.SelectByName(); Assert.True(PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.EnableExternalAuthentication.HasAttribute(attri2)); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.Cancel_Click(); row2.Title_Click(); PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.SelectByName(); Assert.True(PageObject.PageObjectProvider.Builder.EventDetails.FormPages.StartPage.RegTypeDefine.EnableExternalAuthentication.HasAttribute(attri2)); }