Difference between r1.1 and the current
@@ -1,4 +1,4 @@
== Source ==
== Elevator.java ==
{{{public class Elevator {
@@ -48,3 +48,55 @@
}
}
}}}
}
}}}
== App.java (Test) ==
{{{
import static org.junit.Assert.*;
import org.junit.Test;
public class App {
@Test
public void testElevator() {
Elevator elevator = new Elevator(65, -10); // default 현재층 : 1
// 객체 생성 여부
assertNotNull(elevator);
assertEquals(1, elevator.floor());
// 엘레베이터에 안탔으므로 이동이 안됨
elevator.goTo(30);
assertEquals(1, elevator.floor());
// 버튼을 누르지 않으면 탈 수 없음.
elevator.in();
elevator.goTo(20);
assertEquals(1, elevator.floor());
// 버튼 눌러서 타서 이동한 케이스
elevator.press();
elevator.in();
elevator.goTo(30);
assertEquals(30, elevator.floor());
// 내려서 이동 안되는 케이스
elevator.out();
elevator.goTo(20);
assertEquals(30, elevator.floor());
// 안에서 엘레베이터를 타지만 최저층을 초과하는 경우
elevator.press();
elevator.in();
elevator.goTo(-11);
assertEquals(-10, elevator.floor());
// 안에서 엘레베이터를 타지만 최고층을 초과하는 경우
elevator.press();
elevator.in();
elevator.goTo(66);
assertEquals(65, elevator.floor());
}
}
}}}
Elevator.java ¶
public class Elevator { private int max; private int min; private int floor; private boolean inElevator; private boolean button; public Elevator(int i, int j) { max = i; min = j; floor = 1; inElevator = false; button = false; } public int floor() { return floor; } public void goTo(int i) { if(i <= max && i >= min && inElevator ){ floor = i; } else if (i < min){ floor = min; } else if (i > max){ floor = max; } } public void press() { button = true; } public void in() { if(button) { inElevator = true; button = false; } } public void out() { inElevator = false; } }
App.java (Test) ¶
import static org.junit.Assert.*; import org.junit.Test; public class App { @Test public void testElevator() { Elevator elevator = new Elevator(65, -10); // default 현재층 : 1 // 객체 생성 여부 assertNotNull(elevator); assertEquals(1, elevator.floor()); // 엘레베이터에 안탔으므로 이동이 안됨 elevator.goTo(30); assertEquals(1, elevator.floor()); // 버튼을 누르지 않으면 탈 수 없음. elevator.in(); elevator.goTo(20); assertEquals(1, elevator.floor()); // 버튼 눌러서 타서 이동한 케이스 elevator.press(); elevator.in(); elevator.goTo(30); assertEquals(30, elevator.floor()); // 내려서 이동 안되는 케이스 elevator.out(); elevator.goTo(20); assertEquals(30, elevator.floor()); // 안에서 엘레베이터를 타지만 최저층을 초과하는 경우 elevator.press(); elevator.in(); elevator.goTo(-11); assertEquals(-10, elevator.floor()); // 안에서 엘레베이터를 타지만 최고층을 초과하는 경우 elevator.press(); elevator.in(); elevator.goTo(66); assertEquals(65, elevator.floor()); } }