package utest; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import java.sql.ResultSet; import java.util.Date; import org.easymock.EasyMock; import org.junit.Test; import core.business.Reservation; import connect.sqlite.ConnectData; import connect.sqlite.IConnectData; //TODO you should merge all the classes that are in charge of testing the Reservation class (ReservationTest and ReservationUTest) public class ReservationUTest { // getReservatedList() @Test public void getReservatedListTest() { IConnectData mockconnection = EasyMock.createStrictMock(IConnectData.class); ResultSet result = null; String sql = "Select * from Reservation"; EasyMock.expect(mockconnection.connect()).andReturn(true); EasyMock.expect(mockconnection.ExcuteQuery(sql)).andReturn(result); Reservation obj = new Reservation(mockconnection); EasyMock.replay(mockconnection); obj.getReservatedList(); EasyMock.verify(mockconnection); } // addReservation(Customer) @Test public void addReservation_NullCustomerTest() { // TODO this code seems common to most of the methods, you can put it in a method annotated @Before IConnectData mockconnection = EasyMock.createNiceMock(IConnectData.class); //IReservation obj = new Reservation(mockconnection); EasyMock.replay(mockconnection); // TODO why the last line is commented? // assertEquals(0, obj.addReservation(null)); EasyMock.verify(mockconnection); } private void setAllParam(Reservation obj) { if (obj == null) { return; } obj.setCustomerID(1); obj.setNumberOfAdult(0); obj.setNumberOfChild(2); obj.setPreTotalCost(100); obj.setResDate(new Date()); obj.setResLeaveDate(new Date()); obj.setResStatus(1); } @Test public void setResDate_Test() { IConnectData mockconnection = new ConnectData(); Reservation obj = new Reservation(mockconnection); Date date = new Date(12345); obj.setResDate(date); assertNotNull(obj.getResDate()); } @Test public void getResDate_Test() { Reservation obj = new Reservation(1); assertNotNull(obj.getResDate()); //obj.setResDate(null); //assertNotNull(obj.getResDate()); } @Test public void addReservation_NumberOfAdult_Test() { IConnectData mockconnection = new ConnectData(); Reservation obj = new Reservation(mockconnection); setAllParam(obj); obj.setNumberOfAdult(0); assertTrue(obj.getNumberOfAdult() <= 0); // assertTrue(obj.addReservation(new Customer()) < 0); } @Test public void addReservation_ResDate_ResLeaveDate_Test() { IConnectData mockconnection = new ConnectData(); Reservation obj = new Reservation(mockconnection); setAllParam(obj); obj.setResDate(new Date(2012, 2, 1)); obj.setResLeaveDate(new Date(2012, 1, 1)); assertTrue(obj.getResDate().compareTo(obj.getResLeaveDate()) > 0); // assertTrue(obj.addReservation(new Customer()) < 0); } //addReservation @Test public void addReservation_Test() { IConnectData mockconnection = new ConnectData(); Reservation obj = new Reservation(mockconnection); setAllParam(obj); obj.setResDate(new Date(2012, 2, 1)); obj.setResLeaveDate(new Date(2012, 1, 1)); assertTrue(obj.getResDate().compareTo(obj.getResLeaveDate()) > 0); // assertTrue(obj.addReservation(new Customer()) < 0); } }