public void BtnSaveClick_ExceptionOnSave_UpdateControlsAndRedirectToBaseChannelMainPage() { // Arrange var applicationLog = new Mock <IApplicationLog>(); applicationLog.Setup(x => x.LogCriticalError( It.IsAny <ECNException>(), "BaseChannelAbuse.btnSave_Click", DummyUserID, string.Empty, DummyUserID, DummyUserID)); var landingPageAssignContent = new Mock <ILandingPageAssignContent>(); landingPageAssignContent .Setup(x => x.Delete(It.IsAny <int>(), It.IsAny <User>())) .Throws(new ECNException(null)); var master = new Mock <IMasterCommunicator>(); master.Setup(x => x.GetUserID()).Throws(new ECNException(null)); _channel = CreateChannel(null, true, applicationLog.Object, landingPageAssignContent, master); InitializeBtnSaveException(); // Act var parameters = new object[] { null, null }; ReflectionHelper.ExecuteMethod(_channel, "btnSave_Click", parameters); // Assert applicationLog.VerifyAll(); }
public void PageLoad_NotChannelAdministrator_ShowNoAccessPanelAndDisplayError() { // Arrange _channel = CreateChannel(null, false); InitializePageLoadControls(false, true, false); // Act var parameters = new object[] { null, EventArgs.Empty }; ReflectionHelper.ExecuteMethod(_channel, PageLoadMethodName, parameters); // Assert var previewButton = ReflectionHelper.GetFieldInfoFromInstanceByName(_channel, PreviewButtonName) .GetValue(_channel) as Button; previewButton.ShouldSatisfyAllConditions( () => previewButton.ShouldNotBeNull(), () => previewButton.Enabled.ShouldBeFalse(), () => previewButton.Visible.ShouldBeFalse()); AssertPanelVisibility(NoAccessPanelName, true); AssertPanelVisibility(SettingsPanelName, false); var errorLabel = ReflectionHelper.GetFieldInfoFromInstanceByName(_channel, Label1Name) .GetValue(_channel) as Label; errorLabel.ShouldSatisfyAllConditions( () => errorLabel.ShouldNotBeNull(), () => errorLabel.Text.ShouldBe("You do not have access to this page.")); }
public void DdlCustomerSelectedIndexChanged_ZeroSelectedIndex_DisablePreview() { // Arrange _channel = CreateChannelWithEmptyPreviewParameters(); InitializeDropDownCustomerControls(ZeroSelectedIndex, NonEmptyText, true, BorderStyle.Dashed); ReflectionHelper.SetField(_channel, FieldLandingPageAssign, new LandingPageAssign() { LPAID = LandingPageID }); // Act var parameters = new object[] { null, EventArgs.Empty }; ReflectionHelper.ExecuteMethod(_channel, DdlCustomerSelectedIndexChangedMethodName, parameters); // Assert var previewButton = ReflectionHelper.GetFieldInfoFromInstanceByName(_channel, HtmlPreviewShowButtonName) .GetValue(_channel) as Button; previewButton.ShouldSatisfyAllConditions( () => previewButton.ShouldNotBeNull(), () => previewButton.Enabled.ShouldBeFalse(), () => previewButton.Visible.ShouldBeFalse()); var urlWarning = ReflectionHelper.GetFieldInfoFromInstanceByName(_channel, UrlWarningLabelName) .GetValue(_channel) as Label; urlWarning.ShouldSatisfyAllConditions( () => urlWarning.ShouldNotBeNull(), () => urlWarning.BorderStyle.ShouldBe(BorderStyle.None), () => urlWarning.Text.ShouldBeEmpty()); }
public void DdlCustomerSelectedIndexChanged_NullUrl_DisablePreview() { // Arrange _channel = CreateChannelWithEmptyPreviewParameters(); InitializeDropDownCustomerControls(NonZeroSelectedIndex, NonEmptyText, true, BorderStyle.None); ReflectionHelper.SetField(_channel, FieldLandingPageAssign, new LandingPageAssign() { LPAID = LandingPageID }); // Act var parameters = new object[] { null, EventArgs.Empty }; ReflectionHelper.ExecuteMethod(_channel, DdlCustomerSelectedIndexChangedMethodName, parameters); // Assert var previewButton = ReflectionHelper.GetFieldInfoFromInstanceByName(_channel, HtmlPreviewShowButtonName) .GetValue(_channel) as Button; previewButton.ShouldSatisfyAllConditions( () => previewButton.ShouldNotBeNull(), () => previewButton.Enabled.ShouldBeFalse(), () => previewButton.Visible.ShouldBeFalse()); var urlWarning = ReflectionHelper.GetFieldInfoFromInstanceByName(_channel, UrlWarningLabelName) .GetValue(_channel) as Label; urlWarning.ShouldSatisfyAllConditions( () => urlWarning.ShouldNotBeNull(), () => urlWarning.BorderColor.ShouldBe(Color.Red), () => urlWarning.BorderStyle.ShouldBe(BorderStyle.Dashed), () => urlWarning.Text.ShouldBe( $"Something is wrong with the {CustomerDropDownItem2} report abuse page. \n Please ensure that the customer has sent blasts to at least one group.")); }
public void PageLoad_ChannelAdministrator_EnableSettingsPanelAndLoadData() { // Arrange var landingPageOption = new Mock <ILandingPageOption>(); landingPageOption.Setup(x => x.GetByLPID(It.IsAny <int>())) .Returns(new List <LandingPageOption>() { new LandingPageOption() { LPOID = LandingPageID, Name = TextContainsThankYou } }); _channel = CreateChannel(landingPageOption.Object); InitializePageLoadControls(true, false, true); // Act var parameters = new object[] { null, EventArgs.Empty }; ReflectionHelper.ExecuteMethod(_channel, PageLoadMethodName, parameters); // Assert var previewButton = ReflectionHelper.GetFieldInfoFromInstanceByName(_channel, PreviewButtonName) .GetValue(_channel) as Button; previewButton.ShouldSatisfyAllConditions( () => previewButton.ShouldNotBeNull(), () => previewButton.Enabled.ShouldBeTrue(), () => previewButton.Visible.ShouldBeTrue()); AssertPanelVisibility(NoAccessPanelName, false); AssertPanelVisibility(SettingsPanelName, true); AssertTextBox(ThankYouTextBoxName, NonEmptyText); }
public void SetUp() { _channel = CreateChannel(); }
public void BtnSaveClick_NullLandingPageAssignAndNonEmptyThankYouText_UpdateControlsAndRedirectToBaseChannelMainPage() { // Arrange var listOptions = ReflectionHelper.GetFieldInfoFromInstanceTypeByName(typeof(BaseChannelAbuse), "_listOptions"); listOptions.SetValue( null, new List <LandingPageOption>() { new LandingPageOption() { LPOID = LandingPageID, Name = TextContainsThankYou } }); LandingPageAssignContent landingPageAssignContentParameterValue = null; var landingPageAssignContent = new Mock <ILandingPageAssignContent>(); landingPageAssignContent .Setup(x => x.Save(It.IsAny <LandingPageAssignContent>(), It.IsAny <User>())) .Callback <LandingPageAssignContent, User>((landingPageAssignContentValue, userValue) => { landingPageAssignContentParameterValue = landingPageAssignContentValue; }); _channel = CreateChannel(null, true, null, landingPageAssignContent); InitializeControls(NonEmptyText, NonEmptyText, NonEmptyText); // Act var parameters = new object[] { null, null }; ReflectionHelper.ExecuteMethod(_channel, "btnSave_Click", parameters); // Assert var landingPageAssign = ReflectionHelper.GetFieldInfoFromInstanceByName(_channel, FieldLandingPageAssign).GetValue(_channel) as LandingPageAssign; landingPageAssign.ShouldSatisfyAllConditions( () => landingPageAssign.ShouldNotBeNull(), () => landingPageAssign.CreatedUserID.ShouldBe(DummyUserID), () => landingPageAssign.BaseChannelID.HasValue.ShouldBeTrue(), () => landingPageAssign.BaseChannelID.Value.ShouldBe(DummyBaseChannelID), () => landingPageAssign.LPID.ShouldBe(LandingPageID), () => landingPageAssign.BaseChannelDoesOverride.Value.ShouldNotBeNull(), () => landingPageAssign.BaseChannelDoesOverride.Value.ShouldBeFalse(), () => landingPageAssign.CustomerCanOverride.Value.ShouldNotBeNull(), () => landingPageAssign.CustomerCanOverride.Value.ShouldBeFalse(), () => landingPageAssign.Header.ShouldBe(NonEmptyText), () => landingPageAssign.Footer.ShouldBe(NonEmptyText), () => landingPageAssign.UpdatedUserID.ShouldBe(DummyUserID)); landingPageAssignContentParameterValue.ShouldSatisfyAllConditions( () => landingPageAssignContentParameterValue.ShouldNotBeNull(), () => landingPageAssignContentParameterValue.Display.ShouldBe(NonEmptyText), () => landingPageAssignContentParameterValue.CreatedUserID.ShouldBe(DummyUserID), () => landingPageAssignContentParameterValue.LPAID = landingPageAssign.LPAID, () => landingPageAssignContentParameterValue.LPOID = LandingPageID); var previewButton = ReflectionHelper.GetFieldInfoFromInstanceByName(_channel, PreviewButtonName).GetValue(_channel) as Button; previewButton.ShouldSatisfyAllConditions( () => previewButton.ShouldNotBeNull(), () => previewButton.Enabled.ShouldBeTrue(), () => previewButton.Visible.ShouldBeTrue(), () => previewButton.CssClass.ShouldBe(ECNButtonMedium)); var errorMessageLabel = ReflectionHelper.GetFieldInfoFromInstanceByName(_channel, "lblErrorMessage").GetValue(_channel) as Label; errorMessageLabel.ShouldSatisfyAllConditions( () => errorMessageLabel.ShouldNotBeNull(), () => errorMessageLabel.Text.ShouldBe(NonEmptyText)); _response.Verify(x => x.Redirect("BaseChannelMain.aspx"), Times.Once()); }