Rev 5603: Change the per_transport tests to use .get_bytes() instead of .get().read(). in http://bazaar.launchpad.net/~jameinel/bzr/2.3-per-transport-tests

John Arbash Meinel john at arbash-meinel.com
Wed Jan 12 21:50:18 UTC 2011


At http://bazaar.launchpad.net/~jameinel/bzr/2.3-per-transport-tests

------------------------------------------------------------
revno: 5603
revision-id: john at arbash-meinel.com-20110112215012-t0txn194567c9xj7
parent: pqm at pqm.ubuntu.com-20110112194804-4wkdy5dj69vcmqv8
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: 2.3-per-transport-tests
timestamp: Wed 2011-01-12 15:50:12 -0600
message:
  Change the per_transport tests to use .get_bytes() instead of .get().read().
  
  The .get().read() was racy, since files weren't guaranteed to be closed, etc.
  We've had get_bytes() forever. Use it.
-------------- next part --------------
=== modified file 'bzrlib/tests/per_transport.py'
--- a/bzrlib/tests/per_transport.py	2011-01-10 22:20:12 +0000
+++ b/bzrlib/tests/per_transport.py	2011-01-12 21:50:12 +0000
@@ -101,8 +101,8 @@
         self.overrideEnv('BZR_NO_SMART_VFS', None)
 
     def check_transport_contents(self, content, transport, relpath):
-        """Check that transport.get(relpath).read() == content."""
-        self.assertEqualDiff(content, transport.get(relpath).read())
+        """Check that transport.get_bytes(relpath) == content."""
+        self.assertEqualDiff(content, transport.get_bytes(relpath))
 
     def test_ensure_base_missing(self):
         """.ensure_base() should create the directory if it doesn't exist"""
@@ -256,7 +256,7 @@
         handle = t.open_write_stream('foo')
         try:
             handle.write('b')
-            self.assertEqual('b', t.get('foo').read())
+            self.assertEqual('b', t.get_bytes('foo'))
         finally:
             handle.close()
 
@@ -268,7 +268,11 @@
         try:
             handle.write('b')
             self.assertEqual('b', t.get_bytes('foo'))
-            self.assertEqual('b', t.get('foo').read())
+            f = t.get('foo')
+            try:
+                self.assertEqual('b', f.read())
+            finally:
+                f.close()
         finally:
             handle.close()
 
@@ -640,7 +644,7 @@
             self.build_tree(files, transport=transport_from)
             self.assertEqual(4, transport_from.copy_to(files, transport_to))
             for f in files:
-                self.check_transport_contents(transport_to.get(f).read(),
+                self.check_transport_contents(transport_to.get_bytes(f),
                                               transport_from, f)
 
         t = self.get_transport()
@@ -669,7 +673,7 @@
         files = ['a', 'b', 'c', 'd']
         t.copy_to(iter(files), temp_transport)
         for f in files:
-            self.check_transport_contents(temp_transport.get(f).read(),
+            self.check_transport_contents(temp_transport.get_bytes(f),
                                           t, f)
         del temp_transport
 



More information about the bazaar-commits mailing list