예제 #1
0
 def test_get_floor_prioritize_null_called_floor(self):
     lift = LiftLogic()
     self.assertEqual(None, lift.getFloor(1, None, None))
예제 #2
0
 def test_should_stop_for_both(self):
     lift = LiftLogic()
     self.assertEqual(True, lift.shouldStop(2, 2, [3, 2]))
예제 #3
0
 def test_should_not_stop(self):
     lift = LiftLogic()
     self.assertEqual(False, lift.shouldStop(3, 2, [1, 2]))
예제 #4
0
 def test_should_stop_for_asked_floor(self):
     lift = LiftLogic()
     self.assertEqual(True, lift.shouldStop(1, 1, []))
예제 #5
0
 def test_should_stop_for_called_floors(self):
     lift = LiftLogic()
     self.assertEqual(True, lift.shouldStop(1, None, [3, 1]))
예제 #6
0
 def test_getDirection_shoud_stay(self):
     lift = LiftLogic()
     self.assertEqual(0, lift.getDirection(1, 1, []))
예제 #7
0
 def test_getDirection_should_go_up(self):
     lift = LiftLogic()
     self.assertEqual(1, lift.getDirection(1, 5, []))
예제 #8
0
 def test_getFloor_prioritize_closest_floor_equal_distance_first_in_list_above(self):
     lift = LiftLogic()
     self.assertEqual(1, lift.getFloor(1, None, [3, 1]))
예제 #9
0
 def test_get_floor_prioritize_closest_floor_below(self):
     lift = LiftLogic()
     self.assertEqual(1, lift.getFloor(3, None, [1, 7]))
예제 #10
0
 def test_get_floor_prioritize_closest_floor_above(self):
     lift = LiftLogic()
     self.assertEqual(2, lift.getFloor(0, None, [-3, 2]))
예제 #11
0
 def test_get_floor_prioritize_called_floor(self):
     lift = LiftLogic()
     self.assertEqual(1, lift.getFloor(1, 1, [2]))
예제 #12
0
 def test_get_floor_prioritize_empty_list(self):
     lift = LiftLogic()
     self.assertEqual(None, lift.getFloor(1, None, []))