def _check_list_of_Ts(self, func: callable, args: list, ret_type: type): """Check that func called with arguments args returns a value of type ret_type. """ result = checker_generic.returns_list_of_Ts(func, args, ret_type) self.assertTrue(result[0], result[1]) return result
def test07GetLowerResolution(self): """Function get_lower_resolution""" result = checker_generic.returns_list_of_Ts( elevation.get_lower_resolution, [[[1, 3, 4, 2], [2, 1, 1, 2], [4, 1, 1, 4], [3, 2, 1, 4]]], list) self.assertTrue(result[0], result[1]) self.assertTrue(result[1] != [], 'get_lower_resolution should return a non-empty list') msg = checker_generic.type_error_message('get_lower_resolution', 'List[List[int]]', result[1]) for sublist in result[1]: self.assertTrue( sublist != [], 'get_lower_resolution should return a list of non-empty list') self.assertTrue( checker_generic.returns_list_of_Ts(lambda x: x, [sublist], int)[0], msg)
def _returns_list_of_n_ints(self, func: callable, args: list, n: int): """Check that func(args) returns a list of n ints.""" print('\nChecking {}...'.format(func.__name__)) result = checker_generic.returns_list_of_Ts(func, args, int) self.assertTrue(result[0], result[1]) msg = checker_generic.type_error_message( func.__name__, 'list of {} ints'.format(n), result[1]) self.assertTrue(len(result[1]) == n, msg) for i in range(n): self.assertTrue(isinstance(result[1][i], int), msg) print(' check complete')