def test_validate_row(self): # given record = Record('test|test2', {'size': 2}) expected_calls = [call(field, record) for field in record.get_fields()] validator = Validator() validator.validate_field = MagicMock(return_value=True) # when result = validator.validate_record(record) # then self.assertTrue(result) validator.validate_field.assert_has_calls(expected_calls) self.assertEqual(validator.validate_field.call_count, 2)
def test_validate_data(self): # given def return_value(data): if data.get_fields()[0].get_value() == 'test': return False else: return True validator = Validator() validator.validate_record = MagicMock(side_effect=return_value) data = Data(['test', 'test2']) expected_calls = [call(record) for record in data.get_records()] # when result = validator.validate_data(data) # then self.assertFalse(result) validator.validate_record.assert_has_calls(expected_calls) self.assertEqual(validator.validate_record.call_count, 2)