public void GetSimulationById_ReturnsAlwaysTheSameInstance() { //Arrange Mock <ISimulationRepository> mockedRepository = new Mock <ISimulationRepository>(); List <SimulationDto> dtos = new List <SimulationDto>(); SimulationDto simulationDto1 = new SimulationDto() { Id = 1, Name = "a" }; dtos.AddRange(new SimulationDto[] { simulationDto1 }); List <AnalysisTimestampDto> timestamps = new List <AnalysisTimestampDto>(); AnalysisTimestampDto timestamp1 = new AnalysisTimestampDto() { Id = 1, SimulationId = 1, AnalysisTypeId = 2, LastAnalysedItem = new DateTime(2016, 5, 2, 12, 0, 0) }; AnalysisTimestampDto timestamp2 = new AnalysisTimestampDto() { Id = 2, SimulationId = 1, AnalysisTypeId = 3, LastAnalysedItem = new DateTime(2016, 5, 2, 13, 0, 0) }; AnalysisTimestampDto timestamp3 = new AnalysisTimestampDto() { Id = 3, SimulationId = 1, AnalysisTypeId = 4, LastAnalysedItem = new DateTime(2016, 5, 2, 14, 0, 0) }; timestamps.AddRange(new AnalysisTimestampDto[] { timestamp1, timestamp2, timestamp3 }); mockedRepository.Setup(r => r.GetSimulations()).Returns(dtos); mockedRepository.Setup(r => r.GetAnalysisTimestampsForSimulation(1)).Returns(new AnalysisTimestampDto[] { timestamp1, timestamp2, timestamp3 }); //Act SimulationService service = new SimulationService(mockedRepository.Object); //Assert Simulation baseSimulation = service.GetSimulationById(1); Simulation comparedSimulation = service.GetSimulationById(1); bool areTheSame = (baseSimulation == comparedSimulation); Assert.IsTrue(areTheSame); }
public void GetSimulationById_ReturnsNull_IfThereIsNoItemWithGivenCombination() { //Arrange Mock <ISimulationRepository> mockedRepository = new Mock <ISimulationRepository>(); SimulationDto returnedDto = null; mockedRepository.Setup(r => r.GetSimulationById(1)).Returns(returnedDto); //Act SimulationService service = new SimulationService(mockedRepository.Object); //Assert Simulation baseSimulation = service.GetSimulationById(1); Assert.IsNull(baseSimulation); }
public void GetSimulationById_ReturnsProperItem_IfItemExists() { //Arrange Mock <ISimulationRepository> mockedRepository = new Mock <ISimulationRepository>(); SimulationDto simulationDto = new SimulationDto() { Id = 1, Name = "a" }; List <AnalysisTimestampDto> timestamps = new List <AnalysisTimestampDto>(); AnalysisTimestampDto timestamp1 = new AnalysisTimestampDto() { Id = 1, SimulationId = 1, AssetId = 1, TimeframeId = 1, AnalysisTypeId = 2, LastAnalysedItem = new DateTime(2016, 5, 2, 12, 0, 0) }; AnalysisTimestampDto timestamp2 = new AnalysisTimestampDto() { Id = 2, SimulationId = 1, AssetId = 1, TimeframeId = 1, AnalysisTypeId = 3, LastAnalysedItem = new DateTime(2016, 5, 2, 13, 0, 0) }; AnalysisTimestampDto timestamp3 = new AnalysisTimestampDto() { Id = 3, SimulationId = 1, AssetId = 1, TimeframeId = 1, AnalysisTypeId = 4, LastAnalysedItem = new DateTime(2016, 5, 2, 14, 0, 0) }; timestamps.AddRange(new AnalysisTimestampDto[] { timestamp1, timestamp2, timestamp3 }); mockedRepository.Setup(r => r.GetSimulationById(1)).Returns(simulationDto); mockedRepository.Setup(r => r.GetAnalysisTimestampsForSimulation(1)).Returns(new AnalysisTimestampDto[] { timestamp1, timestamp2, timestamp3 }); //Act SimulationService service = new SimulationService(mockedRepository.Object); var actualSimulation = service.GetSimulationById(1); //Assert Simulation expectedSimulation = new Simulation() { Id = 1, Name = "a" }; expectedSimulation.AddLastUpdate(timestamp1); expectedSimulation.AddLastUpdate(timestamp2); expectedSimulation.AddLastUpdate(timestamp3); bool areEqual = expectedSimulation.Equals(actualSimulation); Assert.IsTrue(areEqual); }