public void GivenFullyConfiguredViewWithFilledIllustrationPointsControl_WhenOutputCleared_ThenDataGridViewsUpdated() { // Given LocationCalculationsView <T> view = ShowFullyConfiguredCalculationsView(testForm); DataGridView calculationsDataGridView = GetCalculationsDataGridView(); DataGridViewRowCollection dataGridViewRows = calculationsDataGridView.Rows; calculationsDataGridView.CurrentCell = dataGridViewRows[3].Cells[0]; // Precondition Assert.AreEqual(4, dataGridViewRows.Count); Assert.AreEqual("-", dataGridViewRows[0].Cells[OutputColumnIndex].FormattedValue); Assert.AreNotEqual("-", dataGridViewRows[1].Cells[OutputColumnIndex].FormattedValue); Assert.AreEqual("-", dataGridViewRows[2].Cells[OutputColumnIndex].FormattedValue); Assert.AreNotEqual("-", dataGridViewRows[3].Cells[OutputColumnIndex].FormattedValue); Assert.AreEqual(2, GetIllustrationPointsControl().Data.Count()); var refreshed = false; calculationsDataGridView.Invalidated += (sender, args) => refreshed = true; // When ClearCalculationOutputAndNotifyObservers(view); // Then Assert.IsTrue(refreshed); Assert.AreEqual(4, dataGridViewRows.Count); Assert.AreEqual("-", dataGridViewRows[0].Cells[OutputColumnIndex].FormattedValue); Assert.AreEqual("-", dataGridViewRows[1].Cells[OutputColumnIndex].FormattedValue); Assert.AreEqual("-", dataGridViewRows[2].Cells[OutputColumnIndex].FormattedValue); Assert.AreEqual("-", dataGridViewRows[3].Cells[OutputColumnIndex].FormattedValue); CollectionAssert.IsEmpty(GetIllustrationPointsControl().Data); }
public void GivenFullyConfiguredViewWithIllustrationPointSelection_WhenOutputUpdated_ThenSelectionPreserved() { // Given LocationCalculationsView <T> view = ShowFullyConfiguredCalculationsView(testForm); DataGridView calculationsDataGridView = GetCalculationsDataGridView(); calculationsDataGridView.CurrentCell = calculationsDataGridView.Rows[3].Cells[0]; DataGridView illustrationPointsDataGridView = GetIllustrationPointsDataGridView(); illustrationPointsDataGridView.CurrentCell = illustrationPointsDataGridView.Rows[1].Cells[0]; // Precondition Assert.AreEqual(3, calculationsDataGridView.CurrentRow?.Index); Assert.AreEqual(1, illustrationPointsDataGridView.CurrentRow?.Index); AssertIllustrationPointControlSelection(view.Selection); // When SetCalculationOutputAndNotifyObservers(view); // Then Assert.AreEqual(3, calculationsDataGridView.CurrentRow?.Index); Assert.AreEqual(1, illustrationPointsDataGridView.CurrentRow?.Index); AssertIllustrationPointControlSelection(view.Selection); }
private void ReplaceCalculationsAndNotifyObservers(LocationCalculationsView <T> view) { ObservableList <HydraulicBoundaryLocationCalculation> calculations = GetCalculationsInView(view); calculations.Clear(); calculations.Add(new HydraulicBoundaryLocationCalculation(new HydraulicBoundaryLocation(10, "10", 10.0, 10.0))); calculations.NotifyObservers(); }
private void SetCalculationOutputAndNotifyObservers(LocationCalculationsView <T> view) { ObservableList <HydraulicBoundaryLocationCalculation> calculations = GetCalculationsInView(view); HydraulicBoundaryLocationCalculation hydraulicBoundaryLocationCalculation = calculations.First(); hydraulicBoundaryLocationCalculation.Output = new TestHydraulicBoundaryLocationCalculationOutput(new TestGeneralResultSubMechanismIllustrationPoint()); hydraulicBoundaryLocationCalculation.NotifyObservers(); }
private void ClearCalculationOutputAndNotifyObservers(LocationCalculationsView <T> view) { ObservableList <HydraulicBoundaryLocationCalculation> calculations = GetCalculationsInView(view); calculations.ForEach(calculation => { calculation.Output = null; calculation.NotifyObservers(); }); }
public void GivenFullyConfiguredView_WhenSelectingIllustrationPoint_ThenSelectionUpdated() { // Given LocationCalculationsView <T> view = ShowFullyConfiguredCalculationsView(testForm); DataGridView calculationsDataGridView = GetCalculationsDataGridView(); calculationsDataGridView.CurrentCell = calculationsDataGridView.Rows[3].Cells[0]; DataGridView illustrationPointsDataGridView = GetIllustrationPointsDataGridView(); // When illustrationPointsDataGridView.CurrentCell = illustrationPointsDataGridView.Rows[1].Cells[0]; // Then AssertIllustrationPointControlSelection(view.Selection); }
public void GivenFullyConfiguredView_WhenSelectingCalculation_ThenSelectionUpdated() { // Given LocationCalculationsView <T> view = ShowFullyConfiguredCalculationsView(testForm); DataGridView calculationsDataGridView = GetCalculationsDataGridView(); // When calculationsDataGridView.CurrentCell = calculationsDataGridView.Rows[3].Cells[0]; // Then DataGridViewRow currentCalculationRow = GetCalculationsDataGridViewControl().CurrentRow; Assert.AreEqual(3, currentCalculationRow.Index); Assert.AreEqual(GetCalculationSelection(view, currentCalculationRow.DataBoundItem), view.Selection); }
public void GivenFullyConfiguredViewWithCalculationSelection_WhenOutputUpdated_ThenSelectionPreserved() { // Given LocationCalculationsView <T> view = ShowFullyConfiguredCalculationsView(testForm); DataGridView calculationsDataGridView = GetCalculationsDataGridView(); calculationsDataGridView.CurrentCell = calculationsDataGridView.Rows[3].Cells[0]; // Precondition DataGridViewRow currentCalculationRow = GetCalculationsDataGridViewControl().CurrentRow; Assert.AreEqual(3, currentCalculationRow.Index); Assert.AreEqual(GetCalculationSelection(view, currentCalculationRow.DataBoundItem), view.Selection); // When SetCalculationOutputAndNotifyObservers(view); // Then currentCalculationRow = GetCalculationsDataGridViewControl().CurrentRow; Assert.AreEqual(3, currentCalculationRow.Index); Assert.AreEqual(GetCalculationSelection(view, currentCalculationRow.DataBoundItem), view.Selection); }
protected override ObservableList <HydraulicBoundaryLocationCalculation> GetCalculationsInView(LocationCalculationsView <HydraulicBoundaryLocationCalculation> view) { return(calculations); }
protected override object GetCalculationSelection(LocationCalculationsView <HydraulicBoundaryLocationCalculation> view, object selectedRowObject) { return(new WaveHeightCalculationContext(((HydraulicBoundaryLocationCalculationRow)selectedRowObject).CalculatableObject)); }
/// <summary> /// Method for getting the calculations in <paramref name="view"/>. /// </summary> /// <param name="view">The view to get the calculations from.</param> /// <returns>An <see cref="ObservableList{T}"/> of calculations.</returns> protected abstract ObservableList <HydraulicBoundaryLocationCalculation> GetCalculationsInView(LocationCalculationsView <T> view);
/// <summary> /// Method for obtaining the view selection object related to the selected calculation row. /// </summary> /// <param name="view">The calculations view involved.</param> /// <param name="selectedRowObject">The selected calculation row object.</param> /// <returns>The view selection object.</returns> protected abstract object GetCalculationSelection(LocationCalculationsView <T> view, object selectedRowObject);