diff --git a/src/main/java/dev/example/restaurantManager/controller/EatInOrderController.java b/src/main/java/dev/example/restaurantManager/controller/EatInOrderController.java new file mode 100644 index 0000000..22c98e9 --- /dev/null +++ b/src/main/java/dev/example/restaurantManager/controller/EatInOrderController.java @@ -0,0 +1,89 @@ +package dev.example.restaurantManager.controller; + +import dev.example.restaurantManager.model.EatInOrderRestaurant; +import dev.example.restaurantManager.service.EatInOrderService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +import java.util.Date; +import java.util.List; + +@RequestMapping("/api/v1/eatinorder") +@RestController +public class EatInOrderController { + + @Autowired + private EatInOrderService eatInOrderService; + + + // manage request by ResponseEntity with all eatInOrders + @GetMapping("/allEatInOrders") + public ResponseEntity> getAllEatInOrders( ) { + List eatInOrders = eatInOrderService.getAllEatInOrders(); + HttpHeaders headers = getCommonHeaders("Get all eatInOrders"); + + return eatInOrders != null && !eatInOrders.isEmpty() + ? new ResponseEntity<>(eatInOrders, headers, HttpStatus.OK) + : new ResponseEntity<>(headers, HttpStatus.NOT_FOUND); + } + + @PostMapping + public ResponseEntity createEatInOrder(@RequestBody EatInOrderRestaurant eatInOrder) { + EatInOrderRestaurant createdEatInOrder = eatInOrderService.createEatInOrder(eatInOrder); + HttpHeaders headers = getCommonHeaders("Create a new eatInOrder"); + + return createdEatInOrder != null + ? new ResponseEntity<>(createdEatInOrder, headers, HttpStatus.CREATED) + : new ResponseEntity<>(headers, HttpStatus.BAD_REQUEST); + } + + @PutMapping("/{id}") + public ResponseEntity updateEatInOrder(@PathVariable String id, @RequestBody EatInOrderRestaurant eatInOrderDetails) { + EatInOrderRestaurant updatedEatInOrder = eatInOrderService.updateEatInOrder(id, eatInOrderDetails); + HttpHeaders headers = getCommonHeaders("Update a eatInOrder"); + + return updatedEatInOrder != null + ? new ResponseEntity<>(updatedEatInOrder, headers, HttpStatus.OK) + : new ResponseEntity<>(headers, HttpStatus.NOT_FOUND); + } + + @DeleteMapping("/{id}") + public ResponseEntity deleteEatInOrder(@PathVariable String id) { + boolean deleted = eatInOrderService.deleteEatInOrder(id); + HttpHeaders headers = getCommonHeaders("Delete a eatInOrder"); + headers.add("deleted", String.valueOf(deleted)); + + + return deleted + ? new ResponseEntity<>(headers, HttpStatus.NO_CONTENT) + : new ResponseEntity<>(headers, HttpStatus.NOT_FOUND); + } + + @GetMapping("/{id}") + public ResponseEntity getEatInOrderById(@PathVariable String id) { + EatInOrderRestaurant eatInOrder = eatInOrderService.getEatInOrderById(id); + HttpHeaders headers = getCommonHeaders("Get a eatInOrder by Id"); + + return eatInOrder != null + ? new ResponseEntity<>(eatInOrder, headers, HttpStatus.OK) + : new ResponseEntity<>(headers, HttpStatus.NOT_FOUND); + } + + private HttpHeaders getCommonHeaders(String description) { + HttpHeaders headers = new HttpHeaders(); + headers.add("desc", description); + headers.add("content-type", "application/json"); + headers.add("date", new Date().toString()); + headers.add("server", "H2 Database"); + headers.add("version", "1.0.0"); + headers.add("eatinorders-count", String.valueOf(eatInOrderService.countEatInOrders())); + headers.add("object", "eatinorder"); + return headers; + } + + + +} diff --git a/src/main/java/dev/example/restaurantManager/controller/TableController.java b/src/main/java/dev/example/restaurantManager/controller/TableController.java new file mode 100644 index 0000000..81050aa --- /dev/null +++ b/src/main/java/dev/example/restaurantManager/controller/TableController.java @@ -0,0 +1,87 @@ +package dev.example.restaurantManager.controller; + +import dev.example.restaurantManager.model.TableRestaurant; +import dev.example.restaurantManager.service.TableService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +import java.util.Date; +import java.util.List; + +@RequestMapping("/api/v1/table") +@RestController +public class TableController { + + @Autowired + private TableService tableService; + + + // manage request by ResponseEntity with all tables + @GetMapping("/allTables") + public ResponseEntity> getAllTables( ) { + List tables = tableService.getAllTables(); + HttpHeaders headers = getCommonHeaders("Get all tables"); + + return tables != null && !tables.isEmpty() + ? new ResponseEntity<>(tables, headers, HttpStatus.OK) + : new ResponseEntity<>(headers, HttpStatus.NOT_FOUND); + } + + @PostMapping + public ResponseEntity createTable(@RequestBody TableRestaurant table) { + TableRestaurant createdTable = tableService.createTable(table); + HttpHeaders headers = getCommonHeaders("Create a new table"); + + return createdTable != null + ? new ResponseEntity<>(createdTable, headers, HttpStatus.CREATED) + : new ResponseEntity<>(headers, HttpStatus.BAD_REQUEST); + } + + @PutMapping("/{id}") + public ResponseEntity updateTable(@PathVariable String id, @RequestBody TableRestaurant tableDetails) { + TableRestaurant updatedTable = tableService.updateTable(id, tableDetails); + HttpHeaders headers = getCommonHeaders("Update a table"); + + return updatedTable != null + ? new ResponseEntity<>(updatedTable, headers, HttpStatus.OK) + : new ResponseEntity<>(headers, HttpStatus.NOT_FOUND); + } + + @DeleteMapping("/{id}") + public ResponseEntity deleteTable(@PathVariable String id) { + boolean deleted = tableService.deleteTable(id); + HttpHeaders headers = getCommonHeaders("Delete a table"); + headers.add("deleted", String.valueOf(deleted)); + + + return deleted + ? new ResponseEntity<>(headers, HttpStatus.NO_CONTENT) + : new ResponseEntity<>(headers, HttpStatus.NOT_FOUND); + } + + @GetMapping("/{id}") + public ResponseEntity getTableById(@PathVariable String id) { + TableRestaurant table = tableService.getTableById(id); + HttpHeaders headers = getCommonHeaders("Get a table by Id"); + + return table != null + ? new ResponseEntity<>(table, headers, HttpStatus.OK) + : new ResponseEntity<>(headers, HttpStatus.NOT_FOUND); + } + + private HttpHeaders getCommonHeaders(String description) { + HttpHeaders headers = new HttpHeaders(); + headers.add("desc", description); + headers.add("content-type", "application/json"); + headers.add("date", new Date().toString()); + headers.add("server", "H2 Database"); + headers.add("version", "1.0.0"); + headers.add("table-count", String.valueOf(tableService.countTables())); + headers.add("object", "tables"); + return headers; + } + +} diff --git a/src/main/java/dev/example/restaurantManager/model/EatInOrderRestaurant.java b/src/main/java/dev/example/restaurantManager/model/EatInOrderRestaurant.java index 692c186..5c1eaa1 100644 --- a/src/main/java/dev/example/restaurantManager/model/EatInOrderRestaurant.java +++ b/src/main/java/dev/example/restaurantManager/model/EatInOrderRestaurant.java @@ -1,5 +1,8 @@ package dev.example.restaurantManager.model; +import jakarta.persistence.Entity; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -8,26 +11,31 @@ import java.util.Date; import java.util.stream.Collectors; +@Entity @Data @AllArgsConstructor @NoArgsConstructor public class EatInOrderRestaurant extends OrderRestaurant { - private ArrayList tableRestaurants = new ArrayList<>(); - //private TableRestaurant orderedTableRestaurant; + //private ArrayList tableRestaurants = new ArrayList<>(); + + @ManyToOne + @JoinColumn(name="TABLE_EIO_FK") + private TableRestaurant tableEatInOrder; public EatInOrderRestaurant(String id, Date date, String waiter, int peopleQty, double totalPayment, boolean paid, ArrayList menus, - ArrayList tableRestaurants) { + TableRestaurant tableEatInOrder) { super(id, date, waiter, peopleQty, totalPayment, paid, menus); - this.tableRestaurants = tableRestaurants; + this.tableEatInOrder = tableEatInOrder; } @Override public String toString() { return super.toString() + "\n" + "Type: Eat In\n" + - "Tables: " + tableRestaurants.stream().map(TableRestaurant::getName).collect(Collectors.joining(", ")); + "Table EatInOrder: " + tableEatInOrder; +// "Tables: " + tableRestaurants.stream().map(TableRestaurant::getName).collect(Collectors.joining(", ")); } } diff --git a/src/main/java/dev/example/restaurantManager/model/TableRestaurant.java b/src/main/java/dev/example/restaurantManager/model/TableRestaurant.java index bbd18fd..23c8653 100644 --- a/src/main/java/dev/example/restaurantManager/model/TableRestaurant.java +++ b/src/main/java/dev/example/restaurantManager/model/TableRestaurant.java @@ -1,17 +1,12 @@ package dev.example.restaurantManager.model; -import jakarta.persistence.CascadeType; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.OneToMany; -import lombok.AllArgsConstructor; +import jakarta.persistence.*; import lombok.Data; import lombok.NoArgsConstructor; import java.util.ArrayList; @Data -@AllArgsConstructor @NoArgsConstructor @Entity public class TableRestaurant { @@ -26,9 +21,29 @@ public class TableRestaurant { @OneToMany(mappedBy = "tableRestaurantMapped", cascade = CascadeType.ALL) private ArrayList bookings ; + @OneToMany(mappedBy = "tableEatInOrder", cascade = CascadeType.ALL) + private ArrayList eatInOrders ; + + public TableRestaurant(String id,String name, String description , int qty, boolean busy, ArrayList bookings, ArrayList eatInOrders) { + this.id=id; + this.name= name; + this.description=description; + this.qty=qty; + this.busy=busy; + this.bookings = bookings; + this.eatInOrders = eatInOrders; + } + + + + // we must create a VERY CONCRETE constructor to RUN the OLD tests + public TableRestaurant(String id,String name, String description , int qty, boolean busy,ArrayList bookings) { + this(id,name, description , qty, busy,bookings,new ArrayList<>()); + } // we must create a VERY CONCRETE constructor to RUN the OLD tests public TableRestaurant(String name, String description , int qty, boolean busy) { + this(name,name, description , qty, busy,new ArrayList<>(),new ArrayList<>()); } diff --git a/src/main/java/dev/example/restaurantManager/repository/EatInOrderRepository.java b/src/main/java/dev/example/restaurantManager/repository/EatInOrderRepository.java new file mode 100644 index 0000000..df0de93 --- /dev/null +++ b/src/main/java/dev/example/restaurantManager/repository/EatInOrderRepository.java @@ -0,0 +1,7 @@ +package dev.example.restaurantManager.repository; + +import dev.example.restaurantManager.model.EatInOrderRestaurant; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface EatInOrderRepository extends JpaRepository { +} diff --git a/src/main/java/dev/example/restaurantManager/service/EatInOrderService.java b/src/main/java/dev/example/restaurantManager/service/EatInOrderService.java new file mode 100644 index 0000000..986ec1c --- /dev/null +++ b/src/main/java/dev/example/restaurantManager/service/EatInOrderService.java @@ -0,0 +1,14 @@ +package dev.example.restaurantManager.service; + +import dev.example.restaurantManager.model.EatInOrderRestaurant; + +import java.util.List; + +public interface EatInOrderService { + List getAllEatInOrders(); + EatInOrderRestaurant createEatInOrder(EatInOrderRestaurant eatInOrder); + EatInOrderRestaurant getEatInOrderById(String id); + EatInOrderRestaurant updateEatInOrder(String id, EatInOrderRestaurant eatInOrderDetails); + boolean deleteEatInOrder(String id); + long countEatInOrders(); +} diff --git a/src/main/java/dev/example/restaurantManager/service/EatInOrderServiceImpl.java b/src/main/java/dev/example/restaurantManager/service/EatInOrderServiceImpl.java new file mode 100644 index 0000000..0f62f01 --- /dev/null +++ b/src/main/java/dev/example/restaurantManager/service/EatInOrderServiceImpl.java @@ -0,0 +1,51 @@ +package dev.example.restaurantManager.service; + +import dev.example.restaurantManager.model.EatInOrderRestaurant; +import dev.example.restaurantManager.repository.EatInOrderRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class EatInOrderServiceImpl implements EatInOrderService{ + + @Autowired + private EatInOrderRepository eatInOrderRepository; + + @Override + public List getAllEatInOrders() { + return eatInOrderRepository.findAll(); + } + + @Override + public EatInOrderRestaurant createEatInOrder(EatInOrderRestaurant eatInOrder) { + return eatInOrderRepository.save(eatInOrder); + } + + @Override + public EatInOrderRestaurant getEatInOrderById(String id) { + return eatInOrderRepository.findById(id).orElse(null); + } + + @Override + public EatInOrderRestaurant updateEatInOrder(String id, EatInOrderRestaurant eatInOrderDetails) { + EatInOrderRestaurant eatInOrder = getEatInOrderById(id); + if(eatInOrder== null){ + return null; + } + return eatInOrderRepository.save(eatInOrderDetails); + } + + @Override + public boolean deleteEatInOrder(String id) { + EatInOrderRestaurant eatInOrder = getEatInOrderById(id); + eatInOrderRepository.deleteById(id); + return eatInOrder != null; + } + + @Override + public long countEatInOrders() { + return eatInOrderRepository.count(); + } +} diff --git a/src/main/java/dev/example/restaurantManager/service/TableService.java b/src/main/java/dev/example/restaurantManager/service/TableService.java new file mode 100644 index 0000000..68e3b7e --- /dev/null +++ b/src/main/java/dev/example/restaurantManager/service/TableService.java @@ -0,0 +1,14 @@ +package dev.example.restaurantManager.service; + +import dev.example.restaurantManager.model.TableRestaurant; + +import java.util.List; + +public interface TableService { + List getAllTables(); + TableRestaurant createTable(TableRestaurant table); + TableRestaurant getTableById(String id); + TableRestaurant updateTable(String id, TableRestaurant tableDetails); + boolean deleteTable(String id); + long countTables(); +} diff --git a/src/main/java/dev/example/restaurantManager/service/TableServiceImpl.java b/src/main/java/dev/example/restaurantManager/service/TableServiceImpl.java new file mode 100644 index 0000000..7d103ec --- /dev/null +++ b/src/main/java/dev/example/restaurantManager/service/TableServiceImpl.java @@ -0,0 +1,54 @@ +package dev.example.restaurantManager.service; + +import dev.example.restaurantManager.model.TableRestaurant; +import dev.example.restaurantManager.repository.TableRestaurantRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class TableServiceImpl implements TableService{ + + @Autowired + private TableRestaurantRepository tableRepository; + + @Override + public List getAllTables() { + return tableRepository.findAll(); + } + + @Override + public TableRestaurant createTable(TableRestaurant table) { + return tableRepository.save(table); + } + + @Override + public TableRestaurant getTableById(String id) { + return tableRepository.findById(id).orElse(null); + } + + @Override + public TableRestaurant updateTable(String id, TableRestaurant tableDetails) { + TableRestaurant table = getTableById(id); + if(table== null) { + return null; + } + return tableRepository.save(tableDetails); + } + + @Override + public boolean deleteTable(String id) { + TableRestaurant table = getTableById(id); + if(table== null) { + return false; + } + tableRepository.deleteById(id); + return true; + } + + @Override + public long countTables() { + return tableRepository.count(); + } +} diff --git a/src/main/resources/application-jc-local.properties b/src/main/resources/application-jc-local.properties new file mode 100644 index 0000000..10332da --- /dev/null +++ b/src/main/resources/application-jc-local.properties @@ -0,0 +1,17 @@ + + + +# H2 LOCAL DB SERVER +spring.datasource.url=jdbc:h2:/home/jc/Documents/restaurant-db/db +spring.datasource.username=jc +spring.datasource.password= + +# DDL OPTIONS: create-drop, create, update, none, validate +spring.jpa.hibernate.ddl-auto=create +# create ? Hibernate first drops existing tables and then creates new tables. +# update ? The object model created based on the mappings +# (annotations or XML) is compared with the existing schema, +# and then Hibernate updates the schema according to the diff. +# It never deletes the existing tables or columns +# even if they are no longer required by the application. +# https://albertprofe.dev/springboot/sblab0-5.html#ddl \ No newline at end of file diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 56fa3b7..fc01ffd 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,7 +1,8 @@ spring.application.name=restaurantManager # application.properties -spring.profiles.active=memory +# spring.profiles.active=memory +spring.profiles.active=jc-local diff --git a/src/test/java/dev/example/restaurantManager/EatInOrderTest.java b/src/test/java/dev/example/restaurantManager/EatInOrderTest.java new file mode 100644 index 0000000..0cc9a76 --- /dev/null +++ b/src/test/java/dev/example/restaurantManager/EatInOrderTest.java @@ -0,0 +1,140 @@ +package dev.example.restaurantManager; + +import dev.example.restaurantManager.model.*; +import dev.example.restaurantManager.repository.EatInOrderRepository; +import dev.example.restaurantManager.repository.TableRestaurantRepository; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.Optional; + +import static org.assertj.core.api.Assertions.assertThat; + +@DataJpaTest +public class EatInOrderTest { + + @Autowired + private TableRestaurantRepository tableRestaurantRepository; + @Autowired + private EatInOrderRepository eatInOrderRepository; + + @Test + public void createEatInOrderTest() { + // Create sample menus + Menu menu1 = new Menu("Burger Menu", 10.99, "Burger, fries, and drink", true, true); + Menu menu2 = new Menu("Pizza Menu", 12.99, "Pizza and salad", true, false); + Menu menu3 = new Menu("Salad Menu", 8.99, "Mixed salad and dressing", true, true); + + // Create sample tables + TableRestaurant table1 = new TableRestaurant("T1", "Window Table", 4, false); + TableRestaurant table2 = new TableRestaurant("T2", "Corner Table", 2, true); + + // Create 3 EatInOrderRestaurant objects + EatInOrderRestaurant eatInOrder1 = new EatInOrderRestaurant("EO1", new Date(), "David", 4, 43.96, true, new ArrayList<>(Arrays.asList(menu1, menu1, menu2, menu2)), table1); + EatInOrderRestaurant eatInOrder2 = new EatInOrderRestaurant("EO2", new Date(), "Anna", 2, 21.98, false, new ArrayList<>(Arrays.asList(menu2, menu3)), table2); + EatInOrderRestaurant eatInOrder3 = new EatInOrderRestaurant("EO3", new Date(), "Mark", 6, 65.94, true, new ArrayList<>(Arrays.asList(menu1, menu1, menu2, menu2, menu3, menu3)), table1); + + // Create a list of all orders + ArrayList orders = new ArrayList<>(); + orders.addAll(Arrays.asList(eatInOrder1, eatInOrder2, eatInOrder3)); + + // Print the number of orders + System.out.println("Orders"); + System.out.println("Total number of orders: " + orders.size() + " orders."); + System.out.println("--------------------"); + // Print all orders + for (EatInOrderRestaurant order : orders) { + System.out.println("Order ID: " + order.getId()); + System.out.println(order); + System.out.println("--------------------"); + } + + + // let's create an order to save and test + // we do not create orderToSave as OrderRestaurant but + // as TakeAwayOrder to AVOID casting because + // in this test is easier to work with + EatInOrderRestaurant eatInOrderToSave = new EatInOrderRestaurant("EO1", new Date(), "David", 4, 43.96, true, new ArrayList<>(Arrays.asList(menu1, menu1, menu2, menu2)),table1); + eatInOrderToSave.setTableEatInOrder(table1); + // Save the table + tableRestaurantRepository.save(table1); + // Save the order with JPA Repository + eatInOrderRepository.save(eatInOrderToSave); + + // when + Optional found = eatInOrderRepository.findById("EO1"); + System.out.println("--------------------"); + System.out.println("EatInOrder ID: " + found.get().getId()); + System.out.println(found.get()); + // then + assertThat(found).isPresent(); + assertThat(found.get().getTableEatInOrder().equals(table1)); + + System.out.println("--------------------"); + } + + + @Test + public void createEatInOrder2Test() { + // Create sample menus + Menu menu1 = new Menu("Burger Menu", 10.99, "Burger, fries, and drink", true, true); + Menu menu2 = new Menu("Pizza Menu", 12.99, "Pizza and salad", true, false); + Menu menu3 = new Menu("Salad Menu", 8.99, "Mixed salad and dressing", true, true); + + // Create & save to DB sample tables + TableRestaurant table1 = new TableRestaurant("T1", "Window Table", 4, false); + tableRestaurantRepository.save(table1); + TableRestaurant table2 = new TableRestaurant("T2", "Corner Table", 2, false); + tableRestaurantRepository.save(table2); + TableRestaurant table3 = new TableRestaurant("T3", "Corner Table", 4, false); + tableRestaurantRepository.save(table3); + + // Create 3 EatInOrderRestaurant objects & save them + EatInOrderRestaurant eatInOrder1 = new EatInOrderRestaurant("EO1", new Date(), "David", 4, 43.96, true, new ArrayList<>(Arrays.asList(menu1, menu1, menu2, menu2)), table1); + eatInOrderRepository.save(eatInOrder1); + EatInOrderRestaurant eatInOrder2 = new EatInOrderRestaurant("EO2", new Date(), "Anna", 2, 21.98, false, new ArrayList<>(Arrays.asList(menu2, menu3)), table2); + eatInOrderRepository.save(eatInOrder2); + EatInOrderRestaurant eatInOrder3 = new EatInOrderRestaurant("EO3", new Date(), "Mark", 6, 65.94, true, new ArrayList<>(Arrays.asList(menu1, menu1, menu2, menu2, menu3, menu3)), table3); + eatInOrderRepository.save(eatInOrder3); + + // Create a list of all orders + ArrayList orders = new ArrayList<>(); + orders.addAll(Arrays.asList(eatInOrder1, eatInOrder2, eatInOrder3)); + + // Print the number of orders + System.out.println("Orders"); + System.out.println("Total number of orders: " + orders.size() + " orders."); + System.out.println("--------------------"); + // Print all orders + for (OrderRestaurant order : orders) { + System.out.println("Order ID: " + order.getId()); + System.out.println(order); + System.out.println("--------------------"); + } + + // let's check table id by recovering EatOnOrders + for(String nId:Arrays.asList("1","2","3")){ + System.out.println("--------------------"); + String idEIO = "EO" + nId; + Optional found = eatInOrderRepository.findById(idEIO); + if(found.isEmpty()){ + System.out.println("EatInOrder with ID: " + idEIO + " not found"); + continue; + } + System.out.println("EatInOrder ID: " + found.get().getId()); + System.out.println(found.get()); + String idTable = "T" + nId; + assertThat(found.get().getTableEatInOrder().getId().equals(idTable)); + } + System.out.println("--------------------"); + + } + + +} + + diff --git a/src/test/java/dev/example/restaurantManager/RelationshipsOrderRestaurantTest.java b/src/test/java/dev/example/restaurantManager/RelationshipsOrderRestaurantTest.java index 2e5c78b..87c7e07 100644 --- a/src/test/java/dev/example/restaurantManager/RelationshipsOrderRestaurantTest.java +++ b/src/test/java/dev/example/restaurantManager/RelationshipsOrderRestaurantTest.java @@ -50,9 +50,9 @@ public void TestCreateOrder() { OrderRestaurant shippingOrder3 = new ShippingOrderRestaurant("SO3", new Date(), "Emily", 3, 32.97, false, new ArrayList<>(Arrays.asList(menu1, menu2, menu3)), "789 Oak St", "Chicago", "Lisa"); // Create 3 EatInOrder objects - OrderRestaurant eatInOrder1 = new EatInOrderRestaurant("EO1", new Date(), "David", 4, 43.96, true, new ArrayList<>(Arrays.asList(menu1, menu1, menu2, menu2)), new ArrayList<>(Arrays.asList(table1))); - OrderRestaurant eatInOrder2 = new EatInOrderRestaurant("EO2", new Date(), "Anna", 2, 21.98, false, new ArrayList<>(Arrays.asList(menu2, menu3)), new ArrayList<>(Arrays.asList(table2))); - OrderRestaurant eatInOrder3 = new EatInOrderRestaurant("EO3", new Date(), "Mark", 6, 65.94, true, new ArrayList<>(Arrays.asList(menu1, menu1, menu2, menu2, menu3, menu3)), new ArrayList<>(Arrays.asList(table1, table2))); + OrderRestaurant eatInOrder1 = new EatInOrderRestaurant("EO1", new Date(), "David", 4, 43.96, true, new ArrayList<>(Arrays.asList(menu1, menu1, menu2, menu2)), table1); + OrderRestaurant eatInOrder2 = new EatInOrderRestaurant("EO2", new Date(), "Anna", 2, 21.98, false, new ArrayList<>(Arrays.asList(menu2, menu3)), table2); + OrderRestaurant eatInOrder3 = new EatInOrderRestaurant("EO3", new Date(), "Mark", 6, 65.94, true, new ArrayList<>(Arrays.asList(menu1, menu1, menu2, menu2, menu3, menu3)), table1); // Create 3 TakeAwayOrder objects OrderRestaurant takeAwayOrder1 = new TakeAwayOrder("TO1", new Date(), "Alice", 1, 10.99, true, new ArrayList<>(Arrays.asList(menu1)), customer1 );