| from test import test_support | 
 | import unittest | 
 |  | 
 | nis = test_support.import_module('nis') | 
 |  | 
 | class NisTests(unittest.TestCase): | 
 |     def test_maps(self): | 
 |         try: | 
 |             maps = nis.maps() | 
 |         except nis.error, msg: | 
 |             # NIS is probably not active, so this test isn't useful | 
 |             if test_support.verbose: | 
 |                 print "Test Skipped:", msg | 
 |             # Can't raise SkipTest as regrtest only recognizes the exception | 
 |             #   import time. | 
 |             return | 
 |         try: | 
 |             # On some systems, this map is only accessible to the | 
 |             # super user | 
 |             maps.remove("passwd.adjunct.byname") | 
 |         except ValueError: | 
 |             pass | 
 |  | 
 |         done = 0 | 
 |         for nismap in maps: | 
 |             mapping = nis.cat(nismap) | 
 |             for k, v in mapping.items(): | 
 |                 if not k: | 
 |                     continue | 
 |                 if nis.match(k, nismap) != v: | 
 |                     self.fail("NIS match failed for key `%s' in map `%s'" % (k, nismap)) | 
 |                 else: | 
 |                     # just test the one key, otherwise this test could take a | 
 |                     # very long time | 
 |                     done = 1 | 
 |                     break | 
 |             if done: | 
 |                 break | 
 |  | 
 | def test_main(): | 
 |     test_support.run_unittest(NisTests) | 
 |  | 
 | if __name__ == '__main__': | 
 |     test_main() |