def test_reinterpret_signed_unsigned(self):
        mem = IndirectMemory2D.create_memory(rows=1, cols=1, format='b', readonly=False)
        memview = memoryview(mem)
        memview[0,0] = -1      
        del memview

        mem.reinterpret_data('B')
        memview=memoryview(mem)
        self.assertEqual(memview[0,0], 255)
    def test_reinterpret_locked(self):
        mem = IndirectMemory2D.create_memory(rows=1, cols=1, format='b', readonly=True)
        memview = memoryview(mem)
        # ok, because the same
        mem.reinterpret_data('b')
        self.assertTrue(True)
        #not ok
        with self.assertRaises(BufferError) as context:
            mem.reinterpret_data('B')

        self.assertEqual("buffer is locked", context.exception.args[0])
 def test_readonly_copy_from(self):      
     mem  = IndirectMemory2D.create_memory(rows=1, cols=2, format='B', readonly=True)
     mem2 = IndirectMemory2D.create_memory(rows=1, cols=2, format='B', readonly=False)
     with self.assertRaises(BufferError) as context:
         mem.copy_from(mem2)
     self.assertEqual("copying to readonly buffer", context.exception.args[0])
 def test_shape(self):
     mem = IndirectMemory2D.create_memory(rows=42, cols=21, format='b', readonly=False)
     shape = mem.shape
     self.assertEqual(len(shape), 2)
     self.assertEqual(shape[0],42)
     self.assertEqual(shape[1],21)
 def test_copy_to_indirect_memory(self):
     mem  = IndirectMemory2D.create_memory(rows=42, cols=21, format='i', readonly=False)
     mem2 = IndirectMemory2D.create_memory(rows=42, cols=21, format='i', readonly=False)
     memoryview(mem2)[15,2] = 42
     mem2.copy_to(mem)
     self.assertEqual(memoryview(mem)[15,2], 42)
 def test_get_format(self):
     mem = IndirectMemory2D.create_memory(rows=22, cols=33, format='i', readonly=True)
     self.assertEqual(mem.get_format(), b'i')
 def test_diff_itemsize_with_cast_to(self):
     mem  = IndirectMemory2D.create_memory(rows=1, cols=2, format='B', readonly=False)
     mem2 = IndirectMemory2D.create_memory(rows=1, cols=2, format='i', readonly=False)
     with self.assertRaises(BufferError) as context:
         mem.copy_to(mem2, cast=True)
     self.assertEqual("different itemsizes", context.exception.args[0])  
 def test_diff_formats_with_cast_to(self):
     mem  = IndirectMemory2D.create_memory(rows=1, cols=2, format='B', readonly=False)
     mem2 = IndirectMemory2D.create_memory(rows=1, cols=2, format='b', readonly=False)
     mem.copy_to(mem2, cast=True)
     self.assertTrue(True)
 def test_diff_formats_without_cast_to(self):
     mem  = IndirectMemory2D.create_memory(rows=1, cols=2, format='B', readonly=False)
     mem2 = IndirectMemory2D.create_memory(rows=1, cols=2, format='b', readonly=False)
     with self.assertRaises(BufferError) as context:
         mem.copy_to(mem2)
     self.assertEqual("different formats", context.exception.args[0])
Ejemplo n.º 10
0
 def test_copy_to_wrong_shape_rows(self):      
     mem  = IndirectMemory2D.create_memory(rows=1, cols=2, format='B', readonly=False)
     mem2 = IndirectMemory2D.create_memory(rows=2, cols=2, format='B', readonly=False)
     with self.assertRaises(BufferError) as context:
         mem.copy_to(mem2)
     self.assertEqual("different shapes", context.exception.args[0])
Ejemplo n.º 11
0
 def test_copy_to_wrong_dim(self):      
     mem  = IndirectMemory2D.create_memory(rows=1, cols=2, format='B', readonly=False)
     mem2 = bytearray(b'a')
     with self.assertRaises(BufferError) as context:
         mem.copy_to(mem2)
     self.assertEqual("wrong number of dimensions: expected 2, received 1", context.exception.args[0])