def test_check_path_type_fail(self): # This tests the class's ability to determine whether the correct # path types have been passed for a particular command. It test every # possible combination that is incorrect for every command. cmds = { 'cp': ['local', 'locallocal', 's3'], 'mv': ['local', 'locallocal', 's3'], 'rm': ['local', 'locallocal', 's3s3', 'locals3', 's3local'], 'ls': ['local', 'locallocal', 's3s3', 'locals3', 's3local'], 'sync': ['local', 'locallocal', 's3'], 'mb': ['local', 'locallocal', 's3s3', 'locals3', 's3local'], 'rb': ['local', 'locallocal', 's3s3', 'locals3', 's3local'] } s3_file = 's3://' + self.bucket + '/' + 'text1.txt' local_file = self.loc_files[0] combos = { 's3s3': [s3_file, s3_file], 's3local': [s3_file, local_file], 'locals3': [local_file, s3_file], 's3': [s3_file], 'local': [local_file], 'locallocal': [local_file, local_file] } for cmd in cmds.keys(): cmd_param = CommandParameters(cmd, {}, '') cmd_param.add_region(mock.Mock()) wrong_paths = cmds[cmd] for path_args in wrong_paths: with self.assertRaises(TypeError): cmd_param.check_path_type(combos[path_args])
def test_check_path_type_fail(self): # This tests the class's ability to determine whether the correct # path types have been passed for a particular command. It test every # possible combination that is incorrect for every command. cmds = {'cp': ['local', 'locallocal', 's3'], 'mv': ['local', 'locallocal', 's3'], 'rm': ['local', 'locallocal', 's3s3', 'locals3', 's3local'], 'ls': ['local', 'locallocal', 's3s3', 'locals3', 's3local'], 'sync': ['local', 'locallocal', 's3'], 'mb': ['local', 'locallocal', 's3s3', 'locals3', 's3local'], 'rb': ['local', 'locallocal', 's3s3', 'locals3', 's3local']} s3_file = 's3://' + self.bucket + '/' + 'text1.txt' local_file = self.loc_files[0] combos = {'s3s3': [s3_file, s3_file], 's3local': [s3_file, local_file], 'locals3': [local_file, s3_file], 's3': [s3_file], 'local': [local_file], 'locallocal': [local_file, local_file]} for cmd in cmds.keys(): cmd_param = CommandParameters(cmd, {}, '') cmd_param.add_region(mock.Mock()) wrong_paths = cmds[cmd] for path_args in wrong_paths: with self.assertRaises(TypeError): cmd_param.check_path_type(combos[path_args])
def test_check_src_path_pass(self): # This tests to see if all of the checks on the source path works. It # does so by testing if s3 objects and and prefixes exist as well as # local files and directories. All of these should not throw an # exception. s3_file = 's3://' + self.bucket + '/' + 'text1.txt' local_file = self.loc_files[0] s3_prefix = 's3://' + self.bucket local_dir = self.loc_files[3] # :var files: a list of tuples where the first element is a single # element list of file paths. The second element is a boolean # representing if the operation is a directory operation. files = [([s3_file], False), ([local_file], False), ([s3_prefix], True), ([local_dir], True)] parameters = {} for filename in files: parameters['dir_op'] = filename[1] cmd_parameter = CommandParameters('put', parameters, '') cmd_parameter.add_region(mock.Mock()) cmd_parameter.check_src_path(filename[0])
def test_check_src_path_pass(self): # This tests to see if all of the checks on the source path works. It # does so by testing if s3 objects and and prefixes exist as well as # local files and directories. All of these should not throw an # exception. s3_file = 's3://' + self.bucket + '/' + 'text1.txt' local_file = self.loc_files[0] s3_prefix = 's3://' + self.bucket local_dir = self.loc_files[3] # :var files: a list of tuples where the first element is a single # element list of file paths. The second element is a boolean # representing if the operation is a directory operation. files = [([s3_file], False), ([local_file], False), ([s3_prefix], True), ([local_dir], True)] parameters = {} for filename in files: parameters['dir_op'] = filename[1] cmd_parameter = CommandParameters('put', parameters, '') cmd_parameter.add_region(mock.Mock()) cmd_parameter.check_src_path(filename[0])