/** * Test class for Session. * * @author Dr. Jody Paul * @version CS1 Spring 2006 */ public class SessionTest extends junit.framework.TestCase { /** Test constructors. */ public void testConstruction() { Session session1 = new Session(); Session session2 = new Session(null); Session session3 = new Session(null, null, null); Session session4 = new Session(new Time(10)); Session session5 = new Session(new Time(10), new Room("SI", "124A"), new Time()); } /** Test getDuration() and setDuration(time t). */ public void testDurationAttribute() { Session session1 = new Session(); assertEquals(Session.DEFAULT_DURATION, session1.getDuration().getMinutes()); session1.setDuration(new Time(42)); assertEquals(42, session1.getDuration().getMinutes()); Session session2 = new Session(new Time(43)); assertEquals(43, session2.getDuration().getMinutes()); } /** Test getStartTime() and setStartTime(). */ public void testStartTimeAttribute() { Session session1 = new Session(); assertEquals(null, session1.getStartTime()); session1.setStartTime(new Time(20)); assertEquals(20, session1.getStartTime().getMinutes()); Session session2 = new Session(new Time(10), new Room("SI", "222"), new Time(22)); assertEquals(22, session2.getStartTime().getMinutes()); } /** Test getNumberOfSubjects(). */ public void testGetNumberOfSubjects() { Session session1 = new Session(); assertEquals(0, session1.getNumberOfSubjects()); Student student1 = new Student("Ima Student", 987654321); session1.addSubject(student1); assertEquals(1, session1.getNumberOfSubjects()); Student student2 = new Student("Another Student", 123456789); session1.addSubject(student2); assertEquals(2, session1.getNumberOfSubjects()); java.util.ArrayList subjects1 = session1.getSubjects(); assertEquals(2, subjects1.size()); assertSame(student1, subjects1.get(0)); assertSame(student2, subjects1.get(1)); } /** Test getRoom() and setRoom(Room r). */ public void testRoomAttribute() { Room roomA222 = new Room("Bldg A", "222"); Session session1 = new Session(); assertNull(session1.getRoom()); session1.setRoom(roomA222); assertSame(roomA222, session1.getRoom()); } /** * Test getSubject(), addSubject(Student s), * getSubjects() and setSubjects(ArrayList als). */ public void testSubjectsAttribute() { Student student1 = new Student("Ima Student", 987654321); Student student2 = new Student("Another Student", 123456789); Session session1 = new Session(); assertEquals(0, session1.getSubjects().size()); session1.addSubject(student1); assertEquals(1, session1.getSubjects().size()); assertEquals(student1, session1.getSubject(0)); session1.addSubject(student2); assertEquals(2, session1.getSubjects().size()); assertEquals(student2, session1.getSubject(1)); java.util.ArrayList als1 = new java.util.ArrayList(); session1.setSubjects(als1); assertEquals(0, session1.getSubjects().size()); java.util.ArrayList als2 = new java.util.ArrayList(); als2.add(student2); als2.add(student1); session1.setSubjects(als2); assertEquals(2, session1.getSubjects().size()); assertEquals(student2, session1.getSubject(0)); assertEquals(student1, session1.getSubject(1)); java.util.ArrayList als3 = session1.getSubjects(); assertEquals(student2, als3.get(0)); assertEquals(student1, als3.get(1)); } }