public void IsEnabled_CalculationGroupWithChildren_ReturnTrue(bool hasNestedGroup, bool hasCalculation)
        {
            // Setup
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            mocks.ReplayAll();

            var calculationGroup = new CalculationGroup();

            if (hasNestedGroup)
            {
                calculationGroup.Children.Add(new CalculationGroup());
            }

            if (hasCalculation)
            {
                calculationGroup.Children.Add(new TestPipingCalculationScenario());
            }

            var context = new PipingCalculationGroupContext(calculationGroup,
                                                            null,
                                                            Enumerable.Empty <PipingSurfaceLine>(),
                                                            Enumerable.Empty <PipingStochasticSoilModel>(),
                                                            new PipingFailureMechanism(),
                                                            assessmentSection);

            // Call
            bool isEnabled = info.IsEnabled(context);

            // Assert
            Assert.IsTrue(isEnabled);
        }
Exemplo n.º 2
0
        public void CloseForData_NestedViewNotCorrespondingWithRemovedParentPipingCalculationGroupContext_ReturnsFalse()
        {
            // Setup
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            mocks.ReplayAll();

            var calculation = new ProbabilisticPipingCalculationScenario();
            var nestedGroup = new CalculationGroup();

            nestedGroup.Children.Add(calculation);
            var calculationGroup = new CalculationGroup();

            calculationGroup.Children.Add(nestedGroup);

            var calculationGroupContext = new PipingCalculationGroupContext(new CalculationGroup(),
                                                                            null,
                                                                            Enumerable.Empty <PipingSurfaceLine>(),
                                                                            Enumerable.Empty <PipingStochasticSoilModel>(),
                                                                            new PipingFailureMechanism(),
                                                                            assessmentSection);

            using (var view = new PipingInputView
            {
                Data = calculation
            })
            {
                // Call
                bool closeForData = info.CloseForData(view, calculationGroupContext);

                // Assert
                Assert.IsFalse(closeForData);
                mocks.VerifyAll();
            }
        }
        public void CreateFileExporter_Always_ReturnFileExporter()
        {
            // Setup
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            mocks.ReplayAll();

            var context = new PipingCalculationGroupContext(new CalculationGroup(),
                                                            null,
                                                            Enumerable.Empty <PipingSurfaceLine>(),
                                                            Enumerable.Empty <PipingStochasticSoilModel>(),
                                                            new PipingFailureMechanism(),
                                                            assessmentSection);

            // Call
            IFileExporter fileExporter = info.CreateFileExporter(context, "test");

            // Assert
            Assert.IsInstanceOf <PipingCalculationConfigurationExporter>(fileExporter);
        }
        public void IsEnabled_CalculationGroupNoChildren_ReturnFalse()
        {
            // Setup
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            mocks.ReplayAll();

            var context = new PipingCalculationGroupContext(new CalculationGroup(),
                                                            null,
                                                            Enumerable.Empty <PipingSurfaceLine>(),
                                                            Enumerable.Empty <PipingStochasticSoilModel>(),
                                                            new PipingFailureMechanism(),
                                                            assessmentSection);

            // Call
            bool isEnabled = info.IsEnabled(context);

            // Assert
            Assert.IsFalse(isEnabled);
        }
        public void GetViewData_Always_ReturnsWrappedCalculationGroup()
        {
            // Setup
            var mocks             = new MockRepository();
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            mocks.ReplayAll();

            var failureMechanism        = new PipingFailureMechanism();
            var calculationGroup        = new CalculationGroup();
            var calculationGroupContext = new PipingCalculationGroupContext(calculationGroup,
                                                                            null,
                                                                            Enumerable.Empty <PipingSurfaceLine>(),
                                                                            Enumerable.Empty <PipingStochasticSoilModel>(),
                                                                            failureMechanism,
                                                                            assessmentSection);

            // Call & Assert
            Assert.AreSame(calculationGroup, info.GetViewData(calculationGroupContext));
            mocks.VerifyAll();
        }
        public void AdditionalDataCheck_CalculationGroupContextWithFailureMechanismParent_ReturnsTrue()
        {
            // Setup
            var mocks             = new MockRepository();
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            mocks.ReplayAll();

            var failureMechanism = new PipingFailureMechanism();
            var context          = new PipingCalculationGroupContext(failureMechanism.CalculationsGroup,
                                                                     null,
                                                                     Enumerable.Empty <PipingSurfaceLine>(),
                                                                     Enumerable.Empty <PipingStochasticSoilModel>(),
                                                                     failureMechanism,
                                                                     assessmentSection);

            // Call
            bool additionalDataCheck = info.AdditionalDataCheck(context);

            // Assert
            Assert.IsTrue(additionalDataCheck);
            mocks.VerifyAll();
        }
Exemplo n.º 7
0
        public void ParameteredConstructor_ExpectedValues(bool hasParent)
        {
            // Setup
            var mocks             = new MockRepository();
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            mocks.ReplayAll();

            var calculationGroup = new CalculationGroup();
            var surfaceLines     = new[]
            {
                new PipingSurfaceLine(string.Empty)
            };

            PipingStochasticSoilModel[] soilModels =
            {
                PipingStochasticSoilModelTestFactory.CreatePipingStochasticSoilModel()
            };

            CalculationGroup parent = hasParent ? new CalculationGroup() : null;

            var failureMechanism = new PipingFailureMechanism();

            // Call
            var groupContext = new PipingCalculationGroupContext(calculationGroup, parent, surfaceLines, soilModels, failureMechanism, assessmentSection);

            // Assert
            Assert.IsInstanceOf <PipingContext <CalculationGroup> >(groupContext);
            Assert.IsInstanceOf <ICalculationContext <CalculationGroup, PipingFailureMechanism> >(groupContext);
            Assert.AreSame(calculationGroup, groupContext.WrappedData);
            Assert.AreSame(parent, groupContext.Parent);
            Assert.AreSame(surfaceLines, groupContext.AvailablePipingSurfaceLines);
            Assert.AreSame(soilModels, groupContext.AvailableStochasticSoilModels);
            Assert.AreSame(failureMechanism, groupContext.FailureMechanism);
            Assert.AreSame(assessmentSection, groupContext.AssessmentSection);
            mocks.VerifyAll();
        }
        public void GetViewName_WithContext_ReturnsCalculationGroupName()
        {
            // Setup
            const string calculationGroupName = "Test";

            var mocks             = new MockRepository();
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            assessmentSection.Stub(a => a.HydraulicBoundaryDatabase).Return(new HydraulicBoundaryDatabase());
            mocks.ReplayAll();

            var calculationGroup = new CalculationGroup
            {
                Name = calculationGroupName
            };

            var failureMechanism = new PipingFailureMechanism();

            using (var calculationsView = new PipingCalculationsView(calculationGroup, failureMechanism, assessmentSection))
            {
                var context = new PipingCalculationGroupContext(calculationGroup,
                                                                null,
                                                                Enumerable.Empty <PipingSurfaceLine>(),
                                                                Enumerable.Empty <PipingStochasticSoilModel>(),
                                                                failureMechanism,
                                                                assessmentSection);

                // Call
                string name = info.GetViewName(calculationsView, context);

                // Assert
                Assert.AreEqual(calculationGroupName, name);
            }

            mocks.VerifyAll();
        }
Exemplo n.º 9
0
        public void CreateFileImporter_Always_ReturnFileImporter()
        {
            // Setup
            var failureMechanism = new PipingFailureMechanism();

            var mocks = new MockRepository();
            IAssessmentSection assessmentSection = AssessmentSectionTestHelper.CreateAssessmentSectionStub(failureMechanism, mocks);

            mocks.ReplayAll();

            var context = new PipingCalculationGroupContext(new CalculationGroup(),
                                                            null,
                                                            Enumerable.Empty <PipingSurfaceLine>(),
                                                            Enumerable.Empty <PipingStochasticSoilModel>(),
                                                            failureMechanism,
                                                            assessmentSection);

            // Call
            IFileImporter importer = importInfo.CreateFileImporter(context, "");

            // Assert
            Assert.IsInstanceOf <PipingCalculationConfigurationImporter>(importer);
            mocks.VerifyAll();
        }