public void UpdateTrendBreaks_WorksProperly_IfItemsAreOnlyAdded() { //Arrange EFTrendlineRepository repository = new EFTrendlineRepository(); List <TrendBreakDto> trendBreaks = new List <TrendBreakDto>(); TrendBreakDto dto1 = new TrendBreakDto() { Id = 1, Guid = "AC180C9B-E6D2-4138-8E0A-BE31FCE8626D", TrendlineId = 1, IndexNumber = 2, PreviousRangeGuid = null, NextRangeGuid = "89BFF378-F310-4A28-B753-00A0FF9A852C" }; TrendBreakDto dto2 = new TrendBreakDto() { Id = 2, Guid = "89BFF378-F310-4A28-B753-00A0FF9A852C", TrendlineId = 1, IndexNumber = 9, PreviousRangeGuid = "AC180C9B-E6D2-4138-8E0A-BE31FCE8626D", NextRangeGuid = "A62DB207-FDDA-45B4-94F6-AE16F4CA9A58" }; TrendBreakDto dto3 = new TrendBreakDto() { Id = 3, Guid = "A62DB207-FDDA-45B4-94F6-AE16F4CA9A58", TrendlineId = 1, IndexNumber = 18, PreviousRangeGuid = "89BFF378-F310-4A28-B753-00A0FF9A852C", NextRangeGuid = "89BFF378-F310-4A28-B753-00A0FF9A852C" }; TrendBreakDto dto4 = new TrendBreakDto() { Id = 4, Guid = "562BED90-29F8-423E-8D00-DE699C1D14C3", TrendlineId = 2, IndexNumber = 21, PreviousRangeGuid = "A62DB207-FDDA-45B4-94F6-AE16F4CA9A58", NextRangeGuid = null }; trendBreaks.AddRange(new TrendBreakDto[] { dto1, dto2, dto3, dto4 }); //Act clearTrendBreaksTables(); repository.UpdateTrendBreaks(trendBreaks); IEnumerable <TrendBreakDto> actualRecords = repository.GetTrendBreaks(1); //Assert Assert.IsTrue(repository.GetTrendBreaks(1).HasEqualItems(new TrendBreakDto[] { dto1, dto2, dto3 })); Assert.IsTrue(repository.GetTrendBreaks(2).HasEqualItems(new TrendBreakDto[] { dto4 })); }
public void GetTrendlines_returnProperDtoCollection() { //Arrange EFTrendlineRepository repository = new EFTrendlineRepository(); List <TrendlineDto> trendlines = new List <TrendlineDto>(); TrendlineDto dto1 = new TrendlineDto() { Id = 1, AssetId = 1, TimeframeId = 1, SimulationId = 1, StartIndex = 5, StartLevel = 1.2573, FootholdIndex = 27, FootholdLevel = 1.2871, Value = 1.54, LastUpdateIndex = 70 }; TrendlineDto dto2 = new TrendlineDto() { Id = 1, AssetId = 1, TimeframeId = 2, SimulationId = 1, StartIndex = 7, StartLevel = 1.0123, FootholdIndex = 52, FootholdLevel = 1.4865, Value = 1.54, LastUpdateIndex = 70 }; TrendlineDto dto3 = new TrendlineDto() { Id = 1, AssetId = 2, TimeframeId = 1, SimulationId = 1, StartIndex = 7, StartLevel = 1.1234, FootholdIndex = 60, FootholdLevel = 1.4564, Value = 1.54, LastUpdateIndex = 70 }; TrendlineDto dto4 = new TrendlineDto() { Id = 1, AssetId = 1, TimeframeId = 1, SimulationId = 1, StartIndex = 25, StartLevel = 1.3456, FootholdIndex = 48, FootholdLevel = 1.4564, Value = 1.54, LastUpdateIndex = 70 }; trendlines.AddRange(new TrendlineDto[] { dto1, dto2, dto3, dto4 }); clearTrendlinesTables(); repository.UpdateTrendlines(trendlines); //Act IEnumerable <TrendlineDto> dtos = repository.GetTrendlines(1, 1, 1).ToArray(); //Assert IEnumerable <TrendlineDto> expected = new TrendlineDto[] { dto1, dto4 }; bool areEqualArrays = expected.HasEqualItems(dtos); Assert.IsTrue(areEqualArrays); }
public void GetTrendHits_returnProperDtoCollection() { //Arrange EFTrendlineRepository repository = new EFTrendlineRepository(); List <TrendHitDto> trendHits = new List <TrendHitDto>(); TrendHitDto dto1 = new TrendHitDto() { Id = 1, Guid = "0BF8E6BD-0C8D-43B4-A9A0-C8B2745502B0", TrendlineId = 1, IndexNumber = 10, ExtremumType = 1, DistanceToLine = 0.0005, PreviousRangeGuid = null, NextRangeGuid = "07ACE1F3-89B4-49C5-A6F9-155B78E33836" }; TrendHitDto dto2 = new TrendHitDto() { Id = 2, Guid = "07ACE1F3-89B4-49C5-A6F9-155B78E33836", TrendlineId = 1, IndexNumber = 31, ExtremumType = 2, DistanceToLine = 0.0003, PreviousRangeGuid = "0BF8E6BD-0C8D-43B4-A9A0-C8B2745502B0", NextRangeGuid = "15AB46D1-615A-46FA-9533-A2DC3EA4F340" }; TrendHitDto dto3 = new TrendHitDto() { Id = 3, Guid = "15AB46D1-615A-46FA-9533-A2DC3EA4F340", TrendlineId = 1, IndexNumber = 31, ExtremumType = 2, DistanceToLine = 0.0003, PreviousRangeGuid = "07ACE1F3-89B4-49C5-A6F9-155B78E33836", NextRangeGuid = "B49C3C3E-0D42-451F-B2FD-F28A1679BF50" }; TrendHitDto dto4 = new TrendHitDto() { Id = 4, Guid = "B49C3C3E-0D42-451F-B2FD-F28A1679BF50", TrendlineId = 2, IndexNumber = 31, ExtremumType = 2, DistanceToLine = 0.0003, PreviousRangeGuid = "15AB46D1-615A-46FA-9533-A2DC3EA4F341", NextRangeGuid = null }; trendHits.AddRange(new TrendHitDto[] { dto1, dto2, dto3, dto4 }); clearTrendHitsTables(); repository.UpdateTrendHits(trendHits); //Act IEnumerable <TrendHitDto> dtos = repository.GetTrendHits(1).ToArray(); //Assert IEnumerable <TrendHitDto> expected = new TrendHitDto[] { dto1, dto2, dto3 }; bool areEqualArrays = expected.HasEqualItems(dtos); Assert.IsTrue(areEqualArrays); }
public void UpdateTrendlines_WorksProperly_IfItemsAreOnlyAdded() { //Arrange EFTrendlineRepository repository = new EFTrendlineRepository(); List <TrendlineDto> trendlines = new List <TrendlineDto>(); TrendlineDto dto1 = new TrendlineDto() { Id = 1, AssetId = 1, TimeframeId = 1, SimulationId = 1, StartIndex = 5, StartLevel = 1.2345, FootholdIndex = 26, FootholdLevel = 1.3456, Value = 1.234, LastUpdateIndex = 31 }; TrendlineDto dto2 = new TrendlineDto() { Id = 2, AssetId = 1, TimeframeId = 1, SimulationId = 1, StartIndex = 6, StartLevel = 1.4567, FootholdIndex = 23, FootholdLevel = 1.5678, Value = 1.345, LastUpdateIndex = 29 }; TrendlineDto dto3 = new TrendlineDto() { Id = 3, AssetId = 1, TimeframeId = 1, SimulationId = 2, StartIndex = 12, StartLevel = 1.5678, FootholdIndex = 45, FootholdLevel = 1.6789, Value = 1.567, LastUpdateIndex = 47 }; TrendlineDto dto4 = new TrendlineDto() { Id = 4, AssetId = 1, TimeframeId = 1, SimulationId = 2, StartIndex = 8, StartLevel = 1.6789, FootholdIndex = 21, FootholdLevel = 1.7891, Value = 1.678, LastUpdateIndex = 29 }; trendlines.AddRange(new TrendlineDto[] { dto1, dto2, dto3, dto4 }); //Act clearTrendlinesTables(); repository.UpdateTrendlines(trendlines); IEnumerable <TrendlineDto> actualRecords = repository.GetTrendlines(1, 1, 1); //Assert Assert.IsTrue(repository.GetTrendlines(1, 1, 1).HasEqualItems(new TrendlineDto[] { dto1, dto2 })); Assert.IsTrue(repository.GetTrendlines(1, 1, 2).HasEqualItems(new TrendlineDto[] { dto3, dto4 })); }
public void GetTrendRangeById_ReturnsNull_IfThereIsNoTrendlineWithSuchId() { //Arrange EFTrendlineRepository repository = new EFTrendlineRepository(); TrendRangeDto[] ranges = getDefaultTrendRangeDtosArray(); clearTrendRangesTables(); repository.UpdateTrendRanges(ranges); //Act TrendRangeDto resultDto = repository.GetTrendRangeById(50); //Assert Assert.IsNull(resultDto); }
public void UpdateTrendRanges_WorksProperly_IfItemsAreOnlyAdded() { //Arrange EFTrendlineRepository repository = new EFTrendlineRepository(); TrendRangeDto[] trendRanges = getDefaultTrendRangeDtosArray(); //Act clearTrendRangesTables(); repository.UpdateTrendRanges(trendRanges); IEnumerable <TrendRangeDto> actualRecords = repository.GetTrendRanges(1); //Assert Assert.IsTrue(repository.GetTrendRanges(1).HasEqualItems(new TrendRangeDto[] { trendRanges[0], trendRanges[1], trendRanges[2] })); Assert.IsTrue(repository.GetTrendRanges(2).HasEqualItems(new TrendRangeDto[] { trendRanges[3] })); }
public void GetTrendBreakById_ReturnsNull_IfThereIsNoTrendlineWithSuchId() { //Arrange EFTrendlineRepository repository = new EFTrendlineRepository(); List <TrendBreakDto> trendBreaks = new List <TrendBreakDto>(); trendBreaks.AddRange(new TrendBreakDto[] { getDefaultTrendBreakDto() }); clearTrendBreaksTables(); repository.UpdateTrendBreaks(trendBreaks); //Act TrendBreakDto resultDto = repository.GetTrendBreakById(50); //Assert Assert.IsNull(resultDto); }
public void GetTrendBreaks_returnProperDtoCollection() { //Arrange EFTrendlineRepository repository = new EFTrendlineRepository(); TrendBreakDto[] breaks = getDefaultTrendBreakDtosArray(); clearTrendBreaksTables(); repository.UpdateTrendBreaks(breaks); //Act IEnumerable <TrendBreakDto> dtos = repository.GetTrendBreaks(1).ToArray(); //Assert IEnumerable <TrendBreakDto> expected = new TrendBreakDto[] { breaks[0], breaks[1], breaks[2] }; bool areEqualArrays = expected.HasEqualItems(dtos); Assert.IsTrue(areEqualArrays); }
public void UpdateTrendRanges_WorksProperly_IfItemsAreAddedAndUpdated() { //Arrange AnalysisDataQueryDefinition queryDef = new AnalysisDataQueryDefinition(1, 1); EFTrendlineRepository repository = new EFTrendlineRepository(); TrendRangeDto[] trendRanges = getDefaultTrendRangeDtosArray(); clearTrendRangesTables(); repository.UpdateTrendRanges(new TrendRangeDto[] { trendRanges[0], trendRanges[1] }); //Act trendRanges[0].NextBreakGuid = System.Guid.NewGuid().ToString(); trendRanges[1].NextBreakGuid = System.Guid.NewGuid().ToString(); repository.UpdateTrendRanges(trendRanges); //Assert Assert.IsTrue(repository.GetTrendRanges(1).HasEqualItems(new TrendRangeDto[] { trendRanges[0], trendRanges[1], trendRanges[2] })); Assert.IsTrue(repository.GetTrendRanges(2).HasEqualItems(new TrendRangeDto[] { trendRanges[3] })); }
public void GetTrendBreakById_ReturnsProperTrendlineDto_IfExists() { //Arrange EFTrendlineRepository repository = new EFTrendlineRepository(); List <TrendBreakDto> trendBreaks = new List <TrendBreakDto>(); TrendBreakDto expectedDto = getDefaultTrendBreakDto(); trendBreaks.AddRange(new TrendBreakDto[] { expectedDto }); clearTrendBreaksTables(); repository.UpdateTrendBreaks(trendBreaks); //Act TrendBreakDto resultDto = repository.GetTrendBreakById(expectedDto.Id); //Assert var areEqual = expectedDto.Equals(resultDto); Assert.IsTrue(areEqual); }
public void RemoveTrendlines_IfNotExistingTrendlineIsPassed_NothingHappens() { //Arrange EFTrendlineRepository repository = new EFTrendlineRepository(); List <TrendlineDto> trendlines = new List <TrendlineDto>(); TrendlineDto dto1 = new TrendlineDto() { Id = 1, AssetId = 1, TimeframeId = 1, SimulationId = 1, StartIndex = 5, StartLevel = 1.2345, FootholdIndex = 26, FootholdLevel = 1.3456, Value = 1.234, LastUpdateIndex = 31 }; TrendlineDto dto2 = new TrendlineDto() { Id = 2, AssetId = 1, TimeframeId = 1, SimulationId = 1, StartIndex = 6, StartLevel = 1.4567, FootholdIndex = 23, FootholdLevel = 1.5678, Value = 1.345, LastUpdateIndex = 29 }; TrendlineDto dto3 = new TrendlineDto() { Id = 3, AssetId = 1, TimeframeId = 1, SimulationId = 1, StartIndex = 12, StartLevel = 1.5678, FootholdIndex = 45, FootholdLevel = 1.6789, Value = 1.567, LastUpdateIndex = 47 }; TrendlineDto dto4 = new TrendlineDto() { Id = 4, AssetId = 1, TimeframeId = 1, SimulationId = 1, StartIndex = 8, StartLevel = 1.6789, FootholdIndex = 21, FootholdLevel = 1.7891, Value = 1.678, LastUpdateIndex = 29 }; trendlines.AddRange(new TrendlineDto[] { dto1, dto2, dto3 }); clearTrendlinesTables(); repository.UpdateTrendlines(trendlines); IEnumerable <TrendlineDto> actualRecords = repository.GetTrendlines(1, 1, 1); if (actualRecords.Count() != 3) { throw new Exception("Test failed while preparing environment"); } //Act repository.RemoveTrendlines(new TrendlineDto[] { dto4 }); //Assert IEnumerable <TrendlineDto> recordsAfterRemoving = repository.GetTrendlines(1, 1, 1); IEnumerable <TrendlineDto> expectedRecords = new TrendlineDto[] { dto1, dto2, dto3 }; Assert.IsTrue(recordsAfterRemoving.HasEqualItems(expectedRecords)); }
public void UpdateTrendHits_WorksProperly_IfItemsAreAddedAndUpdated() { //Arrange AnalysisDataQueryDefinition queryDef = new AnalysisDataQueryDefinition(1, 1); EFTrendlineRepository repository = new EFTrendlineRepository(); List <TrendHitDto> trendlines = new List <TrendHitDto>(); TrendHitDto dto1 = new TrendHitDto() { Id = 1, Guid = "AC180C9B-E6D2-4138-8E0A-BE31FCE8626D", TrendlineId = 1, IndexNumber = 2, ExtremumType = 1, Value = 1.234, DistanceToLine = 0.0004, PreviousRangeGuid = null, NextRangeGuid = "89BFF378-F310-4A28-B753-00A0FF9A852C" }; TrendHitDto dto2 = new TrendHitDto() { Id = 2, Guid = "89BFF378-F310-4A28-B753-00A0FF9A852C", TrendlineId = 1, IndexNumber = 9, ExtremumType = 2, Value = 1.345, DistanceToLine = 0.0007, PreviousRangeGuid = "AC180C9B-E6D2-4138-8E0A-BE31FCE8626D", NextRangeGuid = "A62DB207-FDDA-45B4-94F6-AE16F4CA9A58" }; TrendHitDto dto3 = new TrendHitDto() { Id = 3, Guid = "A62DB207-FDDA-45B4-94F6-AE16F4CA9A58", TrendlineId = 1, IndexNumber = 18, ExtremumType = 2, Value = 1.567, DistanceToLine = 0.0002, PreviousRangeGuid = "89BFF378-F310-4A28-B753-00A0FF9A852C", NextRangeGuid = "89BFF378-F310-4A28-B753-00A0FF9A852C" }; TrendHitDto dto4 = new TrendHitDto() { Id = 4, Guid = "562BED90-29F8-423E-8D00-DE699C1D14C3", TrendlineId = 2, IndexNumber = 21, ExtremumType = 3, Value = 1.678, DistanceToLine = 0.0001, PreviousRangeGuid = "A62DB207-FDDA-45B4-94F6-AE16F4CA9A58", NextRangeGuid = null }; trendlines.AddRange(new TrendHitDto[] { dto1, dto2, dto3, dto4 }); clearTrendHitsTables(); repository.UpdateTrendHits(trendlines); //Act dto1.Value = 2.345; dto1.DistanceToLine += 0.002; dto2.Value += 0.250; dto1.DistanceToLine -= 0.002; repository.UpdateTrendHits(new TrendHitDto[] { dto1, dto2, dto3, dto4 }); //Assert Assert.IsTrue(repository.GetTrendHits(1).HasEqualItems(new TrendHitDto[] { dto1, dto2, dto3 })); Assert.IsTrue(repository.GetTrendHits(2).HasEqualItems(new TrendHitDto[] { dto4 })); }
public void UpdateTrendlines_WorksProperly_IfItemsAreAddedAndUpdated() { //Arrange AnalysisDataQueryDefinition queryDef = new AnalysisDataQueryDefinition(1, 1); EFTrendlineRepository repository = new EFTrendlineRepository(); List <TrendlineDto> trendlines = new List <TrendlineDto>(); TrendlineDto dto1 = new TrendlineDto() { Id = 1, AssetId = 1, TimeframeId = 1, SimulationId = 1, StartIndex = 5, StartLevel = 1.2345, FootholdIndex = 26, FootholdLevel = 1.3456, Value = 1.234, LastUpdateIndex = 31 }; TrendlineDto dto2 = new TrendlineDto() { Id = 2, AssetId = 1, TimeframeId = 1, SimulationId = 1, StartIndex = 6, StartLevel = 1.4567, FootholdIndex = 23, FootholdLevel = 1.5678, Value = 1.345, LastUpdateIndex = 29 }; TrendlineDto dto3 = new TrendlineDto() { Id = 3, AssetId = 1, TimeframeId = 1, SimulationId = 2, StartIndex = 12, StartLevel = 1.5678, FootholdIndex = 45, FootholdLevel = 1.6789, Value = 1.567, LastUpdateIndex = 47 }; TrendlineDto dto4 = new TrendlineDto() { Id = 4, AssetId = 1, TimeframeId = 1, SimulationId = 2, StartIndex = 8, StartLevel = 1.6789, FootholdIndex = 21, FootholdLevel = 1.7891, Value = 1.678, LastUpdateIndex = 29 }; trendlines.AddRange(new TrendlineDto[] { dto1, dto2 }); clearTrendlinesTables(); repository.UpdateTrendlines(trendlines); //Act dto1.Value = 2.345; dto2.LastUpdateIndex += 2; dto2.Value += 0.250; dto2.LastUpdateIndex = 32; repository.UpdateTrendlines(new TrendlineDto[] { dto1, dto2, dto3, dto4 }); //Assert Assert.IsTrue(repository.GetTrendlines(1, 1, 1).HasEqualItems(new TrendlineDto[] { dto1, dto2 })); Assert.IsTrue(repository.GetTrendlines(1, 1, 2).HasEqualItems(new TrendlineDto[] { dto3, dto4 })); }
public void UpdateTrendBreaks_WorksProperly_IfItemsAreAddedAndUpdated() { //Arrange AnalysisDataQueryDefinition queryDef = new AnalysisDataQueryDefinition(1, 1); EFTrendlineRepository repository = new EFTrendlineRepository(); List <TrendBreakDto> trendBreaks = new List <TrendBreakDto>(); TrendBreakDto dto1 = new TrendBreakDto() { Id = 1, Guid = "AC180C9B-E6D2-4138-8E0A-BE31FCE8626D", TrendlineId = 1, IndexNumber = 2, PreviousRangeGuid = null, NextRangeGuid = "89BFF378-F310-4A28-B753-00A0FF9A852C" }; TrendBreakDto dto2 = new TrendBreakDto() { Id = 2, Guid = "89BFF378-F310-4A28-B753-00A0FF9A852C", TrendlineId = 1, IndexNumber = 9, PreviousRangeGuid = "AC180C9B-E6D2-4138-8E0A-BE31FCE8626D", NextRangeGuid = "A62DB207-FDDA-45B4-94F6-AE16F4CA9A58" }; TrendBreakDto dto3 = new TrendBreakDto() { Id = 3, Guid = "A62DB207-FDDA-45B4-94F6-AE16F4CA9A58", TrendlineId = 1, IndexNumber = 18, PreviousRangeGuid = "89BFF378-F310-4A28-B753-00A0FF9A852C", NextRangeGuid = "89BFF378-F310-4A28-B753-00A0FF9A852C" }; TrendBreakDto dto4 = new TrendBreakDto() { Id = 4, Guid = "562BED90-29F8-423E-8D00-DE699C1D14C3", TrendlineId = 2, IndexNumber = 21, PreviousRangeGuid = "A62DB207-FDDA-45B4-94F6-AE16F4CA9A58", NextRangeGuid = null }; trendBreaks.AddRange(new TrendBreakDto[] { dto1, dto2 }); clearTrendBreaksTables(); repository.UpdateTrendBreaks(trendBreaks); //Act dto1.NextRangeGuid = System.Guid.NewGuid().ToString(); dto2.NextRangeGuid = System.Guid.NewGuid().ToString(); repository.UpdateTrendBreaks(new TrendBreakDto[] { dto1, dto2, dto3, dto4 }); //Assert Assert.IsTrue(repository.GetTrendBreaks(1).HasEqualItems(new TrendBreakDto[] { dto1, dto2, dto3 })); Assert.IsTrue(repository.GetTrendBreaks(2).HasEqualItems(new TrendBreakDto[] { dto4 })); }