public void AddDeleteCars() { var wc = new MyWC.MyWC_Accessor(); var tm = new MyTM.MyTM(); var rm = new MyRM.MyRM(); MyWC_Accessor.TransactionManager = tm; rm.SetName("car"); rm.TransactionManager = tm; tm.Register(rm); MyWC.MyWC.Cars = tm.GetResourceMananger("car"); var context = wc.Start(); Assert.IsTrue(wc.AddCars(context, "SEATTLE", 100, 66)); Assert.IsTrue(wc.AddCars(context, "HONOLULU", 200, 220)); wc.Commit(context); context = wc.Start(); Assert.AreEqual(100, wc.QueryCar(context, "SEATTLE")); Assert.AreEqual(66, wc.QueryCarPrice(context, "SEATTLE")); Assert.AreEqual(200, wc.QueryCar(context, "HONOLULU")); Assert.AreEqual(220, wc.QueryCarPrice(context, "HONOLULU")); wc.Commit(context); //add rooms context = wc.Start(); Assert.IsTrue(wc.AddCars(context, "SEATTLE", 10, 55)); Assert.IsTrue(wc.AddCars(context, "HONOLULU", 20, 110)); wc.Commit(context); context = wc.Start(); Assert.AreEqual(100 + 10, wc.QueryCar(context, "SEATTLE")); Assert.AreEqual(55, wc.QueryCarPrice(context, "SEATTLE")); Assert.AreEqual(220, wc.QueryCar(context, "HONOLULU")); Assert.AreEqual(110, wc.QueryCarPrice(context, "HONOLULU")); wc.Commit(context); //delete rooms context = wc.Start(); Assert.IsTrue(wc.DeleteCars(context, "SEATTLE", 5)); Assert.IsTrue(wc.DeleteCars(context, "HONOLULU", 10)); wc.Commit(context); context = wc.Start(); Assert.AreEqual(100 + 10 - 5, wc.QueryCar(context, "SEATTLE")); Assert.AreEqual(55, wc.QueryCarPrice(context, "SEATTLE")); Assert.AreEqual(220 - 10, wc.QueryCar(context, "HONOLULU")); Assert.AreEqual(110, wc.QueryCarPrice(context, "HONOLULU")); wc.Commit(context); }
public void AddDeleteCombinationsOneByOne() { 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"); var context = new Transaction(); wc.AddSeats(context, "SEA-JFK", 3000, 300); wc.Commit(context); wc.AddCars(context, "NY", 2000, 200); wc.Commit(context); wc.AddRooms(context, "NY", 1000, 100); wc.Commit(context); context = new Transaction(); Assert.AreEqual(200, wc.QueryCarPrice(context, "NY")); Assert.AreEqual(300, wc.QueryFlightPrice(context, "SEA-JFK")); Assert.AreEqual(100, wc.QueryRoomPrice(context, "NY")); 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 AddDeleteCombinations() { 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"); var context = new Transaction(); wc.AddSeats(context, "SEA-JFK", 3000, 300); wc.AddCars(context, "NY", 2000, 200); wc.AddRooms(context, "NY", 1000, 100); wc.Commit(context); context = new Transaction(); Assert.AreEqual(200, wc.QueryCarPrice(context, "NY")); Assert.AreEqual(300, wc.QueryFlightPrice(context, "SEA-JFK")); Assert.AreEqual(100, wc.QueryRoomPrice(context, "NY")); 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); }