public void CancelSingleFlight() { var wc = new MyWC.MyWC_Accessor(); var tm = new MyTM.MyTM(); var rmf = new MyRM.MyRM(); var rmc = new MyRM.MyRM(); var rmr = new MyRM.MyRM(); MyWC_Accessor.TransactionManager = tm; rmf.SetName("flight"); rmf.TransactionManager = tm; rmc.SetName("car"); rmc.TransactionManager = tm; rmr.SetName("room"); rmr.TransactionManager = tm; tm.Register(rmf); tm.Register(rmc); tm.Register(rmr); MyWC.MyWC.Flights = tm.GetResourceMananger("flight"); MyWC.MyWC.Cars = tm.GetResourceMananger("car"); MyWC.MyWC.Rooms = tm.GetResourceMananger("room"); MyWC.MyWC.TransactionManager = tm; var context = new Transaction(); wc.AddSeats(context, "SEA-JFK", 1000, 200); wc.Commit(context); var c1 = new Customer(); Assert.IsTrue(wc.ReserveItinerary(c1, new[] { "SEA-JFK" }, "NY", false, false)); context = new Transaction(); Assert.AreEqual(c1, wc.ListCustomers(context)[0]); Assert.IsFalse(String.IsNullOrEmpty(wc.QueryItinerary(context, c1)), "Itinerary not found"); wc.Commit(context); context = new Transaction(); Assert.AreEqual(1000 - 1, wc.QueryFlight(context, "SEA-JFK")); wc.Commit(context); wc.CancelItinerary(c1); context = new Transaction(); Assert.AreEqual(1000, wc.QueryFlight(context, "SEA-JFK")); wc.Commit(context); }
public void Reservation() { var wc = new MyWC.MyWC_Accessor(); var tm = new MyTM.MyTM(); var rmf = new MyRM.MyRM(); var rmc = new MyRM.MyRM(); var rmr = new MyRM.MyRM(); MyWC_Accessor.TransactionManager = tm; rmf.SetName("flight"); rmf.TransactionManager = tm; rmc.SetName("car"); rmc.TransactionManager = tm; rmr.SetName("room"); rmr.TransactionManager = tm; tm.Register(rmf); tm.Register(rmc); tm.Register(rmr); MyWC.MyWC.Flights = tm.GetResourceMananger("flight"); MyWC.MyWC.Cars = tm.GetResourceMananger("car"); MyWC.MyWC.Rooms = tm.GetResourceMananger("room"); MyWC.MyWC.TransactionManager = tm; var context = wc.Start(); wc.AddSeats(context, "SEA-JFK", 3000, 300); wc.AddSeats(context, "JFK-STV", 3000, 300); wc.AddCars(context, "NY", 2000, 200); wc.AddRooms(context, "NY", 1000, 100); wc.Commit(context); var c1 = new Customer(); var c2 = new Customer(); Assert.IsTrue(wc.ReserveItinerary(c1, new[] { "SEA-JFK", "JFK-STV" }, "NY", true, true)); Assert.IsTrue(wc.ReserveItinerary(c2, new[] { "SEA-JFK" }, "NY", true, true)); context = wc.Start(); Assert.AreEqual(c1, wc.ListCustomers(context)[0]); Assert.AreEqual(c2, wc.ListCustomers(context)[1]); wc.Commit(context); context = wc.Start(); Assert.AreEqual(3000 - 2, wc.QueryFlight(context, "SEA-JFK")); Assert.AreEqual(3000 - 1, wc.QueryFlight(context, "JFK-STV")); Assert.AreEqual(1000 - 2, wc.QueryRoom(context, "NY")); wc.Commit(context); wc.CancelItinerary(c1); wc.CancelItinerary(c2); context = wc.Start(); Assert.AreEqual(1000, wc.QueryRoom(context, "NY")); Assert.AreEqual(3000, wc.QueryFlight(context, "SEA-JFK")); Assert.AreEqual(3000, wc.QueryFlight(context, "JFK-STV")); wc.Commit(context); }
public void Reservation() { var wc = new MyWC.MyWC_Accessor(); var tm = new MyTM.MyTM(); var rmf = new MyRM.MyRM(); var rmc = new MyRM.MyRM(); var rmr = new MyRM.MyRM(); MyWC_Accessor.TransactionManager = tm; rmf.SetName("flight"); rmf.TransactionManager = tm; rmc.SetName("car"); rmc.TransactionManager = tm; rmr.SetName("room"); rmr.TransactionManager = tm; tm.Register(rmf); tm.Register(rmc); tm.Register(rmr); MyWC.MyWC.Flights = tm.GetResourceMananger("flight"); MyWC.MyWC.Cars = tm.GetResourceMananger("car"); MyWC.MyWC.Rooms = tm.GetResourceMananger("room"); MyWC.MyWC.TransactionManager = tm; var context = wc.Start(); wc.AddSeats(context, "SEA-JFK", 3000, 300); wc.AddSeats(context, "JFK-STV", 3000, 300); wc.AddCars(context, "NY", 2000, 200); wc.AddRooms(context, "NY", 1000, 100); wc.Commit(context); var c1 = new Customer(); var c2 = new Customer(); Assert.IsTrue(wc.ReserveItinerary(c1, new[] {"SEA-JFK", "JFK-STV"}, "NY", true, true)); Assert.IsTrue(wc.ReserveItinerary(c2, new[] {"SEA-JFK"}, "NY", true, true)); context = wc.Start(); Assert.AreEqual(c1, wc.ListCustomers(context)[0]); Assert.AreEqual(c2, wc.ListCustomers(context)[1]); wc.Commit(context); context = wc.Start(); Assert.AreEqual(3000 - 2, wc.QueryFlight(context, "SEA-JFK")); Assert.AreEqual(3000 - 1, wc.QueryFlight(context, "JFK-STV")); Assert.AreEqual(1000 - 2, wc.QueryRoom(context, "NY")); wc.Commit(context); wc.CancelItinerary(c1); wc.CancelItinerary(c2); context = wc.Start(); Assert.AreEqual(1000, wc.QueryRoom(context, "NY")); Assert.AreEqual(3000, wc.QueryFlight(context, "SEA-JFK")); Assert.AreEqual(3000, wc.QueryFlight(context, "JFK-STV")); wc.Commit(context); }