def test_sysoutput(): '''test command-line output with respect to CLI arguments''' testargs = ['', '--csv', '-o', '/root/forbidden/'] with patch.object(sys, 'argv', testargs): args = cli.parse_args(testargs) filepath, destdir = cli_utils.determine_output_path( args, args.outputdir, '') assert len(filepath) >= 10 and filepath.endswith('.csv') assert destdir == '/root/forbidden/' assert cli_utils.check_outputdir_status(args.outputdir) is False testargs = ['', '--xml', '-o', '/tmp/you-touch-my-tralala'] with patch.object(sys, 'argv', testargs): args = cli.parse_args(testargs) assert cli_utils.check_outputdir_status(args.outputdir) is True # test fileslug for name filepath, destdir = cli_utils.determine_output_path(args, args.outputdir, '', new_filename='AAZZ') assert filepath.endswith('AAZZ.xml') # test json output args2 = args args2.xml, args2.json = False, True args2 = cli.map_args(args2) filepath2, destdir2 = cli_utils.determine_output_path(args, args.outputdir, '', new_filename='AAZZ') assert filepath2.endswith('AAZZ.json') # test directory counter assert cli_utils.determine_counter_dir('testdir', 0) == 'testdir/1' # test file writing testargs = ['', '--csv', '-o', '/dev/null/'] with patch.object(sys, 'argv', testargs): args = cli.parse_args(testargs) result = 'DADIDA' cli_utils.write_result(result, args) # process with no counter assert cli_utils.process_result('DADIDA', args, None, None, DEFAULT_CONFIG) is None # test keeping dir structure testargs = ['', '-i', 'myinputdir/', '-o', 'test/', '--keep-dirs'] with patch.object(sys, 'argv', testargs): args = cli.parse_args(testargs) filepath, destdir = cli_utils.determine_output_path( args, 'testfile.txt', '') assert filepath == 'test/testfile.txt' # test hash as output file name assert args.hash_as_name is False args.hash_as_name = True assert args.keep_dirs is True args.keep_dirs = False filepath, destdir = cli_utils.determine_output_path( args, 'testfile.txt', '') assert filepath == 'test/2jmj7l5rSw0yVb-vlWAYkK-YBwk.txt'
def test_sysoutput(): '''test command-line output with respect to CLI arguments''' testargs = ['', '--csv', '-o', '/root/forbidden/'] with patch.object(sys, 'argv', testargs): args = cli.parse_args(testargs) filepath, destdir = cli_utils.determine_output_path(args, args.outputdir) print(filepath) assert len(filepath) >= 10 and filepath.endswith('.csv') assert destdir == '/root/forbidden/' assert cli_utils.check_outputdir_status(args.outputdir) is False testargs = ['', '--xml', '-o', '/tmp/you-touch-my-tralala'] with patch.object(sys, 'argv', testargs): args = cli.parse_args(testargs) assert cli_utils.check_outputdir_status(args.outputdir) is True # test fileslug for name filepath, destdir = cli_utils.determine_output_path(args, args.outputdir, new_filename='AAZZ') assert filepath.endswith('AAZZ.xml') # test directory counter assert cli_utils.determine_counter_dir('testdir', 0) == 'testdir/1' # test file writing testargs = ['', '--csv', '-o', '/dev/null/'] with patch.object(sys, 'argv', testargs): args = cli.parse_args(testargs) result = 'DADIDA' cli_utils.write_result(result, args) # process with no counter assert cli_utils.process_result('DADIDA', args, None, None) is None # test keeping dir structure testargs = ['', '-i', 'myinputdir/', '-o', 'test/', '--keep-dirs'] with patch.object(sys, 'argv', testargs): args = cli.parse_args(testargs) filepath, destdir = cli_utils.determine_output_path(args, 'testfile.txt') print(filepath, destdir) assert filepath == 'test/testfile.txt'