diff options
author | Florent Xicluna <florent.xicluna@gmail.com> | 2010-04-02 18:52:12 (GMT) |
---|---|---|
committer | Florent Xicluna <florent.xicluna@gmail.com> | 2010-04-02 18:52:12 (GMT) |
commit | 41fe6155394edf0ef65d125b27ceb8d1e37f72d3 (patch) | |
tree | 68af315f367bba93ba4d7d370e755bccd79c047f /Lib/test/test_contextlib.py | |
parent | 1bfd0cc5d40018a6dd9f279d6d7acb829c76cc8f (diff) | |
download | cpython-41fe6155394edf0ef65d125b27ceb8d1e37f72d3.zip cpython-41fe6155394edf0ef65d125b27ceb8d1e37f72d3.tar.gz cpython-41fe6155394edf0ef65d125b27ceb8d1e37f72d3.tar.bz2 |
(partially)
Merged revisions 79534,79537,79539,79558,79606 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r79534 | florent.xicluna | 2010-03-31 23:21:54 +0200 (mer, 31 mar 2010) | 2 lines
Fix test for xml.etree when using a non-ascii path. And use check_warnings instead of catch_warnings.
........
r79537 | florent.xicluna | 2010-03-31 23:40:32 +0200 (mer, 31 mar 2010) | 2 lines
Fix typo
........
r79539 | florent.xicluna | 2010-04-01 00:01:03 +0200 (jeu, 01 avr 2010) | 2 lines
Replace catch_warnings with check_warnings when it makes sense. Use assertRaises context manager to simplify some tests.
........
r79558 | florent.xicluna | 2010-04-01 20:17:09 +0200 (jeu, 01 avr 2010) | 2 lines
#7092: Fix some -3 warnings, and fix Lib/platform.py when the path contains a double-quote.
........
r79606 | florent.xicluna | 2010-04-02 19:26:42 +0200 (ven, 02 avr 2010) | 2 lines
Backport some robotparser test and skip the test if the external resource is not available.
........
Diffstat (limited to 'Lib/test/test_contextlib.py')
-rw-r--r-- | Lib/test/test_contextlib.py | 41 |
1 files changed, 12 insertions, 29 deletions
diff --git a/Lib/test/test_contextlib.py b/Lib/test/test_contextlib.py index 1d3bd90..c733bca 100644 --- a/Lib/test/test_contextlib.py +++ b/Lib/test/test_contextlib.py @@ -1,7 +1,5 @@ """Unit tests for contextlib.py, and other context managers.""" - -import os import sys import tempfile import unittest @@ -9,6 +7,7 @@ import threading from contextlib import * # Tests __all__ from test import support + class ContextManagerTestCase(unittest.TestCase): def test_contextmanager_plain(self): @@ -33,16 +32,12 @@ class ContextManagerTestCase(unittest.TestCase): yield 42 finally: state.append(999) - try: + with self.assertRaises(ZeroDivisionError): with woohoo() as x: self.assertEqual(state, [1]) self.assertEqual(x, 42) state.append(x) raise ZeroDivisionError() - except ZeroDivisionError: - pass - else: - self.fail("Expected ZeroDivisionError") self.assertEqual(state, [1, 42, 999]) def test_contextmanager_no_reraise(self): @@ -130,14 +125,11 @@ class ClosingTestCase(unittest.TestCase): state.append(1) x = C() self.assertEqual(state, []) - try: + with self.assertRaises(ZeroDivisionError): with closing(x) as y: self.assertEqual(x, y) - 1/0 - except ZeroDivisionError: - self.assertEqual(state, [1]) - else: - self.fail("Didn't raise ZeroDivisionError") + 1 / 0 + self.assertEqual(state, [1]) class FileContextTestCase(unittest.TestCase): @@ -150,20 +142,14 @@ class FileContextTestCase(unittest.TestCase): f.write("Booh\n") self.assertTrue(f.closed) f = None - try: + with self.assertRaises(ZeroDivisionError): with open(tfn, "r") as f: self.assertFalse(f.closed) self.assertEqual(f.read(), "Booh\n") - 1/0 - except ZeroDivisionError: - self.assertTrue(f.closed) - else: - self.fail("Didn't raise ZeroDivisionError") + 1 / 0 + self.assertTrue(f.closed) finally: - try: - os.remove(tfn) - except os.error: - pass + support.unlink(tfn) class LockContextTestCase(unittest.TestCase): @@ -172,14 +158,11 @@ class LockContextTestCase(unittest.TestCase): with lock: self.assertTrue(locked()) self.assertFalse(locked()) - try: + with self.assertRaises(ZeroDivisionError): with lock: self.assertTrue(locked()) - 1/0 - except ZeroDivisionError: - self.assertFalse(locked()) - else: - self.fail("Didn't raise ZeroDivisionError") + 1 / 0 + self.assertFalse(locked()) def testWithLock(self): lock = threading.Lock() |