Skip to content

Commit cabfa43

Browse files
author
Ram Rachum
committed
-
1 parent 57bb07d commit cabfa43

File tree

12 files changed

+138
-16
lines changed

12 files changed

+138
-16
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Copyright 2009-2011 Ram Rachum.
22
# This program is distributed under the LGPL2.1 license.
33

4-
'''Testing package for `garlicsim`.'''
4+
'''Scripts for `test_garlicsim`.'''
55

66
from . import _test_garlicsim

garlicsim/test_garlicsim/scripts/_test_garlicsim.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,11 @@
33
# Copyright 2009-2011 Ram Rachum.
44
# This program is distributed under the LGPL2.1 license.
55

6-
'''
7-
This module defines the `` class.
6+
'''Script for launching `garlicsim` tests when installed in local Python.'''
87

9-
See its documentation for more information.
10-
'''
118

129
import test_garlicsim
1310

11+
1412
if __name__ == '__main__':
1513
test_garlicsim.invoke_nose()

garlicsim_lib/MANIFEST.in

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
recursive-include garlicsim_lib *
22
recursive-exclude garlicsim_lib *.pyc
3-
recursive-exclude garlicsim_lib *.pyo
3+
recursive-exclude garlicsim_lib *.pyo
4+
recursive-include test_garlicsim_lib *
5+
recursive-exclude test_garlicsim_lib *.pyc
6+
recursive-exclude test_garlicsim_lib *.pyo

garlicsim_lib/setup.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ def get_packages():
9797
author_email='cool-rr@cool-rr.com',
9898
url='http://garlicsim.org',
9999
packages=get_packages(),
100+
scripts=['test_garlicsim_lib/scripts/_test_garlicsim_lib.py'],
100101
license='LGPL v2.1',
101102
long_description = my_long_description,
102103
classifiers = my_classifiers,

garlicsim_lib/test_garlicsim_lib/__init__.py

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,15 @@
33

44
'''Testing package for `garlicsim_lib`.'''
55

6+
import sys
7+
import os.path
8+
9+
import nose
10+
11+
12+
if nose.__versioninfo__ < (1, 0, 0):
13+
raise Exception('Nose version 1.0.0 or higher is required to run tests.')
14+
615

716
def __bootstrap():
817
'''
@@ -65,4 +74,21 @@ def exists(module_name):
6574
sys.path.append(garlicsim_wx_candidate_path)
6675

6776

68-
__bootstrap()
77+
__bootstrap()
78+
79+
80+
_default_nose_arguments = [
81+
'--verbosity=3',
82+
'--detailed-errors',
83+
'--with-xunit',
84+
'--cover-erase',
85+
'--cover-package=garlicsim,garlicsim_lib,garlicsim_wx,'
86+
'test_garlicsim,test_garlicsim_lib,test_garlicsim_wx',
87+
'--exe', # Needed because `setup.py` makes our test modules executable
88+
]
89+
90+
91+
def invoke_nose(arguments=_default_nose_arguments):
92+
nose.run(defaultTest='test_garlicsim_lib',
93+
argv=([sys.argv[0]] + arguments))
94+
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Copyright 2009-2011 Ram Rachum.
2+
# This program is distributed under the LGPL2.1 license.
3+
4+
'''Scripts for `test_garlicsim_lib`.'''
5+
6+
from . import _test_garlicsim_lib
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#!/usr/bin/env python
2+
3+
# Copyright 2009-2011 Ram Rachum.
4+
# This program is distributed under the LGPL2.1 license.
5+
6+
'''
7+
Script for launching `garlicsim_lib` tests when installed in local Python.
8+
'''
9+
10+
import test_garlicsim_lib
11+
12+
13+
if __name__ == '__main__':
14+
test_garlicsim_lib.invoke_nose()

garlicsim_wx/MANIFEST.in

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
recursive-include garlicsim_wx *
22
recursive-exclude garlicsim_wx *.pyc
3-
recursive-exclude garlicsim_wx *.pyc
3+
recursive-exclude garlicsim_wx *.pyo
4+
recursive-include test_garlicsim_wx *
5+
recursive-exclude test_garlicsim_wx *.pyc
6+
recursive-exclude test_garlicsim_wx *.pyo

garlicsim_wx/setup.py

Lines changed: 34 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,41 @@ def get_garlicsim_wx_packages():
3232
'''
3333
Get all the packages in `garlicsim_wx`.
3434
35-
This returns an answer in the form: `['garlicsim_wx.frame',
36-
'garlicsim_wx.widgets', 'garlicsim_wx.misc', ...]`
35+
Returns something like:
36+
37+
['garlicsim_wx', 'garlicsim_wx.app', 'garlicsim_wx.widgets', ... ]
38+
3739
'''
38-
return ['garlicsim_wx.' + p for p
39-
in setuptools.find_packages('./garlicsim_wx')] + \
40+
return ['garlicsim_wx.' + p for p in
41+
setuptools.find_packages('./garlicsim_wx')] + \
4042
['garlicsim_wx']
4143

4244

43-
garlicsim_wx_packages = get_garlicsim_wx_packages()
45+
def get_test_garlicsim_wx_packages():
46+
'''
47+
Get all the packages in `test_garlicsim_wx`.
48+
49+
Returns something like:
50+
51+
['test_garlicsim_wx', 'test_garlicsim_wx.test_import', ...]
52+
53+
'''
54+
return ['test_garlicsim_wx.' + p for p in
55+
setuptools.find_packages('./test_garlicsim_wx')] + \
56+
['test_garlicsim_wx']
57+
58+
59+
def get_packages():
60+
'''
61+
Get all the packages in `garlicsim_wx` and `test_garlicsim_wx`.
62+
63+
Returns something like:
64+
65+
['test_garlicsim_wx', 'garlicsim_wx', 'garlicsim_wx.app',
66+
'test_garlicsim_wx.test_import', ... ]
67+
68+
'''
69+
return get_garlicsim_wx_packages() + get_test_garlicsim_wx_packages()
4470

4571

4672
my_long_description = \
@@ -87,8 +113,9 @@ def get_garlicsim_wx_packages():
87113
'author': 'Ram Rachum',
88114
'author_email': 'cool-rr@cool-rr.com',
89115
'url': 'http://garlicsim.org',
90-
'packages': garlicsim_wx_packages,
91-
'scripts': ['garlicsim_wx/scripts/GarlicSim.py'],
116+
'packages': get_packages(),
117+
'scripts': ['garlicsim_wx/scripts/GarlicSim.py',
118+
'test_garlicsim_wx/scripts/_test_garlicsim_wx.py'],
92119
'license': 'Proprietary',
93120
'long_description': my_long_description,
94121
'classifiers': my_classifiers,

garlicsim_wx/test_garlicsim_wx/__init__.py

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,15 @@
33

44
'''Testing package for `garlicsim_wx`.'''
55

6+
import sys
7+
import os.path
8+
9+
import nose
10+
11+
12+
if nose.__versioninfo__ < (1, 0, 0):
13+
raise Exception('Nose version 1.0.0 or higher is required to run tests.')
14+
615

716
def __bootstrap():
817
'''
@@ -65,4 +74,20 @@ def exists(module_name):
6574
sys.path.append(garlicsim_wx_candidate_path)
6675

6776

68-
__bootstrap()
77+
__bootstrap()
78+
79+
80+
_default_nose_arguments = [
81+
'--verbosity=3',
82+
'--detailed-errors',
83+
'--with-xunit',
84+
'--cover-erase',
85+
'--cover-package=garlicsim,garlicsim_lib,garlicsim_wx,'
86+
'test_garlicsim,test_garlicsim_lib,test_garlicsim_wx',
87+
'--exe', # Needed because `setup.py` makes our test modules executable
88+
]
89+
90+
91+
def invoke_nose(arguments=_default_nose_arguments):
92+
nose.run(defaultTest='test_garlicsim_wx', argv=([sys.argv[0]] + arguments))
93+

0 commit comments

Comments
 (0)