public void CloneHydroNetworkWithLinkSources() { var network = HydroNetworkHelper.GetSnakeHydroNetwork(1); var catchment = new Catchment(); network.Catchments.Add(catchment); var wasteWaterTreatmentPlant = new WasteWaterTreatmentPlant(); network.WasteWaterTreatmentPlants.Add(wasteWaterTreatmentPlant); var lateral = new LateralSource(); network.Branches.First().BranchFeatures.Add(lateral); catchment.OutgoingLinks.Add(wasteWaterTreatmentPlant); catchment.OutgoingLinks.Add(lateral); wasteWaterTreatmentPlant.IncomingLinks.Add(catchment); lateral.IncomingLinks.Add(catchment); var clone = (HydroNetwork)network.Clone(); var links = TestReferenceHelper.SearchObjectInObjectGraph(catchment, clone); links.ForEach(Console.WriteLine); Assert.AreEqual(0, links.Count); Assert.AreEqual(2, clone.Catchments.First().OutgoingLinks.Count); Assert.AreEqual(1, clone.WasteWaterTreatmentPlants.First().IncomingLinks.Count); Assert.AreEqual(1, clone.LateralSources.First().IncomingLinks.Count); }
public void LateralSourceCheckGeometry() { var hydroNetwork = HydroNetworkHelper.GetSnakeHydroNetwork(new Point(0, 0), new Point(200, 0), new Point(200, 200)); var branch1 = hydroNetwork.Branches[0]; var lateralSource = new LateralSource { Name = "Source1", Offset = 10, }; branch1.BranchFeatures.Add(lateralSource); lateralSource.Branch = branch1; lateralSource.IsDiffuse = true; //needed here; this is actually done via LateralSourceProperties HydroNetworkEditorHelper.UpdateBranchFeatureGeometry(lateralSource, 40); var geometry = lateralSource.Geometry; Assert.AreEqual(typeof(LineString), geometry.GetType()); Assert.AreEqual(40.0, geometry.Length); lateralSource.IsDiffuse = false; HydroNetworkEditorHelper.UpdateBranchFeatureGeometry(lateralSource, 0); Assert.AreEqual(typeof(Point), lateralSource.Geometry.GetType()); }
public void Clone() { var lateralSource = new LateralSource() { Name = "Neem" }; var clone = (LateralSource)lateralSource.Clone(); Assert.AreEqual(clone.Name, lateralSource.Name); Assert.AreEqual(lateralSource.IsDiffuse, clone.IsDiffuse); }
public void DefaultLateralSource() { LateralSource lateralSource = new LateralSource(); Assert.IsTrue(lateralSource.Validate().IsValid); }