/Lib/test/test_nis.py
http://unladen-swallow.googlecode.com/ · Python · 43 lines · 32 code · 4 blank · 7 comment · 12 complexity · 7d258c1d9990c12b84e42ccef4600c9b MD5 · raw file
- from test import test_support
- import unittest
- import 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 TestSkipped 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()