public void Validate_KernelReturnsValidationResults_ReturnsEnumerableWithOnlyErrorsAndWarnings() { // Setup using (new MacroStabilityInwardsKernelFactoryConfig()) { var factory = (TestMacroStabilityInwardsKernelFactory)MacroStabilityInwardsKernelWrapperFactory.Instance; UpliftVanKernelStub upliftVanKernel = factory.LastCreatedUpliftVanKernel; upliftVanKernel.ReturnValidationResults = true; SetValidKernelOutput(factory.LastCreatedWaternetDailyKernel); SetValidKernelOutput(factory.LastCreatedWaternetExtremeKernel); // Call IEnumerable <MacroStabilityInwardsKernelMessage> kernelMessages = new UpliftVanCalculator( UpliftVanCalculatorInputTestFactory.Create(), factory).Validate().ToList(); // Assert Assert.AreEqual(2, kernelMessages.Count()); MacroStabilityInwardsKernelMessage firstMessage = kernelMessages.ElementAt(0); Assert.AreEqual("Validation Warning", firstMessage.Message); Assert.AreEqual(MacroStabilityInwardsKernelMessageType.Warning, firstMessage.Type); MacroStabilityInwardsKernelMessage secondMessage = kernelMessages.ElementAt(1); Assert.AreEqual("Validation Error", secondMessage.Message); Assert.AreEqual(MacroStabilityInwardsKernelMessageType.Error, secondMessage.Type); } }
public void Calculate_KernelWithCompleteOutput_OutputCorrectlyReturnedByCalculator() { // Setup UpliftVanCalculatorInput input = UpliftVanCalculatorInputTestFactory.Create(); using (new MacroStabilityInwardsKernelFactoryConfig()) { var factory = (TestMacroStabilityInwardsKernelFactory)MacroStabilityInwardsKernelWrapperFactory.Instance; UpliftVanKernelStub upliftVanKernel = factory.LastCreatedUpliftVanKernel; SetCompleteKernelOutput(upliftVanKernel); SetValidKernelOutput(factory.LastCreatedWaternetDailyKernel); SetValidKernelOutput(factory.LastCreatedWaternetExtremeKernel); // Call UpliftVanCalculatorResult result = new UpliftVanCalculator(input, factory).Calculate(); // Assert Assert.IsNotNull(result); Assert.AreEqual(upliftVanKernel.FactorOfStability, result.FactorOfStability); Assert.AreEqual(upliftVanKernel.ForbiddenZonesXEntryMax, result.ForbiddenZonesXEntryMax); Assert.AreEqual(upliftVanKernel.ForbiddenZonesXEntryMin, result.ForbiddenZonesXEntryMin); UpliftVanCalculatorOutputAssert.AssertUpliftVanSlidingCurveResult(UpliftVanSlidingCurveResultCreator.Create(upliftVanKernel.SlidingCurveResult), result.SlidingCurveResult); UpliftVanCalculatorOutputAssert.AssertUpliftVanCalculationGridResult(UpliftVanCalculationGridResultCreator.Create(upliftVanKernel.UpliftVanCalculationGridResult), result.CalculationGridResult); } }
public void Constructor_ValidParameters_ExpectedValues() { // Setup var mocks = new MockRepository(); var factory = mocks.Stub <IMacroStabilityInwardsKernelFactory>(); mocks.ReplayAll(); UpliftVanCalculatorInput input = UpliftVanCalculatorInputTestFactory.Create(); // Call var calculator = new UpliftVanCalculator(input, factory); // Assert Assert.IsInstanceOf <IUpliftVanCalculator>(calculator); mocks.VerifyAll(); }
public void Validate_CalculatorWithValidInput_ReturnEmptyEnumerable() { // Setup UpliftVanCalculatorInput input = UpliftVanCalculatorInputTestFactory.Create(); using (new MacroStabilityInwardsKernelFactoryConfig()) { var factory = (TestMacroStabilityInwardsKernelFactory)MacroStabilityInwardsKernelWrapperFactory.Instance; SetValidKernelOutput(factory.LastCreatedWaternetDailyKernel); SetValidKernelOutput(factory.LastCreatedWaternetExtremeKernel); // Call IEnumerable <MacroStabilityInwardsKernelMessage> kernelMessages = new UpliftVanCalculator(input, factory).Validate(); // Assert CollectionAssert.IsEmpty(kernelMessages); } }