2
# File created on 30 Mar 2010
3
from __future__ import division
5
__author__ = "Greg Caporaso"
6
__copyright__ = "Copyright 2011, The QIIME Project"
7
__credits__ = ["Greg Caporaso", "Kyle Bittinger", "Jai Ram Rideout"]
10
__maintainer__ = "Greg Caporaso"
11
__email__ = "gregcaporaso@gmail.com"
12
__status__ = "Release"
14
from shutil import rmtree
16
from os.path import exists, join, getsize
17
from cogent.util.unit_test import TestCase, main
18
from cogent.util.misc import remove_files
19
from qiime.util import (load_qiime_config,
23
from qiime.parse import parse_qiime_parameters
24
from qiime.test import (initiate_timeout,
27
from qiime.workflow.util import (call_commands_serially,
30
from qiime.workflow.downstream import run_beta_diversity_through_plots
33
class WorkflowTests(TestCase):
37
self.test_data = get_test_data_fps()
38
self.files_to_remove = []
39
self.dirs_to_remove = []
41
# Create example output directory
42
tmp_dir = get_qiime_temp_dir()
43
self.test_out = get_tmp_filename(tmp_dir=tmp_dir,
44
prefix='core_qiime_analyses_test_',
46
result_constructor=str)
47
self.dirs_to_remove.append(self.test_out)
48
create_dir(self.test_out)
50
self.qiime_config = load_qiime_config()
51
self.params = parse_qiime_parameters({})
58
remove_files(self.files_to_remove)
59
# remove directories last, so we don't get errors
60
# trying to remove files which may be in the directories
61
for d in self.dirs_to_remove:
65
def test_unsupported_options_handled_nicely(self):
66
"""WorkflowError raised on unsupported option """
67
self.params['beta_diversity'] = {'blah':"something-broken"}
68
self.assertRaises(WorkflowError,
69
run_beta_diversity_through_plots,
70
self.test_data['biom'][0],
71
self.test_data['map'][0],
73
call_commands_serially,
76
tree_fp=self.test_data['tree'][0],
78
status_update_callback=no_status_updates)
80
# Check that the log file is created and has size > 0
81
log_fp = glob(join(self.test_out,'log*.txt'))[0]
82
self.assertTrue(getsize(log_fp) > 0)
84
if __name__ == "__main__":