Issue #10212: Support new buffer interface for struct.unpack and
cStringIO
diff --git a/Lib/test/test_struct.py b/Lib/test/test_struct.py
index c8dc6f1..f1b5d9a 100644
--- a/Lib/test/test_struct.py
+++ b/Lib/test/test_struct.py
@@ -496,6 +496,17 @@
 
             self.test_unpack_from(cls=buffer)
 
+    def test_unpack_with_memoryview(self):
+        with check_py3k_warnings(("buffer.. not supported in 3.x",
+                                  DeprecationWarning)):
+            # SF bug 1563759: struct.unpack doesn't support buffer protocol objects
+            data1 = memoryview('\x12\x34\x56\x78')
+            for data in [data1,]:
+                value, = struct.unpack('>I', data)
+                self.assertEqual(value, 0x12345678)
+
+            self.test_unpack_from(cls=memoryview)
+
     def test_bool(self):
         class ExplodingBool(object):
             def __nonzero__(self):