public void GetTransitionNullStringTest() { // Arrange PetriNet net = MakeExamplePetriNet(); // Act and assert Assert.ThrowsException <ArgumentNullException>(() => net.GetTransition(null)); }
public void GetTransitionEmptyStringTest() { // Arrange PetriNet net = MakeExamplePetriNet(); // Act ITransition foundTransition = net.GetTransition(""); // Assert Assert.IsNull(foundTransition); }
public void GetTransitionInvalidTest() { // Arrange PetriNet net = MakeExamplePetriNet(); // Act ITransition foundTransition = net.GetTransition("invalid transition"); // Assert Assert.IsNull(foundTransition); }
public void GetTransitionValidTest() { // Arrange IPlace p1 = new Place("start place"); IPlace p2 = new Place("middle place"); IPlace p3 = new Place("end place"); ITransition t1 = new Transition("t1", "start transition"); ITransition t2 = new Transition("t2", "end transition"); t1.InputPlaces.Add(p1); t1.OutputPlaces.Add(p2); t2.InputPlaces.Add(p2); t2.OutputPlaces.Add(p3); List <IPlace> places = new List <IPlace>() { p1, p2, p3 }; List <ITransition> transitions = new List <ITransition>() { t1, t2 }; PetriNet net = new PetriNet(transitions, places, p1, p3); // Act ITransition foundTransition = net.GetTransition("end transition"); // Assert Assert.AreEqual(t2.Id, foundTransition.Id); Assert.AreEqual(t2.Activity, foundTransition.Activity); Assert.AreEqual(t2.InputPlaces.Count, foundTransition.InputPlaces.Count); Assert.AreEqual(t2.OutputPlaces.Count, foundTransition.OutputPlaces.Count); for (int i = 0; i < t2.InputPlaces.Count; i++) { Assert.AreEqual(t2.InputPlaces[i].Id, foundTransition.InputPlaces[i].Id); } for (int i = 0; i < t2.OutputPlaces.Count; i++) { Assert.AreEqual(t2.OutputPlaces[i].Id, foundTransition.OutputPlaces[i].Id); } }