import HEAD into svn+ssh://svn.samba.org/home/svn/samba/trunk
[metze/old/v3-2-winbind-ndr.git] / source / stf / pythoncheck.py
1 #! /usr/bin/python
2
3 # Comfychair test cases for Samba python extensions
4
5 # Copyright (C) 2003 by Tim Potter <tpot@samba.org>
6
7 # This program is free software; you can redistribute it and/or
8 # modify it under the terms of the GNU General Public License as
9 # published by the Free Software Foundation; either version 2 of the
10 # License, or (at your option) any later version.
11
12 # This program is distributed in the hope that it will be useful, but
13 # WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 # General Public License for more details.
16
17 # You should have received a copy of the GNU General Public License
18 # along with this program; if not, write to the Free Software
19 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20 # USA
21
22 """These tests are run by Samba's "make check"."""
23
24 import sys, comfychair
25
26 class ImportTest(comfychair.TestCase):
27     """Check that all modules can be imported without error."""
28     def runtest(self):
29         python_modules = ['spoolss', 'lsa', 'samr', 'winbind', 'winreg',
30                           'srvsvc', 'tdb', 'smb', 'tdbpack']
31         for m in python_modules:
32             try:
33                 __import__('samba.%s' % m)
34             except ImportError, msg:
35                 self.log(str(msg))
36                 self.fail('error importing %s module' % m)
37
38 tests = [ImportTest]
39
40 if __name__ == '__main__':
41     # Some magic to repend build directory to python path so we see the
42     # objects we have built and not previously installed stuff.
43     from distutils.util import get_platform
44     from os import getcwd
45     sys.path.insert(0, '%s/build/lib.%s-%s' %
46                     (getcwd(), get_platform(), sys.version[0:3]))
47
48     comfychair.main(tests)