def test_missing_dir(self):
     expected = {
         'type': 'COMMAND',
         'type_data': 'process_log',
         'data': {'error': "Output 'src' set to a missing directory: 'dir1'."},
     }
     self.assertEqual(save_dir_list('src', 'dir1', 'dir 2', 'dir/3'), expected)
 def test_files_invalid_format(self):
     expected = {
         'type': 'COMMAND',
         'type_data': 'process_log',
         'data': {'error': "Only one colon ':' allowed in dir-refs specification."},
     }
     self.assertEqual(
         save_dir_list('src', 'dir1:ref1.bar:ref2.bar', 'dir2'), expected
     )
 def test_dir_with_missing_refs(self, isdir_mock, path_mock):
     expected = {
         'type': 'COMMAND',
         'type_data': 'process_log',
         'data': {
             'error': "Output 'src' set to missing references: 'ref1.gz, ref2.gz'."
         },
     }
     self.assertEqual(save_dir_list('src', 'dir:ref1.gz,ref2.gz'), expected)
 def test_dir_with_refs(self, isdir_mock, path_mock, copy_mock, dir_size_mock):
     expected = {
         'type': 'COMMAND',
         'type_data': 'update_output',
         'data': {
             'src': [
                 {'dir': 'dir1', 'size': 1, 'refs': ['ref1.gz', 'ref2.gz']},
                 {'dir': 'dir2', 'size': 2},
             ]
         },
     }
     self.assertEqual(save_dir_list('src', 'dir1:ref1.gz,ref2.gz', 'dir2'), expected)
 def test_dirs(self, isdir_mock, path_mock, copy_mock, dir_size_mock):
     expected = {
         'type': 'COMMAND',
         'type_data': 'update_output',
         'data': {
             'src': [
                 {'dir': 'dir1', 'size': 1},
                 {'dir': 'dir 2', 'size': 2},
                 {'dir': 'dir/3', 'size': 3},
             ]
         },
     }
     self.assertEqual(save_dir_list('src', 'dir1', 'dir 2', 'dir/3'), expected)
 def test_files_invalid_format(self):
     self.assertEqual(
         save_dir_list('src', 'dir1:ref1.bar:ref2.bar', 'dir2'),
         '{"proc.error": "Only one colon \':\' allowed in dir-refs specification."}'
     )
 def test_missing_dir(self):
     self.assertEqual(save_dir_list('src', 'dir1', 'dir 2', 'dir/3'),
                      '{"proc.error": "Output \'src\' set to a missing directory: \'dir1\'."}')
 def test_dir_with_missing_refs(self, isdir_mock):
     self.assertEqual(
         save_dir_list('src', 'dir:ref1.gz,ref2.gz'),
         '{"proc.error": "Output \'src\' set to missing references: \'ref1.gz, ref2.gz\'."}'
     )
 def test_dirs(self, isdir_mock):
     self.assertEqual(save_dir_list('src', 'dir1', 'dir 2', 'dir/3'),
                      '{"src": [{"dir": "dir1"}, {"dir": "dir 2"}, {"dir": "dir/3"}]}')
 def test_dir_with_refs(self, isfile_mock):
     self.assertJSONEqual(
         save_dir_list('src', 'dir1:ref1.gz,ref2.gz', 'dir2'),
         '{"src": [{"dir": "dir1", "refs": ["ref1.gz", "ref2.gz"]}, {"dir": "dir2"}]}'
     )
 def test_files_invalid_format(self):
     self.assertEqual(
         save_dir_list('src', 'dir1:ref1.bar:ref2.bar', 'dir2'),
         '{"proc.error": "Only one colon \':\' allowed in dir-refs specification."}'
     )
 def test_dir_with_missing_refs(self, isdir_mock):
     self.assertEqual(
         save_dir_list('src', 'dir:ref1.gz,ref2.gz'),
         '{"proc.error": "Output \'src\' set to missing references: \'ref1.gz, ref2.gz\'."}'
     )
 def test_missing_dir(self):
     self.assertEqual(
         save_dir_list('src', 'dir1', 'dir 2', 'dir/3'),
         '{"proc.error": "Output \'src\' set to a missing directory: \'dir1\'."}'
     )
 def test_dir_with_refs(self, isfile_mock):
     self.assertJSONEqual(
         save_dir_list('src', 'dir1:ref1.gz,ref2.gz', 'dir2'),
         '{"src": [{"dir": "dir1", "refs": ["ref1.gz", "ref2.gz"]}, {"dir": "dir2"}]}'
     )
 def test_dirs(self, isdir_mock):
     self.assertEqual(
         save_dir_list('src', 'dir1', 'dir 2', 'dir/3'),
         '{"src": [{"dir": "dir1"}, {"dir": "dir 2"}, {"dir": "dir/3"}]}')