|
6 | 6 | sys.path.append(os.path.dirname(os.path.realpath(__file__)) + "/../src") |
7 | 7 |
|
8 | 8 | import pygame |
9 | | -from config import passenger_display_buffer, passenger_size, station_color, station_size |
| 9 | +from config import ( |
| 10 | + passenger_display_buffer, |
| 11 | + passenger_max_wait_time_ms, |
| 12 | + passenger_size, |
| 13 | + station_color, |
| 14 | + station_size, |
| 15 | +) |
10 | 16 | from entity.get_entity import get_metros |
11 | 17 | from entity.metro import Metro |
12 | 18 | from entity.passenger import Passenger |
@@ -96,6 +102,28 @@ def test_station_unlock_blink_hides_shape_during_off_phase(self): |
96 | 102 | station.draw(self.screen, current_time_ms=200) |
97 | 103 | station.shape.draw.assert_not_called() |
98 | 104 |
|
| 105 | + def test_station_draw_hides_warning_passenger_during_off_phase(self): |
| 106 | + station = Station(Circle(station_color, station_size), Point(0, 0)) |
| 107 | + passenger = Passenger(Circle((0, 0, 0), 3)) |
| 108 | + passenger.wait_ms = passenger_max_wait_time_ms - 5_000 |
| 109 | + station.add_passenger(passenger) |
| 110 | + passenger.destination_shape.draw = MagicMock() |
| 111 | + |
| 112 | + station.draw( |
| 113 | + self.screen, |
| 114 | + current_time_ms=0, |
| 115 | + passenger_max_wait_time_ms=passenger_max_wait_time_ms, |
| 116 | + ) |
| 117 | + passenger.destination_shape.draw.assert_called_once() |
| 118 | + |
| 119 | + passenger.destination_shape.draw.reset_mock() |
| 120 | + station.draw( |
| 121 | + self.screen, |
| 122 | + current_time_ms=250, |
| 123 | + passenger_max_wait_time_ms=passenger_max_wait_time_ms, |
| 124 | + ) |
| 125 | + passenger.destination_shape.draw.assert_not_called() |
| 126 | + |
99 | 127 |
|
100 | 128 | if __name__ == "__main__": |
101 | 129 | unittest.main() |
0 commit comments