public void LoadOffsetsSingleOffset_Successful() { var stationOffsetRow1 = new StationOffsetRow( 1.0, -1, 1.0, 2.0, 3.0, 4.0, 5, 6, 7, 8 ); var stationOffsetRows = new List <StationOffsetRow>() { stationOffsetRow1 }; var stationOffsetDataRowManual = new StationOffsetReportDataRow_ApplicationService (stationOffsetRow1.Station, stationOffsetRows); StationOffsetReportDataRow_ApplicationService stationOffsetDataRowAuto = null; var queryStations = from stationOffsetRow in stationOffsetRows group stationOffsetRow by stationOffsetRow.Station into newGroup orderby newGroup.Key select newGroup; Assert.Single(queryStations); foreach (var stationGroup in queryStations) { Assert.Equal(stationOffsetRow1.Station, stationGroup.Key); Assert.Single(stationGroup); foreach (var offset in stationGroup) { Assert.Equal(stationOffsetRow1.Station, offset.Station); Assert.Equal(stationOffsetRow1.Offset, offset.Offset); Assert.Equal(stationOffsetRow1.Cmv, offset.Cmv); } // making a new copy, ensures the compare doesn't pass solely on ReferenceEquals case var stationOffsetRowCopy = stationGroup.First(); var stationOffsetRowCopyList = new List <StationOffsetRow>() { new StationOffsetRow(stationOffsetRowCopy.Station, stationOffsetRowCopy.Offset, stationOffsetRowCopy.Northing, stationOffsetRowCopy.Easting, stationOffsetRowCopy.Elevation, stationOffsetRowCopy.CutFill, stationOffsetRowCopy.Cmv, stationOffsetRowCopy.Mdp, stationOffsetRowCopy.PassCount, stationOffsetRowCopy.Temperature) }; stationOffsetDataRowAuto = new StationOffsetReportDataRow_ApplicationService (stationGroup.Key, stationOffsetRowCopyList); } Assert.Equal(stationOffsetDataRowManual.Station, stationOffsetDataRowAuto.Station); Assert.Equal(stationOffsetDataRowManual.Offsets.Count, stationOffsetDataRowAuto.Offsets.Count); Assert.Equal(stationOffsetDataRowManual.Offsets[0].Offset, stationOffsetDataRowAuto.Offsets[0].Offset); Assert.Equal(stationOffsetDataRowManual.Offsets[0].Northing, stationOffsetDataRowAuto.Offsets[0].Northing); Assert.Equal(stationOffsetDataRowManual.Minimum.CutFill, stationOffsetDataRowAuto.Minimum.CutFill); Assert.Equal(stationOffsetDataRowManual.Maximum.Elevation, stationOffsetDataRowAuto.Maximum.Elevation); }
public void LoadOffsetsNoOffsets_Failed() { var stationOffsetDataRowManual = new StationOffsetReportDataRow_ApplicationService(); Assert.Equal(double.MinValue, stationOffsetDataRowManual.Station); Assert.NotNull(stationOffsetDataRowManual.Offsets); Assert.Equal(0, stationOffsetDataRowManual?.Offsets.Count); Assert.NotNull(stationOffsetDataRowManual.Minimum); Assert.NotNull(stationOffsetDataRowManual.Maximum); Assert.NotNull(stationOffsetDataRowManual.Average); }
public void LoadOffsetsMultiOffset_Successful() { double station1 = 1; var stationOffsetRow1 = new StationOffsetRow( station1, -1, 1.0, 2.0, 3.0, 4.0, 5, 6, 7, 8 ); var stationOffsetRow2 = new StationOffsetRow( station1, 5, 1.2, 2.2, 3.2, 4.2, 1, 2, 3, 4 ); var stationOffsetRows = new List <StationOffsetRow>() { stationOffsetRow1, stationOffsetRow2 }; var stationOffsetDataRowManual = new StationOffsetReportDataRow_ApplicationService (station1, stationOffsetRows); StationOffsetReportDataRow_ApplicationService stationOffsetDataRowAuto = null; var queryStations = from stationOffsetRow in stationOffsetRows group stationOffsetRow by stationOffsetRow.Station into newGroup orderby newGroup.Key select newGroup; Assert.Single(queryStations); foreach (var stationGroup in queryStations) { Assert.Equal(stationOffsetRow1.Station, stationGroup.Key); Assert.Equal(2, stationGroup.Count()); stationOffsetDataRowAuto = new StationOffsetReportDataRow_ApplicationService (stationGroup.Key, stationGroup.ToList()); } Assert.Equal(stationOffsetDataRowManual.Station, stationOffsetDataRowAuto.Station); Assert.Equal(stationOffsetDataRowManual.Offsets.Count, stationOffsetDataRowAuto.Offsets.Count); Assert.Equal(stationOffsetDataRowManual.Offsets[0].Offset, stationOffsetDataRowAuto.Offsets[0].Offset); Assert.Equal(stationOffsetDataRowManual.Offsets[0].Northing, stationOffsetDataRowAuto.Offsets[0].Northing); Assert.Equal(stationOffsetDataRowManual.Minimum.CutFill, stationOffsetDataRowAuto.Minimum.CutFill); Assert.Equal(stationOffsetDataRowManual.Maximum.Elevation, stationOffsetDataRowAuto.Maximum.Elevation); }