/// <summary> /// Asserts the state of the <paramref name="columnStateDefinition"/> with an expected /// background color. /// </summary> /// <param name="columnStateDefinition">The <see cref="DataGridViewColumnStateDefinition"/> /// to assert.</param> /// <param name="expectedBackgroundColor">The expected background color of the column style.</param> /// <exception cref="AssertionException">Thrown when the state of <paramref name="columnStateDefinition"/> /// is not the same as the expected state.</exception> public static void AssertColumnWithColorState(DataGridViewColumnStateDefinition columnStateDefinition, Color expectedBackgroundColor) { Assert.IsTrue(columnStateDefinition.ReadOnly); Assert.AreEqual(Color.FromKnownColor(KnownColor.ControlText), columnStateDefinition.Style.TextColor); Assert.AreEqual(expectedBackgroundColor, columnStateDefinition.Style.BackgroundColor); }
public void GivenFormWithAssemblyResultPerSectionView_WhenRefreshingAssemblyResults_ThenCategoryColumnSetToColumnStateDefinition( bool readOnly, string errorText, CellStyle style) { // Given using (new AssemblyToolCalculatorFactoryConfig()) using (ShowAssemblyResultPerSectionView()) { ButtonTester buttonTester = GetRefreshAssemblyResultButtonTester(); buttonTester.Properties.Enabled = true; DataGridView dataGridView = GetDataGridView(); dataGridView.CellFormatting += (sender, args) => { var row = (IHasColumnStateDefinitions)dataGridView.Rows[0].DataBoundItem; DataGridViewColumnStateDefinition definition = row.ColumnStateDefinitions[worstAssemblyResultPerSectionColumnIndex]; definition.ReadOnly = readOnly; definition.ErrorText = errorText; definition.Style = style; }; // When buttonTester.Click(); // Then DataGridViewCell cell = dataGridView.Rows[0].Cells[worstAssemblyResultPerSectionColumnIndex]; Assert.AreEqual(readOnly, cell.ReadOnly); Assert.AreEqual(errorText, cell.ErrorText); Assert.AreEqual(style.BackgroundColor, cell.Style.BackColor); Assert.AreEqual(style.TextColor, cell.Style.ForeColor); } }
public void CreateReadOnlyColumnStateDefinition_Always_ReturnColumnStateDefinition() { // Call DataGridViewColumnStateDefinition columnStateDefinition = DataGridViewColumnStateDefinitionFactory.CreateReadOnlyColumnStateDefinition(); // Assert Assert.IsTrue(columnStateDefinition.ReadOnly); }
public void Constructor_ExpectedValues() { // Call var columnStateDefinition = new DataGridViewColumnStateDefinition(); // Assert Assert.IsFalse(columnStateDefinition.ReadOnly); Assert.AreEqual(string.Empty, columnStateDefinition.ErrorText); Assert.AreEqual(CellStyle.Enabled, columnStateDefinition.Style); }
/// <summary> /// Helper method that disables the <paramref name="columnStateDefinition"/>. /// </summary> /// <param name="columnStateDefinition">The column state definition to enable.</param> /// <exception cref="ArgumentNullException">Thrown when <paramref name="columnStateDefinition"/> /// is <c>null</c>.</exception> public static void DisableColumn(DataGridViewColumnStateDefinition columnStateDefinition) { if (columnStateDefinition == null) { throw new ArgumentNullException(nameof(columnStateDefinition)); } columnStateDefinition.ReadOnly = true; columnStateDefinition.Style = CellStyle.Disabled; }
/// <summary> /// Helper method that enables the <paramref name="columnStateDefinition"/>. /// </summary> /// <param name="columnStateDefinition">The column state definition to enable.</param> /// <param name="readOnly">Indicator whether the column should be read-only or not.</param> /// <exception cref="ArgumentNullException">Thrown when <paramref name="columnStateDefinition"/> /// is <c>null</c>.</exception> public static void EnableColumn(DataGridViewColumnStateDefinition columnStateDefinition, bool readOnly = false) { if (columnStateDefinition == null) { throw new ArgumentNullException(nameof(columnStateDefinition)); } columnStateDefinition.ReadOnly = readOnly; columnStateDefinition.Style = CellStyle.Enabled; }
public void DisableColumn_WithValidData_UpdatesColumnState() { // Setup var columnStateDefinition = new DataGridViewColumnStateDefinition(); // Call ColumnStateHelper.DisableColumn(columnStateDefinition); // Assert Assert.IsTrue(columnStateDefinition.ReadOnly); Assert.AreEqual(CellStyle.Disabled, columnStateDefinition.Style); }
/// <summary> /// Helper method that sets the style of a <paramref name="columnStateDefinition"/> based on a /// <see cref="FailureMechanismSectionAssemblyGroup"/>. /// </summary> /// <param name="columnStateDefinition">The column state definition to set the style for.</param> /// <param name="assemblyGroup">The assembly group to base the style on.</param> /// <exception cref="InvalidEnumArgumentException">Thrown when <paramref name="assemblyGroup"/> /// has an invalid value for <see cref="FailureMechanismSectionAssemblyGroup"/>.</exception> /// <exception cref="NotSupportedException">Thrown when <paramref name="assemblyGroup"/> /// is not supported.</exception> /// <exception cref="ArgumentNullException">Thrown when <paramref name="columnStateDefinition"/> /// is <c>null</c>.</exception> public static void SetAssemblyGroupStyle(DataGridViewColumnStateDefinition columnStateDefinition, FailureMechanismSectionAssemblyGroup assemblyGroup) { if (columnStateDefinition == null) { throw new ArgumentNullException(nameof(columnStateDefinition)); } columnStateDefinition.Style = new CellStyle( Color.FromKnownColor(KnownColor.ControlText), FailureMechanismSectionAssemblyGroupColorHelper.GetFailureMechanismSectionAssemblyGroupColor(assemblyGroup)); }
/// <summary> /// Asserts the state of the <paramref name="columnStateDefinition"/>. /// </summary> /// <param name="columnStateDefinition">The <see cref="DataGridViewColumnStateDefinition"/> /// to assert.</param> /// <param name="isEnabled">Indicator whether the state should be enabled or not.</param> /// <param name="isReadOnly">Indicator whether the state should be read-only or not.</param> /// <exception cref="AssertionException">Thrown when the state of <paramref name="columnStateDefinition"/> /// is not equal to the given parameters.</exception> public static void AssertColumnState(DataGridViewColumnStateDefinition columnStateDefinition, bool isEnabled, bool isReadOnly = false) { if (isEnabled) { AssertColumnStateIsEnabled(columnStateDefinition, isReadOnly); } else { AssertColumnStateIsDisabled(columnStateDefinition); } }
public void SetAssemblyGroupStyle_ValidFailureMechanismSectionAssemblyGroup_UpdatesColumnStyle( FailureMechanismSectionAssemblyGroup assemblyGroup, Color expectedColor) { // Setup var columnStateDefinition = new DataGridViewColumnStateDefinition(); // Call FailureMechanismSectionResultRowHelper.SetAssemblyGroupStyle(columnStateDefinition, assemblyGroup); // Assert Assert.AreEqual(expectedColor, columnStateDefinition.Style.BackgroundColor); Assert.AreEqual(Color.FromKnownColor(KnownColor.ControlText), columnStateDefinition.Style.TextColor); }
public void SetColumnState_ShouldDisableTrue_UpdatesColumnState() { // Setup var columnStateDefinition = new DataGridViewColumnStateDefinition(); // Call ColumnStateHelper.SetColumnState( columnStateDefinition, true); // Assert Assert.IsTrue(columnStateDefinition.ReadOnly); Assert.AreEqual(CellStyle.Disabled, columnStateDefinition.Style); }
public void SetAssemblyGroupStyle_InvalidFailureMechanismSectionAssemblyGroup_ThrowsInvalidEnumArgumentException() { // Setup var columnStateDefinition = new DataGridViewColumnStateDefinition(); const FailureMechanismSectionAssemblyGroup assemblyGroup = (FailureMechanismSectionAssemblyGroup)99; // Call void Call() => FailureMechanismSectionResultRowHelper.SetAssemblyGroupStyle(columnStateDefinition, assemblyGroup); // Assert var expectedMessage = $"The value of argument 'assemblyGroup' ({assemblyGroup}) is invalid for Enum type '{nameof(FailureMechanismSectionAssemblyGroup)}'."; TestHelper.AssertThrowsArgumentExceptionAndTestMessage <InvalidEnumArgumentException>(Call, expectedMessage); }
public void EnableColumn_WithValidData_UpdatesColumnState() { // Setup var columnStateDefinition = new DataGridViewColumnStateDefinition(); bool readOnly = new Random(39).NextBoolean(); // Call ColumnStateHelper.EnableColumn( columnStateDefinition, readOnly); // Assert Assert.AreEqual(readOnly, columnStateDefinition.ReadOnly); Assert.AreEqual(CellStyle.Enabled, columnStateDefinition.Style); }
/// <summary> /// Helper method that sets the state of the <paramref name="columnStateDefinition"/> /// based on <paramref name="shouldDisable"/>. /// </summary> /// <param name="columnStateDefinition">The column state definition to set the state for.</param> /// <param name="shouldDisable">Indicator whether the column should be disabled or not.</param> /// <exception cref="ArgumentNullException">Thrown when <paramref name="columnStateDefinition"/> /// is <c>null</c>.</exception> public static void SetColumnState(DataGridViewColumnStateDefinition columnStateDefinition, bool shouldDisable) { if (columnStateDefinition == null) { throw new ArgumentNullException(nameof(columnStateDefinition)); } if (shouldDisable) { DisableColumn(columnStateDefinition); } else { EnableColumn(columnStateDefinition); } }
public void FormatCellWithColumnStateDefinition_WithArguments_FormatsCell( bool isReadOnly, string errorText, CellStyle cellStyle) { // Setup var definition = new DataGridViewColumnStateDefinition { ReadOnly = isReadOnly, ErrorText = errorText, Style = cellStyle }; var mocks = new MockRepository(); var row = mocks.Stub <IHasColumnStateDefinitions>(); row.Stub(r => r.ColumnStateDefinitions).Return(new Dictionary <int, DataGridViewColumnStateDefinition> { { 0, definition } }); mocks.ReplayAll(); using (var form = new Form()) using (var dataGridViewControl = new DataGridViewControl()) { form.Controls.Add(dataGridViewControl); form.Show(); dataGridViewControl.AddTextBoxColumn(null, "Test"); dataGridViewControl.SetDataSource(new[] { row }); // Call dataGridViewControl.FormatCellWithColumnStateDefinition(0, 0); // Assert DataGridViewCell cell = dataGridViewControl.Rows[0].Cells[0]; Assert.AreEqual(isReadOnly, cell.ReadOnly); Assert.AreEqual(errorText, cell.ErrorText); Assert.AreEqual(cellStyle.BackgroundColor, cell.Style.BackColor); Assert.AreEqual(cellStyle.TextColor, cell.Style.ForeColor); mocks.VerifyAll(); } }
/// <summary> /// Asserts that the state of the <paramref name="columnStateDefinition"/> is enabled. /// </summary> /// <param name="columnStateDefinition">The <see cref="DataGridViewColumnStateDefinition"/> /// to assert.</param> /// <param name="readOnly">Indicator whether the column state should be read-only or not.</param> /// <exception cref="AssertionException">Thrown when the state of <paramref name="columnStateDefinition"/> /// is not the same as the expected enabled state.</exception> public static void AssertColumnStateIsEnabled(DataGridViewColumnStateDefinition columnStateDefinition, bool readOnly = false) { Assert.AreEqual(CellStyle.Enabled, columnStateDefinition.Style); Assert.AreEqual(readOnly, columnStateDefinition.ReadOnly); Assert.AreEqual(string.Empty, columnStateDefinition.ErrorText); }
/// <summary> /// Asserts that the state of the <paramref name="columnStateDefinition"/> is disabled. /// </summary> /// <param name="columnStateDefinition">The <see cref="DataGridViewColumnStateDefinition"/> /// to assert.</param> /// <exception cref="AssertionException">Thrown when the state of <paramref name="columnStateDefinition"/> /// is not the same as the expected disabled state.</exception> public static void AssertColumnStateIsDisabled(DataGridViewColumnStateDefinition columnStateDefinition) { Assert.AreEqual(CellStyle.Disabled, columnStateDefinition.Style); Assert.IsTrue(columnStateDefinition.ReadOnly); Assert.AreEqual(string.Empty, columnStateDefinition.ErrorText); }