52 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
#!/usr/bin/env python
 | 
						|
 | 
						|
import sys
 | 
						|
import unittest
 | 
						|
import getopt
 | 
						|
use_x = True
 | 
						|
verbose = 1
 | 
						|
 | 
						|
try:
 | 
						|
	shortargs = 'hnv:'
 | 
						|
	longargs = 'help no-x verbose='
 | 
						|
	opts, args = getopt.getopt(sys.argv[1:], shortargs, longargs.split())
 | 
						|
except getopt.error, msg:
 | 
						|
	print msg
 | 
						|
	print 'for help use --help'
 | 
						|
	sys.exit(2)
 | 
						|
for o, a in opts:
 | 
						|
	if o in ('-h', '--help'):
 | 
						|
		print 'runtests [--help] [--no-x] [--verbose level]'
 | 
						|
		sys.exit()
 | 
						|
	elif o in ('-n', '--no-x'):
 | 
						|
		use_x = False
 | 
						|
	elif o in ('-v', '--verbose'):
 | 
						|
		try:
 | 
						|
			verbose = int(a)
 | 
						|
		except Exception:
 | 
						|
			print 'verbose must be a number >= 0'
 | 
						|
			sys.exit(2)
 | 
						|
 | 
						|
# new test modules need to be added manually
 | 
						|
modules = ( 'test_caps',
 | 
						|
				'test_dispatcher_nb',
 | 
						|
)
 | 
						|
 | 
						|
if use_x:
 | 
						|
	modules += ('test_misc_interface',
 | 
						|
					'test_roster',
 | 
						|
					'test_sessions',
 | 
						|
	)
 | 
						|
 | 
						|
nb_errors = 0
 | 
						|
nb_failures = 0
 | 
						|
 | 
						|
for mod in modules:
 | 
						|
	suite = unittest.defaultTestLoader.loadTestsFromName(mod)
 | 
						|
	result = unittest.TextTestRunner(verbosity=verbose).run(suite)
 | 
						|
	nb_errors += len(result.errors)
 | 
						|
	nb_failures += len(result.failures)
 | 
						|
 | 
						|
sys.exit(nb_errors + nb_failures)
 | 
						|
 | 
						|
# vim: se ts=3:
 |