100 |
100 |
101 def format_problem_tuple(problem_tuple): |
101 def format_problem_tuple(problem_tuple): |
102 return problem_tuple[0] + ':' + str(problem_tuple[1]) |
102 return problem_tuple[0] + ':' + str(problem_tuple[1]) |
103 |
103 |
104 def run_unit_test_suite(): |
104 def run_unit_test_suite(): |
|
105 from argparse import ArgumentParser |
|
106 parser = ArgumentParser() |
|
107 parser.add_argument('-d', '--debug', action = 'store_true') |
|
108 args = parser.parse_args() |
105 config = load_config() |
109 config = load_config() |
106 test_suite = load_tests() |
110 test_suite = load_tests() |
107 num_tested = 0 |
111 num_tested = 0 |
108 num_passed = 0 |
112 num_passed = 0 |
109 all_problem_types = all_problem_type_names(test_suite) |
113 all_problem_types = all_problem_type_names(test_suite) |
115 unit_test_path, |
119 unit_test_path, |
116 config = config, |
120 config = config, |
117 test_suite = test_suite |
121 test_suite = test_suite |
118 ) |
122 ) |
119 except Exception as error: |
123 except Exception as error: |
120 print(str.format( |
124 if args.debug: |
121 'Error running {test_name}: {error}', |
125 raise |
122 test_name = unit_test_path.name, |
126 else: |
123 error = str(error), |
127 print(str.format( |
124 )) |
128 'Error running {test_name}: {error}', |
|
129 test_name = unit_test_path.name, |
|
130 error = str(error), |
|
131 )) |
125 else: |
132 else: |
126 print(str.format( |
133 print(str.format( |
127 '{name}: {verdict}', |
134 '{name}: {verdict}', |
128 name = unit_test_path.name, |
135 name = unit_test_path.name, |
129 verdict = ('FAILED', 'PASSED')[unit_test_report['passed']], |
136 verdict = ('FAILED', 'PASSED')[unit_test_report['passed']], |