]> granicus.if.org Git - python/commitdiff
Issue #10181: The decision was to raise a buffer error in memory_exit()
authorStefan Krah <skrah@bytereef.org>
Mon, 5 Mar 2012 09:45:31 +0000 (10:45 +0100)
committerStefan Krah <skrah@bytereef.org>
Mon, 5 Mar 2012 09:45:31 +0000 (10:45 +0100)
if the view has exported buffers. Make this official by uncommenting
a test case.

Lib/test/test_buffer.py

index e53246064e3140c4e7207f3b7e693e8fe37e418e..8a8d55db5b56347023ac1bf256de9b47ee7930a8 100644 (file)
@@ -3484,11 +3484,12 @@ class TestBufferProtocol(unittest.TestCase):
                         self.assertEqual(m3[2], ord(b'3'))
                         del m1, m2, m3
 
-        # XXX If m1 has exports, raise BufferError.
-        # x = bytearray(b'123')
-        # with memoryview(x) as m1:
-        #     ex = ndarray(m1)
-        #     m1[0] == ord(b'1')
+        # memoryview.release() fails if the view has exported buffers.
+        x = bytearray(b'123')
+        with self.assertRaises(BufferError):
+            with memoryview(x) as m:
+                ex = ndarray(m)
+                m[0] == ord(b'1')
 
     def test_memoryview_redirect(self):