示例#1
0
        public void Constructor_ValidData_ExpectedValues()
        {
            // Setup
            var mocks = new MockRepository();
            var failureMechanismContributionNormChangeHandler = mocks.Stub <IFailureMechanismContributionNormChangeHandler>();

            mocks.ReplayAll();

            FailureMechanismContribution failureMechanismContribution = FailureMechanismContributionTestFactory.CreateFailureMechanismContribution();

            // Call
            var properties = new NormProperties(failureMechanismContribution, failureMechanismContributionNormChangeHandler);

            // Assert
            Assert.IsInstanceOf <ObjectProperties <FailureMechanismContribution> >(properties);
            Assert.AreSame(failureMechanismContribution, properties.Data);

            TestHelper.AssertTypeConverter <NormProperties, NoProbabilityValueDoubleConverter>(
                nameof(NormProperties.SignalFloodingProbability));
            TestHelper.AssertTypeConverter <NormProperties, NoProbabilityValueDoubleConverter>(
                nameof(NormProperties.MaximumAllowableFloodingProbability));
            TestHelper.AssertTypeConverter <NormProperties, EnumTypeConverter>(
                nameof(NormProperties.NormativeProbabilityType));
            mocks.VerifyAll();
        }
示例#2
0
        public void NormativeProbabilityType_Always_HandlerCalledAndPropertySet()
        {
            // Setup
            FailureMechanismContribution failureMechanismContribution = FailureMechanismContributionTestFactory.CreateFailureMechanismContribution();

            var mocks = new MockRepository();
            var failureMechanismContributionNormChangeHandler = mocks.StrictMock <IFailureMechanismContributionNormChangeHandler>();

            failureMechanismContributionNormChangeHandler.Expect(h => h.ChangeNormativeProbabilityType(null))
            .IgnoreArguments()
            .WhenCalled(invocation =>
            {
                var actionToPerform = (Action)invocation.Arguments[0];
                actionToPerform();
            });
            mocks.ReplayAll();

            var properties = new NormProperties(failureMechanismContribution, failureMechanismContributionNormChangeHandler);

            const NormativeProbabilityType newValue = NormativeProbabilityType.SignalFloodingProbability;

            // Call
            properties.NormativeProbabilityType = newValue;

            // Assert
            Assert.AreEqual(newValue, failureMechanismContribution.NormativeProbabilityType);
            mocks.VerifyAll();
        }
示例#3
0
        public void GivenNormativeProbabilityTypeIsMaximumAllowableFloodingProbability_WhenChangingSignalFloodingProbability_ThenHandlerCalledAndPropertySet()
        {
            // Given
            FailureMechanismContribution failureMechanismContribution = FailureMechanismContributionTestFactory.CreateFailureMechanismContribution();

            var mocks = new MockRepository();
            var failureMechanismContributionNormChangeHandler = mocks.StrictMock <IFailureMechanismContributionNormChangeHandler>();

            failureMechanismContributionNormChangeHandler.Expect(h => h.ChangeProbability(null))
            .IgnoreArguments()
            .WhenCalled(invocation =>
            {
                var actionToPerform = (Action)invocation.Arguments[0];
                actionToPerform();
            });
            mocks.ReplayAll();

            var properties = new NormProperties(failureMechanismContribution, failureMechanismContributionNormChangeHandler);

            const double newValue = 0.00001;

            // When
            properties.SignalFloodingProbability = newValue;

            // Then
            Assert.AreEqual(newValue, failureMechanismContribution.SignalFloodingProbability);
            mocks.VerifyAll();
        }
示例#4
0
        public void GetProperties_WithData_ReturnExpectedValues()
        {
            // Setup
            var mocks = new MockRepository();
            var failureMechanismContributionNormChangeHandler = mocks.Stub <IFailureMechanismContributionNormChangeHandler>();

            mocks.ReplayAll();

            FailureMechanismContribution failureMechanismContribution = FailureMechanismContributionTestFactory.CreateFailureMechanismContribution();

            // Call
            var properties = new NormProperties(failureMechanismContribution, failureMechanismContributionNormChangeHandler);

            // Assert
            Assert.AreEqual(failureMechanismContribution.MaximumAllowableFloodingProbability, properties.MaximumAllowableFloodingProbability);
            Assert.AreEqual(failureMechanismContribution.SignalFloodingProbability, properties.SignalFloodingProbability);
            Assert.AreEqual(failureMechanismContribution.NormativeProbabilityType, properties.NormativeProbabilityType);
            mocks.VerifyAll();
        }
示例#5
0
        public void Constructor_Always_PropertiesHaveExpectedAttributesValues()
        {
            // Setup
            var mocks = new MockRepository();
            var failureMechanismContributionNormChangeHandler = mocks.Stub <IFailureMechanismContributionNormChangeHandler>();

            mocks.ReplayAll();

            FailureMechanismContribution failureMechanismContribution = FailureMechanismContributionTestFactory.CreateFailureMechanismContribution();

            // Call
            var properties = new NormProperties(failureMechanismContribution, failureMechanismContributionNormChangeHandler);

            // Assert
            PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties);

            Assert.AreEqual(3, dynamicProperties.Count);

            const string expectedCategory = "Algemeen";

            PropertyDescriptor maximumAllowableFloodingProbabilityProperty = dynamicProperties[0];

            PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(maximumAllowableFloodingProbabilityProperty,
                                                                            expectedCategory,
                                                                            "Omgevingswaarde [1/jaar]",
                                                                            "De maximale toelaatbare overstromingskans van het traject.");

            PropertyDescriptor signalFloodingProbabilityProperty = dynamicProperties[1];

            PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(signalFloodingProbabilityProperty,
                                                                            expectedCategory,
                                                                            "Signaleringsparameter [1/jaar]",
                                                                            "De overstromingskans voor de signalering over de veiligheid van het traject.");

            PropertyDescriptor normativeProbabilityTypeProperty = dynamicProperties[2];

            PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(normativeProbabilityTypeProperty,
                                                                            expectedCategory,
                                                                            "Rekenwaarde voor waterstanden",
                                                                            "De doelkans die wordt gebruikt om de lokale waterstand te bepalen voor de semi-probabilistische toets voor 'Piping' en 'Macrostabiliteit binnenwaarts'.");

            mocks.VerifyAll();
        }