Skip to content

Commit bad1677

Browse files
committed
Test discovery
1 parent 29454ac commit bad1677

1 file changed

Lines changed: 26 additions & 20 deletions

File tree

Lines changed: 26 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,28 @@
11
# -*- coding: utf-8 -*-
22
import sys
33
import unittest
4+
import os
45

56
# unittest module expects argv to be set
67
sys.argv = ['']
78

8-
import npp_unit_tests.tests.ReplaceUTF8TestCase
9-
reload(npp_unit_tests.tests.ReplaceUTF8TestCase)
9+
(path, runTestsName) = os.path.split(__file__)
1010

11-
import npp_unit_tests.tests.ReplaceAnsiTestCase
12-
reload(npp_unit_tests.tests.ReplaceAnsiTestCase)
11+
test_suites = []
1312

14-
import npp_unit_tests.tests.ReplaceUTF8PythonFunction
15-
reload(npp_unit_tests.tests.ReplaceUTF8PythonFunction)
13+
for test_name in os.listdir(os.path.join(path, 'tests')):
14+
(test_name, ext) = os.path.splitext(test_name)
15+
if ext == '.py':
16+
test_module = reload(__import__('npp_unit_tests.tests.' + test_name))
17+
test_suite = getattr(test_module.tests, test_name)
18+
if hasattr(test_suite, 'suite'):
19+
test_suites.append(test_suite.suite)
1620

17-
alltests = unittest.TestSuite([npp_unit_tests.tests.ReplaceUTF8TestCase.suite,
18-
npp_unit_tests.tests.ReplaceAnsiTestCase.suite,
19-
npp_unit_tests.tests.ReplaceUTF8PythonFunction.suite])
21+
22+
alltests = unittest.TestSuite(test_suites)
23+
24+
console.show()
25+
console.clear()
2026

2127

2228
results = unittest.TestResult()
@@ -26,22 +32,22 @@
2632
# console.write('Tests Run: {} Errors: {} Failures: {}'.format(results.testRun, results.errors, results.failures))
2733

2834
def writeTestFailure(error):
29-
console.write('TEST: %s\n' % error[0])
30-
console.writeError(error[1])
31-
console.write('\n----------------------------\n')
35+
console.write('TEST: %s\n' % error[0])
36+
console.writeError(error[1])
37+
console.write('\n----------------------------\n')
3238

3339
if results.errors:
34-
for error in results.errors:
35-
writeTestFailure(error)
36-
40+
for error in results.errors:
41+
writeTestFailure(error)
42+
3743
if results.failures:
38-
for error in results.failures:
39-
writeTestFailure(error)
44+
for error in results.failures:
45+
writeTestFailure(error)
4046

4147
if results.errors or results.failures:
42-
console.writeError('Tests Run: {} Errors: {} Failures: {}\n'.format(results.testsRun, len(results.errors), len(results.failures)))
48+
console.writeError('Tests Run: {} Errors: {} Failures: {}\n'.format(results.testsRun, len(results.errors), len(results.failures)))
4349
else:
44-
console.write('Tests Run: {} Errors: {} Failures: {}\n'.format(results.testsRun, len(results.errors), len(results.failures)))
50+
console.write('Tests Run: {} Errors: {} Failures: {}\n'.format(results.testsRun, len(results.errors), len(results.failures)))
51+
4552

46-
console.show();
4753

0 commit comments

Comments
 (0)