public void CopyProperties_LineWithUpdatedGeometryAndReferenceLineIntersectionAndCharacteristicPoints_PropertiesUpdated() { // Setup var surfaceLine = new MacroStabilityInwardsSurfaceLine(string.Empty); MacroStabilityInwardsSurfaceLine surfaceLineToUpdateFrom = CreateSurfaceLineWithCharacteristicPoints(); // Call surfaceLine.CopyProperties(surfaceLineToUpdateFrom); // Assert AssertPropertiesUpdated(surfaceLineToUpdateFrom, surfaceLine); }
public void CopyProperties_WithSurfaceLineNull_ThrowsArgumentNullException() { // Setup var surfaceLine = new MacroStabilityInwardsSurfaceLine(string.Empty); // Call void Call() => surfaceLine.CopyProperties(null); // Assert string paramName = Assert.Throws <ArgumentNullException>(Call).ParamName; Assert.AreEqual("fromSurfaceLine", paramName); }
public void CopyProperties_LineWithUpdatedReferenceLineWorldPoint_PropertiesUpdated() { // Setup MacroStabilityInwardsSurfaceLine surfaceLine = CreateSurfaceLineWithCharacteristicPoints(); var expectedIntersectionPoint = new Point2D(123, 456); MacroStabilityInwardsSurfaceLine surfaceLineToUpdateFrom = CreateSurfaceLineWithCharacteristicPoints(); surfaceLineToUpdateFrom.ReferenceLineIntersectionWorldPoint = expectedIntersectionPoint; // Call surfaceLine.CopyProperties(surfaceLineToUpdateFrom); // Assert AssertPropertiesUpdated(surfaceLineToUpdateFrom, surfaceLine); }
public void CopyProperties_LineUpdatedWithRemovedCharacteristicPoints_PropertiesUpdated() { // Setup MacroStabilityInwardsSurfaceLine surfaceLine = CreateSurfaceLineWithCharacteristicPoints(); var surfaceLineToUpdateFrom = new MacroStabilityInwardsSurfaceLine(surfaceLine.Name) { ReferenceLineIntersectionWorldPoint = surfaceLine.ReferenceLineIntersectionWorldPoint }; surfaceLineToUpdateFrom.SetGeometry(surfaceLine.Points); // Call surfaceLine.CopyProperties(surfaceLineToUpdateFrom); // Assert AssertPropertiesUpdated(surfaceLineToUpdateFrom, surfaceLine); }
private void SetChartData() { MacroStabilityInwardsInput macroStabilityInwardsInput = data.InputParameters; MacroStabilityInwardsSurfaceLine surfaceLine = macroStabilityInwardsInput.SurfaceLine; IMacroStabilityInwardsSoilProfile <IMacroStabilityInwardsSoilLayer> soilProfile = macroStabilityInwardsInput.StochasticSoilProfile?.SoilProfile; hydraulicLocationCalculationObserver.Observable = getHydraulicBoundaryLocationCalculationFunc(); SetSurfaceLineChartData(surfaceLine); SetSoilProfileChartData(surfaceLine, soilProfile); SetWaternetExtremeChartData(DerivedMacroStabilityInwardsInput.GetWaternetExtreme(macroStabilityInwardsInput, generalInput, GetEffectiveAssessmentLevel()), surfaceLine); SetWaternetDailyChartData(DerivedMacroStabilityInwardsInput.GetWaternetDaily(macroStabilityInwardsInput, generalInput), surfaceLine); MacroStabilityInwardsGridDeterminationType gridDeterminationType = macroStabilityInwardsInput.GridDeterminationType; MacroStabilityInwardsGrid leftGrid = macroStabilityInwardsInput.LeftGrid; MacroStabilityInwardsGrid rightGrid = macroStabilityInwardsInput.RightGrid; leftGridChartData.Points = MacroStabilityInwardsChartDataPointsFactory.CreateGridPoints(leftGrid, gridDeterminationType); rightGridChartData.Points = MacroStabilityInwardsChartDataPointsFactory.CreateGridPoints(rightGrid, gridDeterminationType); tangentLinesData.Lines = MacroStabilityInwardsChartDataPointsFactory.CreateTangentLines(macroStabilityInwardsInput.GridDeterminationType, macroStabilityInwardsInput.TangentLineDeterminationType, macroStabilityInwardsInput.TangentLineZBottom, macroStabilityInwardsInput.TangentLineZTop, macroStabilityInwardsInput.TangentLineNumber, macroStabilityInwardsInput.SurfaceLine); currentSoilProfile = soilProfile; if (surfaceLine != null) { if (currentSurfaceLine == null) { currentSurfaceLine = new MacroStabilityInwardsSurfaceLine(surfaceLine.Name); } currentSurfaceLine.CopyProperties(surfaceLine); } else { currentSurfaceLine = null; } }
public void CopyProperties_LineWithUpdatedGeometricPoints_PropertiesUpdated() { // Setup MacroStabilityInwardsSurfaceLine surfaceLine = CreateSurfaceLineWithCharacteristicPoints(); MacroStabilityInwardsSurfaceLine surfaceLineToUpdateFrom = CreateSurfaceLineWithCharacteristicPoints(); var expectedGeometry = new List <Point3D> { new Point3D(0, 1, 2), new Point3D(3, 4, 5), new Point3D(6, 7, 8) }; expectedGeometry.AddRange(surfaceLine.Points); surfaceLineToUpdateFrom.SetGeometry(expectedGeometry); // Call surfaceLine.CopyProperties(surfaceLineToUpdateFrom); // Assert AssertPropertiesUpdated(surfaceLineToUpdateFrom, surfaceLine); }