-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest_hw10.py
31 lines (27 loc) · 981 Bytes
/
test_hw10.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import unittest
from hw10 import Patient, PriorityQueue, EmergencyRoom
class TestEmergencyRoomSimulation(unittest.TestCase):
def test_patient_creation(self):
patient = Patient("1", 5)
self.assertEqual(patient.name, "1")
self.assertEqual(patient.severity, 5)
def test_priority_queue_push_pop(self):
queue = PriorityQueue()
patient1 = Patient("1", 5)
patient2 = Patient("2", 7)
queue.push(patient1)
queue.push(patient2)
self.assertEqual(queue.pop(), patient2)
self.assertEqual(queue.pop(), patient1)
def test_emergency_room_simulation(self):
er = EmergencyRoom()
patient1 = Patient("1", 5)
patient2 = Patient("2", 7)
er.admit_patient(patient1)
er.admit_patient(patient2)
er.treat_patient()
er.treat_patient()
with self.assertRaises(IndexError):
er.treat_patient()
if __name__ == '__main__':
unittest.main()