package com.ewolff.orderhandling.dao; import org.junit.Assert; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import com.ewolff.orderhandling.domain.Order; import com.ewolff.orderhandling.domain.OrderItem; import com.ewolff.orderhandling.test.AbstractSpringBasedTest; public class OrderDaoTest extends AbstractSpringBasedTest { @Autowired public OrderDao orderDao; @Test public void testCreateRead() { int numberOfOrder = orderDao.findAllOrder().size(); Order order = new Order(false,21); order.addOrderItem(new OrderItem(42, "iPod")); Assert.assertEquals(0, order.getId()); orderDao.create(order); Assert.assertEquals(numberOfOrder + 1, orderDao.findAllOrder().size()); Order readOrder = orderDao.findById(order.getId()); Assert.assertEquals(order, readOrder); Assert.assertEquals(1, readOrder.getOrderItem().size()); Assert.assertTrue(order.getId() != 0); } @Test public void testCreateReadNoOrderItem() { int numberOfOrder = orderDao.findAllOrder().size(); Order order = new Order(false,21); Assert.assertEquals(0, order.getId()); orderDao.create(order); Assert.assertEquals(numberOfOrder + 1, orderDao.findAllOrder().size()); Order readOrder = orderDao.findById(order.getId()); Assert.assertEquals(order, readOrder); Assert.assertEquals(0, readOrder.getOrderItem().size()); Assert.assertTrue(order.getId() != 0); } @Test public void testUpdate() { Order order = new Order(false,21); order.addOrderItem(new OrderItem(42, "iPod")); orderDao.create(order); Assert.assertFalse(order.isProcessed()); OrderItem orderItem = order.getOrderItem().get(0); orderItem.setCount(21); orderItem.setItem("MacBook"); order.setProcessed(true); order.setExpress(true); order.setCustomer(20); orderDao.update(order); order = orderDao.findById(order.getId()); Assert.assertTrue(order.isExpress()); Assert.assertTrue(order.isProcessed()); Assert.assertEquals(20, order.getCustomer()); orderItem = order.getOrderItem().get(0); Assert.assertEquals(1, order.getOrderItem().size()); Assert.assertEquals("MacBook", orderItem.getItem()); Assert.assertEquals(21, orderItem.getCount()); } }