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_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_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_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 add_operator(self): """ Starts a new operator and displays it in the list. """ # Start a new operator instance print('FINISH: Start a new operator') operator = Operator() operator.first_name = "" operator.family_name = "" operator.drone_license = 1 operator.rescue_endorsement = 1 operator.operations = 0 # Display the operator self.view_operator(operator, self._save_new_operator)
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_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_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_allocate_success(self): # Arrange dr = Drone("Test drone", class_type=1) op = Operator() op.first_name = "John" op.drone_license = 1 store = DroneStore() # Act act = store.allocate(dr, op) # Assert self.assertTrue(act.is_valid())
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_only_one_drone(self): # Arrange dr = Drone("Test drone", class_type=1) op = Operator() op.first_name = "John" op.drone_license = 1 op.drone = Drone("Yet another") store = DroneStore() # Act act = store.allocate(dr, op) # Assert self.assertFalse(act.is_valid()) self.assertIn("Operator can only control one drone", act.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_has_rescue_endorsement_success(self): # Arrange dr = Drone("Test drone", rescue=True) op = Operator() op.first_name = "John" op.drone_license = 1 op.rescue_endorsement = True store = DroneStore() # Act act = store.allocate(dr, op) # Assert self.assertTrue(act.is_valid())
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_has_rescue_endorsement(self): # Arrange dr = Drone("Test drone", rescue=True) op = Operator() op.first_name = "John" op.drone_license = 1 store = DroneStore() # Act act = store.allocate(dr, op) # Assert self.assertFalse(act.is_valid()) self.assertIn("Operator does not have rescue endorsement", act.messages)
def test_holds_correct_license(self): # Arrange dr = Drone("Test drone", class_type=2) op = Operator() op.first_name = "John" op.drone_license = 1 store = DroneStore() # Act act = store.allocate(dr, op) # Assert self.assertFalse(act.is_valid()) self.assertIn("Operator does not have correct drone license", act.messages)
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_commit(self): # Arrange dr = Drone("Test drone", class_type=1) op = Operator() op.first_name = "John" op.drone_license = 1 store = DroneStore() # Act act = store.allocate(dr, op) act.commit() # Assert self.assertEquals(dr.operator, op) self.assertEquals(op.drone, dr)
def edit_operator(self, event): # Retrieve the identifer of the drone item = self.tree.item(self.tree.focus()) operator = Operator() name = item['values'][0].split() operator.first_name = name[0] operator.last_name = name[1] operator.drone_license = item['values'][1] operator.rescue_endorsement = item['values'][2] operator.number_of_operations = item['values'][3] #,item['values'][1], item['values'][2], item['values'][3] # Display the drone self.view_operator(operator, self._update_operator)
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 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_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_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_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())