From 7cdc2bdd0d13982256fb28f49696fa70baab7ed0 Mon Sep 17 00:00:00 2001 From: Hynek Schlawack Date: Tue, 17 Jul 2012 10:48:19 +0200 Subject: Fix context manager use in posixpath.join() tests The asserts were useless (and buggy). --- Lib/test/test_posixpath.py | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/Lib/test/test_posixpath.py b/Lib/test/test_posixpath.py index 54de0cf..1ec4a15 100644 --- a/Lib/test/test_posixpath.py +++ b/Lib/test/test_posixpath.py @@ -56,15 +56,18 @@ class PosixPathTest(unittest.TestCase): self.assertEqual(posixpath.join(b"/foo/", b"bar/", b"baz/"), b"/foo/bar/baz/") - with self.assertRaises(TypeError) as e: - posixpath.join(b'bytes', 'str') - self.assertIn("Can't mix strings and bytes", e.args[0]) - with self.assertRaises(TypeError) as e: - posixpath.join('str', b'bytes') - self.assertIn("Can't mix strings and bytes", e.args[0]) - with self.assertRaises(TypeError) as e: - posixpath.join('str', bytearray(b'bytes')) - self.assertIn("Can't mix strings and bytes", e.args[0]) + # Check for friendly str/bytes mixing message + for args in [[b'bytes', 'str'], + [bytearray(b'bytes'), 'str']]: + for _ in range(2): + with self.assertRaises(TypeError) as cm: + posixpath.join(*args) + self.assertEqual( + "Can't mix strings and bytes in path components.", + cm.exception.args[0] + ) + args.reverse() # check both orders + def test_split(self): self.assertEqual(posixpath.split("/foo/bar"), ("/foo", "bar")) -- cgit v0.12