def test_commit(self): #Arrange op = Operator() op.first_name = "monty" op.family_name = "python" op.date_of_birth = date(1990, 9, 30) op.drone_license = 2 op.rescue_endorsement = True op.operations = 5 opStore = OperatorStore() action = opStore.add(op) #Act if action.is_valid(): action.commit() else: for i in action.messages: print(i) #Assert listy = [] for i in opStore.list_all(): listy.append(opStore.get(i)) self.assertIn(op, listy)
def test_add_operator_age_wrong(self): #arrange operatorstore = OperatorStore() operator = Operator() operator.date_of_birth = date(1998, 2, 3) operator.drone_license = 2 operator.operations = 6 #act actual = operatorstore.add(operator) #assert self.assertIn("First name is required", actual.messages)
def test_add_operator_birth_wrong(self): #arrange operatorstore = OperatorStore() operator = Operator() operator.first_name = "Cindy" operator.drone_license = 2 operator.operations = 6 #act actual = operatorstore.add(operator) #assert self.assertIn("Date of birth is required", actual.messages)
def test_add_operator_drone_license(self): #arrange operatorstore = OperatorStore() operator = Operator() operator.first_name = "Cindy" operator.date_of_birth = date(1998, 2, 3) operator.operations = 6 #act actual = operatorstore.add(operator) #assert self.assertIn("Drone license is required", actual.messages)
def test_add_operator_pass_all_rules(self): #arrange operatorstore = OperatorStore() operator = Operator() operator.first_name = "Cindy" operator.date_of_birth = date(1998, 2, 3) operator.drone_license = 2 operator.operations = 6 #act actual = operatorstore.add(operator) #assert self.assertTrue(len(actual.messages) == 0)
def test_fail_license(self): # Arrange op = Operator() op.first_name = "Matthew" op.date_of_birth = date(1995, 12, 25) store = OperatorStore() # Act act = store.add(op) # Assert self.assertFalse(act.is_valid())
def test_fail_dob(self): # Arrange op = Operator() op.first_name = "Matthew" op.drone_license = 1 store = OperatorStore() # Act act = store.add(op) # Assert self.assertFalse(act.is_valid())
def test_add_operator_rescue_5(self): #arrange operatorstore = OperatorStore() operator = Operator() operator.first_name = "Cindy" operator.date_of_birth = date(1998, 2, 3) operator.drone_license = 2 operator.operations = 2 #act actual = operatorstore.add(operator) #assert self.assertIn("More than 5 rescue operations is required", actual.messages)
def test_add_operator_successfully(self): #arrange operatorstore = OperatorStore() operator = Operator() operator.first_name = "Cindy" operator.date_of_birth = date(1998, 2, 3) operator.drone_license = 2 operator.operations = 6 #act actual = operatorstore.add(operator) #assert if actual.is_valid(): actual.commit() self.assertIn(operator.id, operatorstore._operators)
def test_add_operator_age_more_than_20(self): #arrange operatorstore = OperatorStore() operator = Operator() operator.first_name = "Cindy" operator.date_of_birth = date(2000, 2, 3) operator.drone_license = 2 operator.operations = 6 #act actual = operatorstore.add(operator) #assert self.assertIn( "Operator should be at least twenty to hold a class 2 license", actual.messages)
def test_fail_endorsement(self): # Arrange op = Operator() op.first_name = "Matthew" op.date_of_birth = date(1995, 12, 25) op.drone_license = 1 op.rescue_endorsement = True store = OperatorStore() # Act act = store.add(op) # Assert self.assertFalse(act.is_valid())
def test_pass_all(self): # Arrange op = Operator() op.first_name = "Matthew" op.date_of_birth = date(1995, 12, 25) op.drone_license = 2 op.rescue_endorsement = True op.operations = 5 store = OperatorStore() # Act act = store.add(op) # Assert self.assertTrue(act.is_valid())
def test_add_operator_exception(self): #arrange operatorstore = OperatorStore() operator = Operator() operator.first_name = "Cindy" operator.date_of_birth = date(1998, 2, 3) operator.drone_license = 2 operator.operations = 6 #act actual = operatorstore.add(operator) #assert if actual.is_valid(): actual.commit() with self.assertRaises(Exception): actual.commit()
def test_add(self): # Arrange op = Operator() op.first_name = "Matthew" op.date_of_birth = date(1995, 12, 25) op.drone_license = 2 op.rescue_endorsement = True op.operations = 5 store = OperatorStore() # Act act = store.add(op) act.commit() # Assert self.assertEqual(store.get(1), op)
def test_operatorInvalidDroneLicense(self): #Arrange op = Operator() op.first_name = "monty" op.date_of_birth = date(1990, 9, 30) op.rescue_endorsement = True op.operations = 5 opStore = OperatorStore() #Act action = opStore.add(op) #Assert self.assertIsNone(op.drone_license) self.assertFalse(action.is_valid()) self.assertIn("Drone license is required", action.messages)
def __init__(self, conn): # Initialise the stores self.drones = DroneStore(conn) self.operators = OperatorStore(conn) self._conn = conn # Initialise the GUI window self.root = tk.Tk() self.root.title('Drone Allocation and Localisation') frame = tk.Frame(self.root) frame.pack(padx=10, pady=10) # Add in the buttons drone_button = tk.Button(frame, text="View Drones", command=self.view_drones, width=40, padx=5, pady=5) drone_button.pack(side=tk.TOP) operator_button = tk.Button(frame, text="View Operators", command=self.view_operators, width=40, padx=5, pady=5) operator_button.pack(side=tk.TOP) exit_button = tk.Button(frame, text="Exit System", command=quit, width=40, padx=5, pady=5) exit_button.pack(side=tk.TOP)
def test_operatorStore_added_successfully(self): #Arrange op = Operator() op.first_name = "Afzal" op.family_name = "Rahim" dob = date(1974, 9, 12) op.date_of_birth = dob op.drone_license = 2 op.rescue_endorsement = True op.operations = 6 store = OperatorStore() #Act act = store.add(op) if act.is_valid(): act.commit() #Assert #self.assertTrue(store.get(op.id), True, "Operator has not been added successfully") self.assertTrue(store.get(op.id))
def test_operatorInvalidEndorsement(self): #Arrange op = Operator() op.first_name = "monty" op.date_of_birth = date(1990, 9, 30) op.drone_license = 2 op.rescue_endorsement = True op.operations = 4 opStore = OperatorStore() #Act action = opStore.add(op) #Assert if (op.rescue_endorsement): self.assertFalse(op.operations >= 5) self.assertFalse(action.is_valid()) self.assertIn( "Operator should have been involved in five prior rescue operations to hold a rescue drone endorsement", action.messages)
def test_operator_validation(self): #Arrange op = Operator() op.first_name = "Afzal" op.family_name = "Rahim" dob = date(1974, 9, 12) op.date_of_birth = dob op.drone_license = 2 op.rescue_endorsement = True op.operations = 6 store = OperatorStore() #Act act = store.add(op) #Assert if act.is_valid(): act.commit() #print(act.messages) #print(store._operators) self.assertTrue(act.is_valid())
def test_operatorInvalidDL2(self): #Arrange op = Operator() op.first_name = "monty" op.rescue_endorsement = True op.operations = 5 op.date_of_birth = date(2015, 9, 30) op.drone_license = 2 opStore = OperatorStore() #Act action = opStore.add(op) #Assert if (op.drone_license == 2): self.assertFalse( date.today() - op.date_of_birth >= timedelta(7300)) self.assertFalse(action.is_valid()) self.assertIn( "Operator should be at least twenty to hold a class 2 license", action.messages)
def test_dobError(self): #Arrange op = Operator() op.first_name = "Afzal" op.family_name = "Rahim" #dob = date(1974, 9, 12) #op.date_of_birth = dob op.drone_license = 2 op.rescue_endorsement = True op.operations = 6 store = OperatorStore() #action = OperatorAction(op, store._add(op)) #Act act = store.add(op) #Assert if act.is_valid(): act.commit() else: #self.assertIn('Date of birth is required', act.messages) self.assertEqual('Date of birth is required' in act.messages, False, 'Date of birth is required.')
def test_rescueEndorsement_validity(self): #Arrange op = Operator() op.first_name = "Afzal" op.family_name = "Rahim" dob = date(1974, 9, 12) op.date_of_birth = dob op.drone_license = 2 op.rescue_endorsement = True op.operations = 2 store = OperatorStore() #action = OperatorAction(op, store._add(op)) #Act act = store.add(op) #Assert if act.is_valid(): act.commit() else: #self.assertIn('The operator must have been involved in five prior rescue operations.', act.messages) self.assertEqual('The operator must have been involved in five prior rescue operations' in act.messages, False, 'The operator must have been involved in five prior rescue operations.')
def test_droneLicence_validity(self): #Arrange op = Operator() op.first_name = "Afzal" op.family_name = "Rahim" dob = date(2017, 9, 12) op.date_of_birth = dob op.drone_license = 2 op.rescue_endorsement = True op.operations = 6 store = OperatorStore() #action = OperatorAction(op, store._add(op)) #Act act = store.add(op) #Assert if act.is_valid(): act.commit() else: #self.assertIn('Operator should be at least twenty to hold a class 2 license', act.messages) self.assertEqual('Operator should be at least twenty to hold a class 2 license' in act.messages, False, 'Operator should be at least twenty to hold a class 2 license')
def test_operatorValidity(self): #Arrange op = Operator() op.first_name = "monty" op.date_of_birth = date(1990, 9, 30) op.drone_license = 2 op.rescue_endorsement = True op.operations = 5 opStore = OperatorStore() #Act action = opStore.add(op) #Assert self.assertIsNotNone(op.first_name) self.assertIsNotNone(op.date_of_birth) self.assertIsNotNone(op.drone_license) if (op.drone_license == 2): self.assertTrue(date.today() - op.date_of_birth >= timedelta(7300)) if (op.rescue_endorsement): self.assertTrue(op.operations >= 5) self.assertTrue(action.is_valid())