public void Test_CalculateStops() { //Arrange GridResultDTO expectedGrid = new GridResultDTO(); ResultDTO expectedResult = new ResultDTO { Name = "Y-wing", Value = 74 }; expectedGrid.ResultDTO = new System.Collections.Generic.List <ResultDTO> { expectedResult }; string input = "1000000"; //Act GridResultDTO actualGrid = new StopsCalculator().CalculateStops(input); ResultDTO actualResult = new ResultDTO(); foreach (var item in actualGrid.ResultDTO) { if (item.Name == "Y-wing") { actualResult = item; break; } } //Assert bool result = expectedResult.Equals(actualResult); }
public void CalculateTotalStops_WhenRangeCalculationZero_ThrowsDivideByZeroException() { var moqFactory = new Mock <IRangeCalculationStrategyFactory>(); moqFactory.Setup(mf => mf.GetRangeCalculationStrategy(It.IsAny <IntervalUnit>())) .Returns(CreateMoqStrategy(0).Object); var testCalculator = new StopsCalculator(moqFactory.Object, new Mock <ILogger>().Object); Assert.Throws <DivideByZeroException>(() => testCalculator.CalculateTotalStops(StarshipUtils.Create(IntervalUnit.Day, 2, 1), 1)); }
public void CalculateTotalStops_WhenRangeCalculationNotNull_ReturnsValidResult() { var moqFactory = new Mock <IRangeCalculationStrategyFactory>(); moqFactory.Setup(mf => mf.GetRangeCalculationStrategy(It.IsAny <IntervalUnit>())) .Returns(CreateMoqStrategy(2).Object); var testCalculator = new StopsCalculator(moqFactory.Object, new Mock <ILogger>().Object); var result = testCalculator.CalculateTotalStops(StarshipUtils.Create(IntervalUnit.Day, 2, 1), 5); Assert.True(result.IsValid); Assert.Equal(2, result.NumberOfStops); }