public OrderHub(TableService getTablesService, OrderService orderService, OrderPosService orderPosService, AssignOrderService assignOrderService, TabletService tabletService ) { this.getTablesService = getTablesService; this.orderService = orderService; this.orderPosService = orderPosService; this.assignOrderService = assignOrderService; this.tabletService = tabletService; }
public void TestOrderHub() { var context = MockContextFactory.Create(); var getTablesService = new TableService(new MockDataService(context)); var orderService = new OrderService(new MockDataService(context)); var orderPosService = new OrderPosService(new MockDataService(context), orderService); var assignOrderService = new AssignOrderService(new MockDataService(context)); var tabletService = new TabletService(new MockDataService(context)); context.Table.Add(new Database.Models.Table { Id = 12, Name = "Hera", }); context.Tablet.Add(new Database.Models.Tablet { Id = 7, Identifier = "Mira", Mode = Database.Models.Mode.Guest }); context.SaveChanges(); var request = new CreateOrderRequest(); request.TableId = 12; request.TabletIdentifier = "Mira"; var command = new Command <CreateOrderRequest>(); command.RequestId = "123"; command.Arguments = request; var called = false; var hub = new OrderHub(getTablesService, orderService, orderPosService, assignOrderService, tabletService); var responseType = "CreateOrderResponse"; var action = new Action <Command <CreateOrderResponse> >((response) => { Assert.Equal(response.RequestId, command.RequestId); Assert.NotNull(response.Arguments.Order); called = true; }); hub.Clients = MockHubFactory.CreateClients(responseType, action); hub.CreateOrderRequest(command); Assert.True(called); }
public void TestDoUpdateOrderPos() { var context = MockContextFactory.Create(); var testOrder = new Order() { Id = 1, OrderStatus = OrderStatus.New, CreationTime = new DateTime(2017, 2, 4, 17, 0, 0), Guests = new List <Tablet>(), Positions = new List <OrderPos>() }; var testItem1 = new Itemtyp { Id = 1, Number = 1, Title = "Burger", Description = "Burger with Fries", ItemPrice = 15 }; context.Itemtyp.Add(testItem1); context.Order.Add(testOrder); context.SaveChanges(); var orderService = new OrderService(new MockDataService(context)); var positionService = new OrderPosService(new MockDataService(context), orderService); positionService.AddOrderPos(testOrder.Id, testItem1.Id); positionService.DoUpdateOrderPosRequest(testOrder.Positions.First().Id, 3, ""); context.SaveChanges(); Assert.Equal(45, testOrder.Positions.First().PricePos); positionService.DoUpdateOrderPosRequest(testOrder.Positions.First().Id, 1, ""); Assert.Equal(15, testOrder.Positions.First().PricePos); positionService.DoUpdateOrderPosRequest(testOrder.Positions.First().Id, 4, ""); Assert.Equal(60, testOrder.Positions.First().PricePos); }
public void TestAddOrderPos() { var context = MockContextFactory.Create(); var testOrder = new Order() { Id = 1, OrderStatus = OrderStatus.New, CreationTime = new DateTime(2017, 2, 4, 17, 0, 0), Guests = new List <Tablet>(), Positions = new List <OrderPos>() }; var testItem1 = new Itemtyp { Id = 1, Number = 1, Title = "Burger", Description = "Burger with Fries", ItemPrice = 15 }; var testItem2 = new Itemtyp { Id = 2, Number = 2, Title = "Steak", Description = "Steak with Fries", ItemPrice = 20 }; var testItem3 = new Itemtyp { Id = 3, Number = 3, Title = "Toast", Description = "Toast with Fries", ItemPrice = 10 }; context.Order.Add(testOrder); context.SaveChanges(); var orderService = new OrderService(new MockDataService(context)); var service = new OrderPosService(new MockDataService(context), orderService); service.AddOrderPos(testOrder.Id, testItem1.Id); service.AddOrderPos(testOrder.Id, testItem2.Id); context.SaveChanges(); Assert.Equal(2, testOrder.Positions.Count()); Assert.Equal(2, testOrder.Positions.LastOrDefault().Number); var testOrder2 = new Order() { Id = 2, OrderStatus = OrderStatus.New, CreationTime = new DateTime(2017, 2, 9, 17, 0, 0), Guests = new List <Tablet>(), Positions = new List <OrderPos>() }; context.Order.Add(testOrder2); context.SaveChanges(); service.AddOrderPos(testOrder2.Id, testItem1.Id); service.AddOrderPos(testOrder2.Id, testItem2.Id); service.AddOrderPos(testOrder2.Id, testItem3.Id); context.SaveChanges(); Assert.Equal(3, testOrder2.Positions.Count()); Assert.Equal(3, testOrder2.Positions.LastOrDefault().Number); service.RemoveOrderPos(testOrder2.Id, testOrder2.Positions.First().Id); Assert.Equal(2, testOrder2.Positions.Count()); Assert.Equal(3, testOrder2.Positions.LastOrDefault().Number); }