mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2024-12-30 10:47:08 -06:00
cbca3bafe5
The make-test script now returns 1 in case that any of the test cases that were run failed.
59 lines
1.0 KiB
Python
Executable File
59 lines
1.0 KiB
Python
Executable File
#!/usr/bin/python
|
|
|
|
"""
|
|
Run IPA unit tests under multiple versions of Python (if present).
|
|
"""
|
|
|
|
import sys
|
|
import optparse
|
|
import os
|
|
from os import path
|
|
from subprocess import call
|
|
|
|
versions = ('2.4', '2.5', '2.6', '2.7')
|
|
python = '/usr/bin/python'
|
|
nose = '/usr/bin/nosetests'
|
|
ran = []
|
|
fail = []
|
|
|
|
cmd = [
|
|
nose,
|
|
'-v',
|
|
'--with-doctest',
|
|
'--doctest-tests',
|
|
'--exclude=plugins',
|
|
]
|
|
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)
|
|
for v in versions:
|
|
pver = python + v
|
|
if not path.isfile(pver):
|
|
continue
|
|
command = [pver] + cmd
|
|
print ' '.join(cmd)
|
|
if 0 != call(cmd):
|
|
fail.append(pver)
|
|
ran.append(pver)
|
|
|
|
|
|
print '=' * 70
|
|
for pver in ran:
|
|
if pver in fail:
|
|
print 'FAILED under %r' % pver
|
|
else:
|
|
print 'passed under %r' % pver
|
|
print ''
|
|
if fail:
|
|
print '** FAIL **'
|
|
sys.exit(1)
|
|
else:
|
|
print '** pass **'
|
|
sys.exit(0)
|