[pypy-svn] r5444 - pypy/trunk/src/pypy/tool/test

lac at codespeak.net lac at codespeak.net
Mon Jul 5 19:09:12 CEST 2004


Author: lac
Date: Mon Jul  5 19:09:05 2004
New Revision: 5444

Added:
   pypy/trunk/src/pypy/tool/test/test_utestconvert.py
   pypy/trunk/src/pypy/tool/test/test_utestconvert2.py
Log:
In the interest of 'eating your own dogfood' here are the unittests
factored out from utestconvert.py.  test_utestconvert.py doesn't use
unittest, but just uses asserts.  test_utestconvert2.py is the same
thing but uses unittest.  By the way, you cannot get test_utestconvert.py
by running utestconvert with input utestconvert2.py.  The tests
which are input to the tests, that need checking, get converted as well.
:-)


Added: pypy/trunk/src/pypy/tool/test/test_utestconvert.py
==============================================================================
--- (empty file)
+++ pypy/trunk/src/pypy/tool/test/test_utestconvert.py	Mon Jul  5 19:09:05 2004
@@ -0,0 +1,389 @@
+import autopath
+from pypy.tool.utestconvert import rewrite_utest
+import unittest
+
+class Testit(unittest.TestCase):
+    def test(self):
+
+        assert rewrite_utest("badger badger badger") == (
+                             "badger badger badger")
+
+        assert rewrite_utest(
+            "self.assertRaises(excClass, callableObj, *args, **kwargs)") == (
+            "raises(excClass, callableObj, *args, **kwargs)")
+
+        assert rewrite_utest("""
+            self.failUnlessRaises(TypeError, func, 42, **{'arg1': 23})
+            """) == ("""
+            raises(TypeError, func, 42, **{'arg1': 23})
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.assertRaises(TypeError,
+                              func,
+                              mushroom)
+            """
+            ) == (
+            """
+            raises(TypeError,
+                              func,
+                              mushroom)
+            """
+                          )
+
+        assert rewrite_utest("self.fail()") == "raise AssertionError"
+
+        assert rewrite_utest("self.fail('mushroom, mushroom')") == (
+                          "raise AssertionError, 'mushroom, mushroom'")
+
+        assert rewrite_utest("self.assert_(x)") == "assert x"
+
+        assert rewrite_utest("self.failUnless(func(x)) # XXX") == (
+                          "assert func(x) # XXX")
+
+        assert rewrite_utest(
+            """
+            self.assert_(1 + f(y)
+                         + z) # multiline, keep parentheses
+            """
+            ) == (
+            """
+            assert (1 + f(y)
+                         + z) # multiline, keep parentheses
+            """
+                          )
+
+        assert rewrite_utest("self.assert_(0, 'badger badger')") == (
+                          "assert 0, 'badger badger'")
+
+        assert rewrite_utest("self.assert_(0, '''badger badger''')") == (
+                          "assert 0, '''badger badger'''")
+
+        assert rewrite_utest(
+            r"""
+            self.assert_(0,
+                 'Meet the badger.\n')
+            """
+            ) == (
+            r"""
+            assert 0,(
+                 'Meet the badger.\n')
+            """
+                          )
+
+        assert rewrite_utest(
+            r"""
+            self.failIf(0 + 0
+                          + len('badger\n')
+                          + 0, '''badger badger badger badger
+                                 mushroom mushroom
+                                 Snake!  Ooh a snake!
+                              ''') # multiline, must move the parens
+            """
+            ) == (
+            r"""
+            assert not (0 + 0
+                          + len('badger\n')
+                          + 0), '''badger badger badger badger
+                                 mushroom mushroom
+                                 Snake!  Ooh a snake!
+                              ''' # multiline, must move the parens
+            """
+                          )
+
+        assert rewrite_utest("self.assertEquals(0, 0)") == (
+                          "assert 0 == 0")
+
+        assert rewrite_utest(
+            r"""
+            self.assertEquals(0,
+                 'Run away from the snake.\n')
+            """
+            ) == (
+            r"""
+            assert 0 == (
+                 'Run away from the snake.\n')
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.assertEquals(badger + 0
+                              + mushroom
+                              + snake, 0)
+            """
+            ) == (
+            """
+            assert (badger + 0
+                              + mushroom
+                              + snake) == 0
+            """
+                          )
+        
+        assert rewrite_utest(
+            """
+            self.assertNotEquals(badger + 0
+                              + mushroom
+                              + snake,
+                              mushroom
+                              - badger)
+            """
+            ) == (
+            """
+            assert (badger + 0
+                              + mushroom
+                              + snake) != (
+                              mushroom
+                              - badger)
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.assertEquals(badger(),
+                              mushroom()
+                              + snake(mushroom)
+                              - badger())
+            """
+            ) == (
+            """
+            assert badger() == (
+                              mushroom()
+                              + snake(mushroom)
+                              - badger())
+            """
+                         )
+
+        assert rewrite_utest("self.failIfEqual(0, 0)") == (
+                          "assert not 0 == 0")
+
+        assert rewrite_utest("self.failUnlessEqual(0, 0)") == (
+                          "assert not 0 != 0")
+
+        assert rewrite_utest(
+            """
+            self.failUnlessEqual(mushroom()
+                                 + mushroom()
+                                 + mushroom(), '''badger badger badger
+                                 badger badger badger badger
+                                 badger badger badger badger
+                                 ''') # multiline, must move the parens
+            """
+            ) == (
+            """
+            assert not (mushroom()
+                                 + mushroom()
+                                 + mushroom()) != '''badger badger badger
+                                 badger badger badger badger
+                                 badger badger badger badger
+                                 ''' # multiline, must move the parens
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.assertEquals('''snake snake snake
+                                 snake snake snake''', mushroom)
+            """
+            ) == (
+            """
+            assert '''snake snake snake
+                                 snake snake snake''' == mushroom
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.assertEquals(badger(),
+                              snake(), 'BAD BADGER')
+            """
+            ) == (
+            """
+            assert badger() == (
+                              snake()), 'BAD BADGER'
+            """
+                          )
+        
+        assert rewrite_utest(
+            """
+            self.assertNotEquals(badger(),
+                              snake()+
+                              snake(), 'POISONOUS MUSHROOM!\
+                              Ai! I ate a POISONOUS MUSHROOM!!')
+            """
+            ) == (
+            """
+            assert badger() != (
+                              snake()+
+                              snake()), 'POISONOUS MUSHROOM!\
+                              Ai! I ate a POISONOUS MUSHROOM!!'
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.assertEquals(badger(),
+                              snake(), '''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER'''
+                              )
+            """
+            ) == (
+            """
+            assert badger() == (
+                              snake()), '''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER'''
+                              
+            """
+                        )
+
+        assert rewrite_utest(
+            """
+            self.assertEquals('''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER''', '''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER''')
+            """
+            ) == (
+            """
+            assert '''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER''' == '''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER'''
+            """
+                        )
+
+        assert rewrite_utest(
+            """
+            self.assertEquals('''GOOD MUSHROOM
+                              GOOD MUSHROOM
+                              GOOD MUSHROOM''',
+                              '''GOOD MUSHROOM
+                              GOOD MUSHROOM
+                              GOOD MUSHROOM''',
+                              ''' FAILURE
+                              FAILURE
+                              FAILURE''')
+            """
+            ) == (
+            """
+            assert '''GOOD MUSHROOM
+                              GOOD MUSHROOM
+                              GOOD MUSHROOM''' == (
+                              '''GOOD MUSHROOM
+                              GOOD MUSHROOM
+                              GOOD MUSHROOM'''),(
+                              ''' FAILURE
+                              FAILURE
+                              FAILURE''')
+            """
+                        )
+
+
+        assert rewrite_utest(
+            """
+            self.assertAlmostEquals(first, second, 5, 'A Snake!')
+            """
+            ) == (
+            """
+            assert round(first - second, 5) == 0, 'A Snake!'
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.assertAlmostEquals(first, second, 120)
+            """
+            ) == (
+            """
+            assert round(first - second, 120) == 0
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.assertAlmostEquals(first, second)
+            """
+            ) == (
+            """
+            assert round(first - second, 7) == 0
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.assertAlmostEqual(first, second, 5, '''A Snake!
+            Ohh A Snake!  A Snake!!
+            ''')
+            """
+            ) == (
+            """
+            assert round(first - second, 5) == 0, '''A Snake!
+            Ohh A Snake!  A Snake!!
+            '''
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.assertNotAlmostEqual(first, second, 5, 'A Snake!')
+            """
+            ) == (
+            """
+            assert round(first - second, 5) != 0, 'A Snake!'
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.failIfAlmostEqual(first, second, 5, 'A Snake!')
+            """
+            ) == (
+            """
+            assert not round(first - second, 5) == 0, 'A Snake!'
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.failIfAlmostEqual(first, second, 5, 6, 7, 'Too Many Args')
+            """
+            ),
+            """
+            self.failIfAlmostEqual(first, second, 5, 6, 7, 'Too Many Args')
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+            self.failUnlessAlmostEquals(first, second, 5, 'A Snake!')
+            """
+            ) == (
+            """
+            assert not round(first - second, 5) != 0, 'A Snake!'
+            """
+                          )
+
+        assert rewrite_utest(
+            """
+              self.assertAlmostEquals(now do something reasonable ..()
+            oops, I am inside a comment as a ''' string, and the fname was
+            mentioned in passing, leaving us with something that isn't an
+            expression ... will this blow up?
+            """
+            ) == (
+            """
+              self.assertAlmostEquals(now do something reasonable ..()
+            oops, I am inside a comment as a ''' string, and the fname was
+            mentioned in passing, leaving us with something that isn't an
+            expression ... will this blow up?
+            """
+                          )
+                              
+if __name__ == '__main__':
+    unittest.main()

Added: pypy/trunk/src/pypy/tool/test/test_utestconvert2.py
==============================================================================
--- (empty file)
+++ pypy/trunk/src/pypy/tool/test/test_utestconvert2.py	Mon Jul  5 19:09:05 2004
@@ -0,0 +1,390 @@
+import autopath
+from pypy.tool.utestconvert import rewrite_utest
+import unittest
+
+class Testit(unittest.TestCase):
+    def test(self):
+        self.assertEquals(rewrite_utest("badger badger badger"),
+                          "badger badger badger")
+
+        self.assertEquals(rewrite_utest(
+            "self.assertRaises(excClass, callableObj, *args, **kwargs)"
+            ),
+            "raises(excClass, callableObj, *args, **kwargs)"
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.failUnlessRaises(TypeError, func, 42, **{'arg1': 23})
+            """
+            ),
+            """
+            raises(TypeError, func, 42, **{'arg1': 23})
+            """
+                          )
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertRaises(TypeError,
+                              func,
+                              mushroom)
+            """
+            ),
+            """
+            raises(TypeError,
+                              func,
+                              mushroom)
+            """
+                          )
+        self.assertEquals(rewrite_utest("self.fail()"), "raise AssertionError")
+        self.assertEquals(rewrite_utest("self.fail('mushroom, mushroom')"),
+                          "raise AssertionError, 'mushroom, mushroom'")
+        self.assertEquals(rewrite_utest("self.assert_(x)"), "assert x")
+        self.assertEquals(rewrite_utest("self.failUnless(func(x)) # XXX"),
+                          "assert func(x) # XXX")
+        
+        self.assertEquals(rewrite_utest(
+            """
+            self.assert_(1 + f(y)
+                         + z) # multiline, keep parentheses
+            """
+            ),
+            """
+            assert (1 + f(y)
+                         + z) # multiline, keep parentheses
+            """
+                          )
+
+        self.assertEquals(rewrite_utest("self.assert_(0, 'badger badger')"),
+                          "assert 0, 'badger badger'")
+
+        self.assertEquals(rewrite_utest("self.assert_(0, '''badger badger''')"),
+                          "assert 0, '''badger badger'''")
+
+        self.assertEquals(rewrite_utest(
+            r"""
+            self.assert_(0,
+                 'Meet the badger.\n')
+            """
+            ),
+            r"""
+            assert 0,(
+                 'Meet the badger.\n')
+            """
+                          )
+        
+        self.assertEquals(rewrite_utest(
+            r"""
+            self.failIf(0 + 0
+                          + len('badger\n')
+                          + 0, '''badger badger badger badger
+                                 mushroom mushroom
+                                 Snake!  Ooh a snake!
+                              ''') # multiline, must move the parens
+            """
+            ),
+            r"""
+            assert not (0 + 0
+                          + len('badger\n')
+                          + 0), '''badger badger badger badger
+                                 mushroom mushroom
+                                 Snake!  Ooh a snake!
+                              ''' # multiline, must move the parens
+            """
+                          )
+
+        self.assertEquals(rewrite_utest("self.assertEquals(0, 0)"),
+                          "assert 0 == 0")
+        
+        self.assertEquals(rewrite_utest(
+            r"""
+            self.assertEquals(0,
+                 'Run away from the snake.\n')
+            """
+            ),
+            r"""
+            assert 0 == (
+                 'Run away from the snake.\n')
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertEquals(badger + 0
+                              + mushroom
+                              + snake, 0)
+            """
+            ),
+            """
+            assert (badger + 0
+                              + mushroom
+                              + snake) == 0
+            """
+                          )
+                            
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertNotEquals(badger + 0
+                              + mushroom
+                              + snake,
+                              mushroom
+                              - badger)
+            """
+            ),
+            """
+            assert (badger + 0
+                              + mushroom
+                              + snake) != (
+                              mushroom
+                              - badger)
+            """
+                          )
+
+        self.assertEqual(rewrite_utest(
+            """
+            self.assertEquals(badger(),
+                              mushroom()
+                              + snake(mushroom)
+                              - badger())
+            """
+            ),
+            """
+            assert badger() == (
+                              mushroom()
+                              + snake(mushroom)
+                              - badger())
+            """
+                         )
+        self.assertEquals(rewrite_utest("self.failIfEqual(0, 0)"),
+                          "assert not 0 == 0")
+
+        self.assertEquals(rewrite_utest("self.failUnlessEqual(0, 0)"),
+                          "assert not 0 != 0")
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.failUnlessEqual(mushroom()
+                                 + mushroom()
+                                 + mushroom(), '''badger badger badger
+                                 badger badger badger badger
+                                 badger badger badger badger
+                                 ''') # multiline, must move the parens
+            """
+            ),
+            """
+            assert not (mushroom()
+                                 + mushroom()
+                                 + mushroom()) != '''badger badger badger
+                                 badger badger badger badger
+                                 badger badger badger badger
+                                 ''' # multiline, must move the parens
+            """
+                          )
+
+                                   
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertEquals('''snake snake snake
+                                 snake snake snake''', mushroom)
+            """
+            ),
+            """
+            assert '''snake snake snake
+                                 snake snake snake''' == mushroom
+            """
+                          )
+        
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertEquals(badger(),
+                              snake(), 'BAD BADGER')
+            """
+            ),
+            """
+            assert badger() == (
+                              snake()), 'BAD BADGER'
+            """
+                          )
+        
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertNotEquals(badger(),
+                              snake()+
+                              snake(), 'POISONOUS MUSHROOM!\
+                              Ai! I ate a POISONOUS MUSHROOM!!')
+            """
+            ),
+            """
+            assert badger() != (
+                              snake()+
+                              snake()), 'POISONOUS MUSHROOM!\
+                              Ai! I ate a POISONOUS MUSHROOM!!'
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertEquals(badger(),
+                              snake(), '''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER'''
+                              )
+            """
+            ),
+            """
+            assert badger() == (
+                              snake()), '''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER'''
+                              
+            """
+                        )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertEquals('''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER''', '''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER''')
+            """
+            ),
+            """
+            assert '''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER''' == '''BAD BADGER
+                              BAD BADGER
+                              BAD BADGER'''
+            """
+                        )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertEquals('''GOOD MUSHROOM
+                              GOOD MUSHROOM
+                              GOOD MUSHROOM''',
+                              '''GOOD MUSHROOM
+                              GOOD MUSHROOM
+                              GOOD MUSHROOM''',
+                              ''' FAILURE
+                              FAILURE
+                              FAILURE''')
+            """
+            ),
+            """
+            assert '''GOOD MUSHROOM
+                              GOOD MUSHROOM
+                              GOOD MUSHROOM''' == (
+                              '''GOOD MUSHROOM
+                              GOOD MUSHROOM
+                              GOOD MUSHROOM'''),(
+                              ''' FAILURE
+                              FAILURE
+                              FAILURE''')
+            """
+                        )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertAlmostEquals(first, second, 5, 'A Snake!')
+            """
+            ),
+            """
+            assert round(first - second, 5) == 0, 'A Snake!'
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertAlmostEquals(first, second, 120)
+            """
+            ),
+            """
+            assert round(first - second, 120) == 0
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertAlmostEquals(first, second)
+            """
+            ),
+            """
+            assert round(first - second, 7) == 0
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertAlmostEqual(first, second, 5, '''A Snake!
+            Ohh A Snake!  A Snake!!
+            ''')
+            """
+            ),
+            """
+            assert round(first - second, 5) == 0, '''A Snake!
+            Ohh A Snake!  A Snake!!
+            '''
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.assertNotAlmostEqual(first, second, 5, 'A Snake!')
+            """
+            ),
+            """
+            assert round(first - second, 5) != 0, 'A Snake!'
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.failIfAlmostEqual(first, second, 5, 'A Snake!')
+            """
+            ),
+            """
+            assert not round(first - second, 5) == 0, 'A Snake!'
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.failIfAlmostEqual(first, second, 5, 6, 7, 'Too Many Args')
+            """
+            ),
+            """
+            self.failIfAlmostEqual(first, second, 5, 6, 7, 'Too Many Args')
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+            self.failUnlessAlmostEquals(first, second, 5, 'A Snake!')
+            """
+            ),
+            """
+            assert not round(first - second, 5) != 0, 'A Snake!'
+            """
+                          )
+
+        self.assertEquals(rewrite_utest(
+            """
+              self.assertAlmostEquals(now do something reasonable ..()
+            oops, I am inside a comment as a ''' string, and the fname was
+            mentioned in passing, leaving us with something that isn't an
+            expression ... will this blow up?
+            """
+            ),
+            """
+              self.assertAlmostEquals(now do something reasonable ..()
+            oops, I am inside a comment as a ''' string, and the fname was
+            mentioned in passing, leaving us with something that isn't an
+            expression ... will this blow up?
+            """
+                          )
+            
+                              
+if __name__ == '__main__':
+    unittest.main()
+
+



More information about the Pypy-commit mailing list