Example #1
0
    def testWriteByte(self):
        data = Marshal.AllocHGlobal(1)

        CPyMarshal.WriteByte(data, 0)
        self.assertEquals(Marshal.ReadByte(data), 0, "wrong")

        CPyMarshal.WriteByte(data, 255)
        self.assertEquals(Marshal.ReadByte(data), 255, "wrong")

        Marshal.FreeHGlobal(data)
Example #2
0
    def testZero(self):
        bufferlen = 200
        zerolen = 173

        data = Marshal.AllocHGlobal(bufferlen)
        this = data
        for _ in xrange(bufferlen):
            CPyMarshal.WriteByte(this, 255)
            this = OffsetPtr(this, 1)

        CPyMarshal.Zero(data, zerolen)

        this = data
        for i in xrange(bufferlen):
            actual = CPyMarshal.ReadByte(this)
            expected = (255, 0)[i < zerolen]
            self.assertEquals(
                actual, expected,
                "wrong value at %d (%d, %d)" % (i, actual, expected))
            this = OffsetPtr(this, 1)

        Marshal.FreeHGlobal(data)