Beispiel #1
0
        public void GetMergeData_WithAssessmentSection_SetsDataOnDialog()
        {
            // Setup
            DialogBoxHandler = (formName, wnd) =>
            {
                using (new FormTester(formName)) {}
            };

            AssessmentSection assessmentSection = TestDataGenerator.GetAssessmentSectionWithAllCalculationConfigurationsAndSpecificFailureMechanisms();

            using (var dialogParent = new Form())
                using (var dialog = new AssessmentSectionMergeDataProviderDialog(dialogParent))
                {
                    // Call
                    dialog.GetMergeData(assessmentSection);

                    // Assert
                    var dataGridView = (DataGridView) new ControlTester("dataGridView", dialog).TheObject;
                    DataGridViewRowCollection rows = dataGridView.Rows;

                    int expectedNrOfRows = assessmentSection.GetFailureMechanisms().Count() +
                                           assessmentSection.SpecificFailureMechanisms.Count;
                    Assert.AreEqual(expectedNrOfRows, rows.Count);
                    AssertFailureMechanismRows(assessmentSection, rows);
                    AssertSpecificFailureMechanismRows(assessmentSection, rows);
                }
        }
Beispiel #2
0
        public void Constructor_ExpectedValues()
        {
            // Setup
            var mocks        = new MockRepository();
            var dialogParent = mocks.Stub <IWin32Window>();

            mocks.ReplayAll();

            // Call
            using (var dialog = new AssessmentSectionMergeDataProviderDialog(dialogParent))
            {
                // Assert
                Assert.IsInstanceOf <DialogBase>(dialog);
                Assert.IsInstanceOf <IAssessmentSectionMergeDataProvider>(dialog);

                Assert.AreEqual("Selecteer trajectinformatie", dialog.Text);

                Icon   icon          = BitmapToIcon(Resources.SelectionDialogIcon);
                Bitmap expectedImage = icon.ToBitmap();
                Bitmap actualImage   = dialog.Icon.ToBitmap();
                TestHelper.AssertImagesAreEqual(expectedImage, actualImage);
            }

            mocks.VerifyAll();
        }
Beispiel #3
0
        public void GivenValidDialog_WhenGetMergeDataCalledAndAllDataSelectedAndImportPressed_ThenReturnsSelectedData()
        {
            // Given
            AssessmentSection assessmentSection = TestDataGenerator.GetAssessmentSectionWithAllCalculationConfigurationsAndSpecificFailureMechanisms();

            DialogBoxHandler = (formName, wnd) =>
            {
                using (var formTester = new FormTester(formName))
                {
                    var dialog = (AssessmentSectionMergeDataProviderDialog)formTester.TheObject;

                    var dataGridView = (DataGridView) new ControlTester("dataGridView", dialog).TheObject;

                    DataGridViewRowCollection rows = dataGridView.Rows;

                    foreach (DataGridViewRow row in rows)
                    {
                        row.Cells[isSelectedIndex].Value = true;
                    }

                    var button = new ButtonTester("importButton", formName);
                    button.Click();
                }
            };

            using (var dialogParent = new Form())
                using (var dialog = new AssessmentSectionMergeDataProviderDialog(dialogParent))
                {
                    // When
                    AssessmentSectionMergeData result = dialog.GetMergeData(assessmentSection);

                    // Then
                    Assert.AreSame(assessmentSection, result.AssessmentSection);

                    Assert.IsTrue(result.MergePiping);
                    Assert.IsTrue(result.MergeGrassCoverErosionInwards);
                    Assert.IsTrue(result.MergeMacroStabilityInwards);
                    Assert.IsTrue(result.MergeMicrostability);
                    Assert.IsTrue(result.MergeStabilityStoneCover);
                    Assert.IsTrue(result.MergeWaveImpactAsphaltCover);
                    Assert.IsTrue(result.MergeWaterPressureAsphaltCover);
                    Assert.IsTrue(result.MergeGrassCoverErosionOutwards);
                    Assert.IsTrue(result.MergeGrassCoverSlipOffOutwards);
                    Assert.IsTrue(result.MergeGrassCoverSlipOffInwards);
                    Assert.IsTrue(result.MergeHeightStructures);
                    Assert.IsTrue(result.MergeClosingStructures);
                    Assert.IsTrue(result.MergePipingStructure);
                    Assert.IsTrue(result.MergeStabilityPointStructures);
                    Assert.IsTrue(result.MergeDuneErosion);
                    CollectionAssert.AreEqual(assessmentSection.SpecificFailureMechanisms, result.MergeSpecificFailureMechanisms);
                }
        }
Beispiel #4
0
        public void GetMergeData_AssessmentSectionNull_ThrowsArgumentNullException()
        {
            // Setup
            var mocks        = new MockRepository();
            var dialogParent = mocks.Stub <IWin32Window>();

            mocks.ReplayAll();

            using (var dialog = new AssessmentSectionMergeDataProviderDialog(dialogParent))
            {
                // Call
                void Call() => dialog.GetMergeData(null);

                // Assert
                var exception = Assert.Throws <ArgumentNullException>(Call);
                Assert.AreEqual("assessmentSection", exception.ParamName);
            }

            mocks.VerifyAll();
        }
Beispiel #5
0
        public void GivenValidDialog_WhenGetMergeDataCalledAndImportPressed_ThenReturnsSelectedData()
        {
            // Given
            AssessmentSection assessmentSection = TestDataGenerator.GetAssessmentSectionWithAllCalculationConfigurationsAndSpecificFailureMechanisms();

            DialogBoxHandler = (formName, wnd) =>
            {
                using (new FormTester(formName))
                {
                    var button = new ButtonTester("importButton", formName);
                    button.Click();
                }
            };

            using (var dialogParent = new Form())
                using (var dialog = new AssessmentSectionMergeDataProviderDialog(dialogParent))
                {
                    // When
                    AssessmentSectionMergeData result = dialog.GetMergeData(assessmentSection);

                    // Then
                    Assert.AreSame(assessmentSection, result.AssessmentSection);

                    Assert.IsFalse(result.MergePiping);
                    Assert.IsFalse(result.MergeGrassCoverErosionInwards);
                    Assert.IsFalse(result.MergeMacroStabilityInwards);
                    Assert.IsFalse(result.MergeMicrostability);
                    Assert.IsFalse(result.MergeStabilityStoneCover);
                    Assert.IsFalse(result.MergeWaveImpactAsphaltCover);
                    Assert.IsFalse(result.MergeWaterPressureAsphaltCover);
                    Assert.IsFalse(result.MergeGrassCoverErosionOutwards);
                    Assert.IsFalse(result.MergeGrassCoverSlipOffOutwards);
                    Assert.IsFalse(result.MergeGrassCoverSlipOffInwards);
                    Assert.IsFalse(result.MergeHeightStructures);
                    Assert.IsFalse(result.MergeClosingStructures);
                    Assert.IsFalse(result.MergePipingStructure);
                    Assert.IsFalse(result.MergeStabilityPointStructures);
                    Assert.IsFalse(result.MergeDuneErosion);
                    CollectionAssert.IsEmpty(result.MergeSpecificFailureMechanisms);
                }
        }
Beispiel #6
0
        public void GivenValidDialog_WhenGetMergeDataCalledAndCancelPressed_ThenReturnsNull()
        {
            // Given
            DialogBoxHandler = (formName, wnd) =>
            {
                using (new FormTester(formName))
                {
                    var button = new ButtonTester("cancelButton", formName);
                    button.Click();
                }
            };

            using (var dialogParent = new Form())
                using (var dialog = new AssessmentSectionMergeDataProviderDialog(dialogParent))
                {
                    // When
                    AssessmentSectionMergeData result = dialog.GetMergeData(TestDataGenerator.GetAssessmentSectionWithAllCalculationConfigurationsAndSpecificFailureMechanisms());

                    // Then
                    Assert.IsNull(result);
                }
        }
Beispiel #7
0
        public void Show_Always_InitializesTooltip()
        {
            // Setup
            using (var dialogParent = new Form())
                using (var dialog = new AssessmentSectionMergeDataProviderDialog(dialogParent))
                {
                    // Call
                    dialog.Show();

                    // Assert
                    var infoIcon = (PictureBox) new ControlTester("infoIcon", dialog).TheObject;
                    TestHelper.AssertImagesAreEqual(CoreGuiResources.information, infoIcon.BackgroundImage);
                    Assert.AreEqual(ImageLayout.Center, infoIcon.BackgroundImageLayout);

                    var toolTip = TypeUtils.GetField <ToolTip>(dialog, "toolTip");
                    Assert.AreEqual("Hydraulische belastingen op trajectniveau worden altijd samengevoegd.\r\n" +
                                    "Daarbij gaan de huidige berekeningsresultaten voor belastingen op trajectniveau niet verloren.",
                                    toolTip.GetToolTip(infoIcon));
                    Assert.AreEqual(5000, toolTip.AutoPopDelay);
                    Assert.AreEqual(100, toolTip.InitialDelay);
                    Assert.AreEqual(100, toolTip.ReshowDelay);
                }
        }
Beispiel #8
0
        public void Show_Always_DefaultProperties()
        {
            // Setup
            using (var dialogParent = new Form())
                using (var dialog = new AssessmentSectionMergeDataProviderDialog(dialogParent))
                {
                    // Call
                    dialog.Show();

                    // Assert
                    Assert.AreEqual(1, dialog.Controls.Count);

                    var tableLayoutPanel = (TableLayoutPanel) new ControlTester("tableLayoutPanelForForm").TheObject;
                    Assert.AreEqual(1, tableLayoutPanel.ColumnCount);
                    Assert.AreEqual(4, tableLayoutPanel.RowCount);

                    var panelForLabels = (Panel)tableLayoutPanel.GetControlFromPosition(0, 1);
                    var failureMechanismSelectionLabel = (Label)panelForLabels.Controls[0];
                    Assert.AreEqual("Selecteer faalmechanismen:", failureMechanismSelectionLabel.Text);

                    Assert.IsInstanceOf <DataGridViewControl>(tableLayoutPanel.GetControlFromPosition(0, 2));
                    var dataGridView = (DataGridView) new ControlTester("dataGridView").TheObject;
                    Assert.AreEqual(columnCount, dataGridView.ColumnCount);
                    Assert.AreEqual(0, dataGridView.RowCount);
                    Assert.IsInstanceOf <DataGridViewCheckBoxColumn>(dataGridView.Columns[isSelectedIndex]);
                    Assert.IsInstanceOf <DataGridViewTextBoxColumn>(dataGridView.Columns[failureMechanismNameIndex]);
                    Assert.IsInstanceOf <DataGridViewCheckBoxColumn>(dataGridView.Columns[inAssemblyIndex]);
                    Assert.IsInstanceOf <DataGridViewCheckBoxColumn>(dataGridView.Columns[hasSectionsIndex]);
                    Assert.IsInstanceOf <DataGridViewTextBoxColumn>(dataGridView.Columns[numberOfCalculationsIndex]);

                    Assert.AreEqual("Selecteer", dataGridView.Columns[isSelectedIndex].HeaderText);
                    Assert.AreEqual("Faalmechanisme", dataGridView.Columns[failureMechanismNameIndex].HeaderText);
                    Assert.AreEqual("In assemblage", dataGridView.Columns[inAssemblyIndex].HeaderText);
                    Assert.AreEqual("Heeft vakindeling", dataGridView.Columns[hasSectionsIndex].HeaderText);
                    Assert.AreEqual("Aantal berekeningen", dataGridView.Columns[numberOfCalculationsIndex].HeaderText);

                    Assert.IsFalse(dataGridView.Columns[isSelectedIndex].ReadOnly);
                    Assert.IsTrue(dataGridView.Columns[failureMechanismNameIndex].ReadOnly);
                    Assert.IsTrue(dataGridView.Columns[inAssemblyIndex].ReadOnly);
                    Assert.IsTrue(dataGridView.Columns[hasSectionsIndex].ReadOnly);
                    Assert.IsTrue(dataGridView.Columns[numberOfCalculationsIndex].ReadOnly);

                    Assert.AreEqual(DataGridViewAutoSizeColumnsMode.AllCells, dataGridView.AutoSizeColumnsMode);
                    Assert.AreEqual(DataGridViewContentAlignment.MiddleCenter, dataGridView.ColumnHeadersDefaultCellStyle.Alignment);

                    var flowLayoutPanel = (FlowLayoutPanel)tableLayoutPanel.GetControlFromPosition(0, 3);
                    Control.ControlCollection flowLayoutPanelControls = flowLayoutPanel.Controls;
                    Assert.AreEqual(3, flowLayoutPanelControls.Count);
                    Control pictureBox = flowLayoutPanel.Controls[2];
                    Assert.IsInstanceOf <PictureBox>(pictureBox);

                    var buttonSelect = (Button) new ButtonTester("importButton", dialog).TheObject;
                    Assert.AreEqual("Importeren", buttonSelect.Text);
                    Assert.IsTrue(buttonSelect.Enabled);
                    Assert.AreEqual(DialogResult.OK, buttonSelect.DialogResult);

                    var buttonCancel = (Button) new ButtonTester("cancelButton", dialog).TheObject;
                    Assert.AreEqual("Annuleren", buttonCancel.Text);
                    Assert.AreEqual(dialog.CancelButton, buttonCancel);
                    Assert.AreEqual(DialogResult.Cancel, buttonCancel.DialogResult);

                    Assert.AreEqual(720, dialog.MinimumSize.Width);
                    Assert.AreEqual(590, dialog.MinimumSize.Height);
                }
        }