[Python-checkins] r52539 - in python/trunk/Lib/test: output/test_nis test_nis.py

georg.brandl python-checkins at python.org
Sun Oct 29 20:24:43 CET 2006


Author: georg.brandl
Date: Sun Oct 29 20:24:43 2006
New Revision: 52539

Removed:
   python/trunk/Lib/test/output/test_nis
Modified:
   python/trunk/Lib/test/test_nis.py
Log:
Convert test_nis to unittest.



Deleted: /python/trunk/Lib/test/output/test_nis
==============================================================================
--- /python/trunk/Lib/test/output/test_nis	Sun Oct 29 20:24:43 2006
+++ (empty file)
@@ -1,2 +0,0 @@
-test_nis
-nis.maps()

Modified: python/trunk/Lib/test/test_nis.py
==============================================================================
--- python/trunk/Lib/test/test_nis.py	(original)
+++ python/trunk/Lib/test/test_nis.py	Sun Oct 29 20:24:43 2006
@@ -1,39 +1,41 @@
-from test.test_support import verbose, TestFailed, TestSkipped
+from test.test_support import verbose, run_unittest
+import unittest
 import nis
 
-print 'nis.maps()'
-try:
-    maps = nis.maps()
-except nis.error, msg:
-    # NIS is probably not active, so this test isn't useful
-    if verbose:
-        raise TestFailed, msg
-    # only do this if running under the regression suite
-    raise TestSkipped, msg
+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 verbose:
+                self.fail("(failing because of verbose mode) %s" % msg)
+            return
+        try:
+            # On some systems, this map is only accessible to the
+            # super user
+            maps.remove("passwd.adjunct.byname")
+        except ValueError:
+            pass
 
-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
 
-done = 0
-for nismap in maps:
-    if verbose:
-        print nismap
-    mapping = nis.cat(nismap)
-    for k, v in mapping.items():
-        if verbose:
-            print '    ', k, v
-        if not k:
-            continue
-        if nis.match(k, nismap) != v:
-            print "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():
+    run_unittest(NisTests)
+
+if __name__ == '__main__':
+    test_main()


More information about the Python-checkins mailing list