public void GivenScenarioRow_WhenOutputChangedAndUpdate_ThenDerivedOutputUpdated() { // Given var calculation = new GrassCoverErosionInwardsCalculationScenario { Output = new TestGrassCoverErosionInwardsOutput() }; var row = new GrassCoverErosionInwardsScenarioRow(calculation); // Precondition ProbabilityAssessmentOutput expectedDerivedOutput = ProbabilityAssessmentOutputFactory.Create(calculation.Output.OvertoppingOutput.Reliability); Assert.AreEqual(expectedDerivedOutput.Probability, row.FailureProbability); var random = new Random(11); // When calculation.Output = new GrassCoverErosionInwardsOutput(new TestOvertoppingOutput(random.NextDouble()), null, null); row.Update(); // Then ProbabilityAssessmentOutput newExpectedDerivedOutput = ProbabilityAssessmentOutputFactory.Create(calculation.Output.OvertoppingOutput.Reliability); Assert.AreEqual(newExpectedDerivedOutput.Probability, row.FailureProbability); }
public void Constructor_WithCalculationWithoutOutput_PropertiesFromCalculation() { // Setup var calculation = new GrassCoverErosionInwardsCalculationScenario(); // Call var row = new GrassCoverErosionInwardsScenarioRow(calculation); // Assert Assert.IsNaN(row.FailureProbability); }
public void Constructor_ExpectedValues() { // Setup var calculation = new GrassCoverErosionInwardsCalculationScenario(); // Call var row = new GrassCoverErosionInwardsScenarioRow(calculation); // Assert Assert.IsInstanceOf <ScenarioRow <GrassCoverErosionInwardsCalculationScenario> >(row); Assert.AreSame(calculation, row.CalculationScenario); }
public void Constructor_WithCalculationWithOutput_PropertiesFromCalculation() { // Setup var calculation = new GrassCoverErosionInwardsCalculationScenario { Output = new TestGrassCoverErosionInwardsOutput() }; // Call var row = new GrassCoverErosionInwardsScenarioRow(calculation); // Assert ProbabilityAssessmentOutput expectedDerivedOutput = ProbabilityAssessmentOutputFactory.Create(calculation.Output.OvertoppingOutput.Reliability); Assert.AreEqual(expectedDerivedOutput.Probability, row.FailureProbability); }
public void GivenScenarioRow_WhenOutputSetAndUpdate_ThenDerivedOutputUpdated() { // Given var calculation = new GrassCoverErosionInwardsCalculationScenario(); var row = new GrassCoverErosionInwardsScenarioRow(calculation); // Precondition Assert.IsNaN(row.FailureProbability); // When calculation.Output = new TestGrassCoverErosionInwardsOutput(); row.Update(); // Then ProbabilityAssessmentOutput expectedDerivedOutput = ProbabilityAssessmentOutputFactory.Create(calculation.Output.OvertoppingOutput.Reliability); Assert.AreEqual(expectedDerivedOutput.Probability, row.FailureProbability); }