public void TestSynchroFinishPersistence() { TestGraph1 tg1 = new TestGraph1(); TestGraph1 tg2 = new TestGraph1(); // Synchronize ta and tc VertexSynchronizer vs1 = new VertexSynchronizer(tg1.model.Executive, new Vertex[] { tg1.ta.PostVertex, tg1.tc.PostVertex }, ExecEventType.Detachable); // Synchronize tc and ta VertexSynchronizer vs2 = new VertexSynchronizer(tg2.model.Executive, new Vertex[] { tg2.tc.PostVertex, tg2.ta.PostVertex }, ExecEventType.Detachable); storeXML(tg1); tg1 = null; loadXML(ref tg1); storeXML(tg2); tg2 = null; loadXML(ref tg2); // Test graph 1 Assert.AreEqual(tg1.ta.GetFinishTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task A did not finish at 4AM 1/1/1"); Assert.AreEqual(tg1.tc.GetFinishTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task C did not finish at 4AM 1/1/1"); Assert.AreEqual(tg1.td.GetStartTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task D did not start at 4AM 1/1/1"); tg1.model.Start(); _Debug.WriteLine("Test 2"); tg2.model.Start(); // Test graph 2 Assert.AreEqual(tg2.ta.GetFinishTime(tg2.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task A did not finish at 4AM 1/1/1"); Assert.AreEqual(tg2.tc.GetFinishTime(tg2.GraphContext), new DateTime(1, 1, 1, 1, 0, 0), "Task C did not finish at 1AM 1/1/1"); Assert.AreEqual(tg2.td.GetStartTime(tg2.GraphContext), new DateTime(1, 1, 1, 1, 0, 0), "Task D did not start at 1AM 1/1/1"); }
public void TestPlainGraphPersistence() { TestGraph1 tg1 = new TestGraph1(); storeXML(tg1); tg1 = null; loadXML(ref tg1); tg1.model.Start(); Assert.AreEqual(tg1.ta.GetStartTime(tg1.GraphContext), new DateTime(1, 1, 1, 0, 0, 0), "Task A did not start at 12AM 1/1/1"); Assert.AreEqual(tg1.ta.GetFinishTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task A did not finish at 4AM 1/1/1"); Assert.AreEqual(tg1.tb.GetStartTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task B did not start at 4AM 1/1/1"); Assert.AreEqual(tg1.tb.GetFinishTime(tg1.GraphContext), new DateTime(1, 1, 1, 5, 0, 0), "Task B did not finish at 5AM 1/1/1"); Assert.AreEqual(tg1.tc.GetStartTime(tg1.GraphContext), new DateTime(1, 1, 1, 0, 0, 0), "Task C did not start at 12AM 1/1/1"); Assert.AreEqual(tg1.tc.GetFinishTime(tg1.GraphContext), new DateTime(1, 1, 1, 1, 0, 0), "Task C did not finish at 1AM 1/1/1"); Assert.AreEqual(tg1.td.GetStartTime(tg1.GraphContext), new DateTime(1, 1, 1, 1, 0, 0), "Task D did not start at 1AM 1/1/1"); Assert.AreEqual(tg1.td.GetFinishTime(tg1.GraphContext), new DateTime(1, 1, 1, 2, 0, 0), "Task D did not start at 1AM 1/1/1"); Assert.AreEqual(tg1.parent.GetStartTime(tg1.GraphContext), new DateTime(1, 1, 1, 0, 0, 0), "Task parent did not start at 12AM 1/1/1"); // AEL, bug \"Set finish time on a task\" submitted //Assert.AreEqual(tg1.parent.GetFinishTime(tg1.GraphContext), new DateTime(1,1,1,5,0,0), "Task parent did not finish at 5AM 1/1/1"); }
private void storeXML(TestGraph1 tg1) { XmlSerializationContext xmlsc = new XmlSerializationContext(); xmlsc.StoreObject("TG", tg1); xmlsc.Save(System.Environment.GetEnvironmentVariable("TEMP") + "\\TestGraphPersistence.xml"); }
public void TestSynchroStart() { TestGraph1 tg1 = new TestGraph1(); TestGraph1 tg2 = new TestGraph1(); // Synchronize tb and td VertexSynchronizer vs1 = new VertexSynchronizer(tg1.model.Executive, new Vertex[] { tg1.tb.PreVertex, tg1.td.PreVertex }, ExecEventType.Detachable); // Synchronize tb and tc VertexSynchronizer vs2 = new VertexSynchronizer(tg2.model.Executive, new Vertex[] { tg2.tb.PreVertex, tg2.tc.PreVertex }, ExecEventType.Detachable); tg1.model.Start(); Debug.WriteLine("Test 2"); tg2.model.Start(); // Test graph 1 Assert.IsTrue(tg1.tb.GetStartTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 4, 0, 0)), "Task B did not start at 4AM 1/1/1"); Assert.IsTrue(tg1.td.GetStartTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 4, 0, 0)), "Task D did not start at 4AM 1/1/1"); Assert.IsTrue(tg1.parent.GetFinishTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 5, 0, 0)), "Task parent did not finish at 5AM 1/1/1"); // Test graph 2 Assert.IsTrue(tg2.tb.GetStartTime(tg2.GraphContext).Equals(new DateTime(1, 1, 1, 4, 0, 0)), "Task B did not start at 4AM 1/1/1"); Assert.IsTrue(tg2.tc.GetStartTime(tg2.GraphContext).Equals(new DateTime(1, 1, 1, 4, 0, 0)), "Task C did not start at 4AM 1/1/1"); Assert.IsTrue(tg2.parent.GetFinishTime(tg2.GraphContext).Equals(new DateTime(1, 1, 1, 6, 0, 0)), "Task parent did not finish at 6AM 1/1/1"); }
private void loadXML(ref TestGraph1 tg1) { XmlSerializationContext xmlsc = new XmlSerializationContext(); xmlsc.Load(System.Environment.GetEnvironmentVariable("TEMP") + "\\TestGraphPersistence.xml"); xmlsc.ContextEntities.Add("Model", new Model("Reconstituted Model")); tg1 = (TestGraph1)xmlsc.LoadObject("TG"); }
public void TestCoFinish() { TestGraph1 tg1 = new TestGraph1(); tg1.ta.AddCofinish(tg1.tc); tg1.model.Start(); Assert.IsTrue(tg1.ta.GetFinishTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 4, 0, 0)), "Task A did not finish at 4AM 1/1/1"); Assert.IsTrue(tg1.tc.GetFinishTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 4, 0, 0)), "Task C did not finish at 4AM 1/1/1"); }
public void TestCoStart() { TestGraph1 tg1 = new TestGraph1(); tg1.tb.AddCostart(tg1.td); tg1.model.Start(); Assert.IsTrue(tg1.tb.GetStartTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 4, 0, 0)), "Task B did not start at 4AM 1/1/1"); Assert.IsTrue(tg1.td.GetStartTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 4, 0, 0)), "Task D did not start at 4AM 1/1/1"); }
public void TestCoFinishPersistence() { TestGraph1 tg1 = new TestGraph1(); tg1.ta.AddCofinish(tg1.tc); storeXML(tg1); tg1 = null; loadXML(ref tg1); tg1.model.Start(); Assert.AreEqual(tg1.ta.GetFinishTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task A did not finish at 4AM 1/1/1"); Assert.AreEqual(tg1.tc.GetFinishTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task C did not finish at 4AM 1/1/1"); }
public void TestCoStartPersistance() { TestGraph1 tg1 = new TestGraph1(); tg1.tb.AddCostart(tg1.td); storeXML(tg1); tg1 = null; loadXML(ref tg1); tg1.model.Start(); Assert.AreEqual(tg1.tb.GetStartTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task B did not start at 4AM 1/1/1"); Assert.AreEqual(tg1.td.GetStartTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task D did not start at 4AM 1/1/1"); }
public void TestSynchroStartPersistence() { TestGraph1 tg1 = new TestGraph1(); TestGraph1 tg2 = new TestGraph1(); // Synchronize tb and td VertexSynchronizer vs1 = new VertexSynchronizer(tg1.model.Executive, new Vertex[] { tg1.tb.PreVertex, tg1.td.PreVertex }, ExecEventType.Detachable); // Synchronize tb and tc VertexSynchronizer vs2 = new VertexSynchronizer(tg2.model.Executive, new Vertex[] { tg2.tb.PreVertex, tg2.tc.PreVertex }, ExecEventType.Detachable); storeXML(tg1); tg1 = null; loadXML(ref tg1); storeXML(tg2); tg2 = null; loadXML(ref tg2); tg1.model.Start(); _Debug.WriteLine("Test 2"); tg2.model.Start(); // Test graph 1 Assert.AreEqual(tg1.tb.GetStartTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task B did not start at 4AM 1/1/1"); Assert.AreEqual(tg1.td.GetStartTime(tg1.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task D did not start at 4AM 1/1/1"); // AEL, bug \"Set finish time on a task\" submitted //Assert.AreEqual(tg1.parent.GetFinishTime(tg1.GraphContext), new DateTime(1,1,1,5,0,0), "Task parent did not finish at 5AM 1/1/1"); // Test graph 2 Assert.AreEqual(tg2.tb.GetStartTime(tg2.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task B did not start at 4AM 1/1/1"); Assert.AreEqual(tg2.tc.GetStartTime(tg2.GraphContext), new DateTime(1, 1, 1, 4, 0, 0), "Task C did not start at 4AM 1/1/1"); // AEL, bug \"Set finish time on a task\" submitted //Assert.AreEqual(tg2.parent.GetFinishTime(tg2.GraphContext), new DateTime(1,1,1,6,0,0), "Task parent did not finish at 6AM 1/1/1"); }
public void TestPlainGraph() { TestGraph1 tg1 = new TestGraph1(); tg1.model.Start(); Assert.IsTrue(tg1.ta.GetStartTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 0, 0, 0)), "Task A did not start at 12AM 1/1/1"); Assert.IsTrue(tg1.ta.GetFinishTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 4, 0, 0)), "Task A did not finish at 4AM 1/1/1"); Assert.IsTrue(tg1.tb.GetStartTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 4, 0, 0)), "Task B did not start at 4AM 1/1/1"); Assert.IsTrue(tg1.tb.GetFinishTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 5, 0, 0)), "Task B did not finish at 5AM 1/1/1"); Assert.IsTrue(tg1.tc.GetStartTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 0, 0, 0)), "Task C did not start at 12AM 1/1/1"); Assert.IsTrue(tg1.tc.GetFinishTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 1, 0, 0)), "Task C did not finish at 1AM 1/1/1"); Assert.IsTrue(tg1.td.GetStartTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 1, 0, 0)), "Task D did not start at 1AM 1/1/1"); Assert.IsTrue(tg1.td.GetFinishTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 2, 0, 0)), "Task D did not start at 1AM 1/1/1"); Assert.IsTrue(tg1.parent.GetStartTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 0, 0, 0)), "Task parent did not start at 12AM 1/1/1"); Assert.IsTrue(tg1.parent.GetFinishTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 5, 0, 0)), "Task parent did not finish at 5AM 1/1/1"); Assert.IsTrue(tg1.follow.GetStartTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 5, 0, 0)), "Task follow did not start at 5AM 1/1/1"); Assert.IsTrue(tg1.follow.GetFinishTime(tg1.GraphContext).Equals(new DateTime(1, 1, 1, 5, 0, 0)), "Task follow did not finish at 5AM 1/1/1"); }