diff options
author | Ezio Melotti <ezio.melotti@gmail.com> | 2011-12-02 16:22:52 (GMT) |
---|---|---|
committer | Ezio Melotti <ezio.melotti@gmail.com> | 2011-12-02 16:22:52 (GMT) |
commit | 6cc5bf765688fc1fa6bc7b634562c411e6495fde (patch) | |
tree | b4c27010eb3c8428eff4eb71fe7bdddad1cceb6b /Lib | |
parent | 71bca3495d975baec43215e9cfcc3d0142194ccb (diff) | |
download | cpython-6cc5bf765688fc1fa6bc7b634562c411e6495fde.zip cpython-6cc5bf765688fc1fa6bc7b634562c411e6495fde.tar.gz cpython-6cc5bf765688fc1fa6bc7b634562c411e6495fde.tar.bz2 |
#8414: add more tests for "assert". Initial patch by Gregory Nofi.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_grammar.py | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/Lib/test/test_grammar.py b/Lib/test/test_grammar.py index 329b258..268a633 100644 --- a/Lib/test/test_grammar.py +++ b/Lib/test/test_grammar.py @@ -493,13 +493,35 @@ class GrammarTests(unittest.TestCase): assert 1, 1 assert lambda x:x assert 1, lambda x:x+1 + + try: + assert True + except AssertionError as e: + self.fail("'assert True' should not have raised an AssertionError") + + try: + assert True, 'this should always pass' + except AssertionError as e: + self.fail("'assert True, msg' should not have " + "raised an AssertionError") + + # these tests fail if python is run with -O, so check __debug__ + @unittest.skipUnless(__debug__, "Won't work if __debug__ is False") + def testAssert2(self): try: assert 0, "msg" except AssertionError as e: self.assertEqual(e.args[0], "msg") else: - if __debug__: - self.fail("AssertionError not raised by assert 0") + self.fail("AssertionError not raised by assert 0") + + try: + assert False + except AssertionError as e: + self.assertEqual(len(e.args), 0) + else: + self.fail("AssertionError not raised by 'assert False'") + ### compound_stmt: if_stmt | while_stmt | for_stmt | try_stmt | funcdef | classdef # Tested below |