Add ipa-run-tests command

Part of the work for: https://fedorahosted.org/freeipa/ticket/3654
This commit is contained in:
Petr Viktorin 2013-05-22 11:08:10 +02:00 committed by Martin Kosek
parent c60142efda
commit e87807d379
3 changed files with 39 additions and 0 deletions

View File

@ -814,6 +814,7 @@ fi
%dir %{python_sitelib}/ipatests/test_ipaserver/install %dir %{python_sitelib}/ipatests/test_ipaserver/install
%dir %{python_sitelib}/ipatests/test_pkcs10 %dir %{python_sitelib}/ipatests/test_pkcs10
%dir %{python_sitelib}/ipatests/test_xmlrpc %dir %{python_sitelib}/ipatests/test_xmlrpc
%{_bindir}/ipa-run-tests
%{python_sitelib}/ipatests-*.egg-info %{python_sitelib}/ipatests-*.egg-info
%endif # ! %{ONLY_CLIENT} %endif # ! %{ONLY_CLIENT}

37
ipatests/ipa-run-tests Executable file
View File

@ -0,0 +1,37 @@
#!/usr/bin/python
"""Nose wrapper for running an installed (not in-tree) IPA test suite
Any command-line arguments are passed directly to Nose.
Note that any relative paths given will be based on the ipatests module's path
"""
import sys
import os
from os import path
import ipatests
nose = '/usr/bin/nosetests'
cmd = [
nose,
'-v',
'--with-doctest',
'--doctest-tests',
'--exclude=plugins',
'--where', os.path.dirname(ipatests.__file__),
]
cmd += sys.argv[1:]
# This must be set so ipalib.api gets initialized property for tests:
os.environ['IPA_UNIT_TEST_MODE'] = 'cli_test'
if not path.isfile(nose):
print 'ERROR: need %r' % nose
sys.exit(100)
print ' '.join(cmd)
sys.exit(call(cmd))

View File

@ -74,6 +74,7 @@ def setup_package():
"ipatests.test_ipaserver.install", "ipatests.test_ipaserver.install",
"ipatests.test_pkcs10", "ipatests.test_pkcs10",
"ipatests.test_xmlrpc"], "ipatests.test_xmlrpc"],
scripts=['ipa-run-tests'],
package_data = { package_data = {
'ipatests.test_install': ['*.update'], 'ipatests.test_install': ['*.update'],
'ipatests.test_pkcs10': ['*.csr']} 'ipatests.test_pkcs10': ['*.csr']}