public void MoveInTimeTest2() { SinkSourceBoundary b1 = new SinkSourceBoundary(100); b1.WaterSample = new WaterPacket(1, 1); SinkSourceBoundary b2 = new SinkSourceBoundary(300); b2.WaterSample = new WaterPacket(2, 1); var Network = NetworkBuilder.CreateSortedYBranch(5, b1, b2); Model target = new Model(); target._waterBodies.AddRange(Network.Cast <IWaterBody>()); DateTime Start = new DateTime(2010, 1, 1); DateTime End = new DateTime(2010, 1, 3); TimeSpan TimeStep = new TimeSpan(1, 0, 0, 0); target.SetState("Initial", Start, new WaterPacket(1)); target.MoveInTime(End, TimeStep); Assert.AreEqual(Network.First().Output.Outflow.Items.Last().Value * 4, Network.Last().Output.Outflow.Items.Last().Value, 0.0001); Assert.AreEqual(End, Network.First().CurrentTime); Assert.AreEqual(0.25, Network.Last().CurrentStoredWater.Composition[b1.WaterSample.Composition.Keys.First()], 0.0001); Assert.AreEqual(0.75, Network.Last().CurrentStoredWater.Composition[b2.WaterSample.Composition.Keys.First()], 0.0001); }