diff options
Diffstat (limited to 'lldb/test/python_api/sbdata/TestSBData.py')
-rw-r--r-- | lldb/test/python_api/sbdata/TestSBData.py | 49 |
1 files changed, 43 insertions, 6 deletions
diff --git a/lldb/test/python_api/sbdata/TestSBData.py b/lldb/test/python_api/sbdata/TestSBData.py index 36dbfd3a4dd..9d5b5c06765 100644 --- a/lldb/test/python_api/sbdata/TestSBData.py +++ b/lldb/test/python_api/sbdata/TestSBData.py @@ -215,7 +215,7 @@ class SBDataAPICase(TestBase): # check the new API calls introduced per LLVM bugzilla enhancement request # 11619 (Allow creating SBData values from arrays or primitives in Python) - data2 = process.GetDataFromCString('hello!') + data2 = lldb.SBData.CreateDataFromCString(process.GetByteOrder(),process.GetAddressByteSize(),'hello!') self.assertTrue(data2.GetUnsignedInt8(error,0) == 104, 'h == 104') self.assertTrue(data2.GetUnsignedInt8(error,1) == 101, 'e == 101') self.assertTrue(data2.GetUnsignedInt8(error,2) == 108, 'l == 108') @@ -224,35 +224,72 @@ class SBDataAPICase(TestBase): self.assertTrue(data2.GetUnsignedInt8(error,5) == 33, '! == 33') self.assertTrue(data2.GetUnsignedInt8(error,6) == 0, 'binary 0 terminator') - data2 = process.GetDataFromUnsignedInt64Array([1,2,3,4,5]) + data2 = lldb.SBData.CreateDataFromUInt64Array(process.GetByteOrder(),process.GetAddressByteSize(),[1,2,3,4,5]) self.assertTrue(data2.GetUnsignedInt64(error,0) == 1, 'data2[0] = 1') self.assertTrue(data2.GetUnsignedInt64(error,8) == 2, 'data2[1] = 2') self.assertTrue(data2.GetUnsignedInt64(error,16) == 3, 'data2[2] = 3') self.assertTrue(data2.GetUnsignedInt64(error,24) == 4, 'data2[3] = 4') self.assertTrue(data2.GetUnsignedInt64(error,32) == 5, 'data2[4] = 5') - data2 = process.GetDataFromSignedInt32Array([2, -2]) + data2 = lldb.SBData.CreateDataFromSInt32Array(process.GetByteOrder(),process.GetAddressByteSize(),[2, -2]) self.assertTrue(data2.GetSignedInt32(error,0) == 2, 'signed32 data2[0] = 2') self.assertTrue(data2.GetSignedInt32(error,4) == -2, 'signed32 data2[1] = -2') - data2.Append(process.GetDataFromSignedInt64Array([2, -2])) + data2.Append(lldb.SBData.CreateDataFromSInt64Array(process.GetByteOrder(),process.GetAddressByteSize(),[2, -2])) self.assertTrue(data2.GetSignedInt32(error,0) == 2, 'signed32 data2[0] = 2') self.assertTrue(data2.GetSignedInt32(error,4) == -2, 'signed32 data2[1] = -2') self.assertTrue(data2.GetSignedInt64(error,8) == 2, 'signed64 data2[0] = 2') self.assertTrue(data2.GetSignedInt64(error,16) == -2, 'signed64 data2[1] = -2') - data2 = process.GetDataFromUnsignedInt32Array([1,2,3,4,5]) + data2 = lldb.SBData.CreateDataFromUInt32Array(process.GetByteOrder(),process.GetAddressByteSize(),[1,2,3,4,5]) self.assertTrue(data2.GetUnsignedInt32(error,0) == 1, '32-bit data2[0] = 1') self.assertTrue(data2.GetUnsignedInt32(error,4) == 2, '32-bit data2[1] = 2') self.assertTrue(data2.GetUnsignedInt32(error,8) == 3, '32-bit data2[2] = 3') self.assertTrue(data2.GetUnsignedInt32(error,12) == 4, '32-bit data2[3] = 4') self.assertTrue(data2.GetUnsignedInt32(error,16) == 5, '32-bit data2[4] = 5') - data2 = process.GetDataFromDoubleArray([3.14,6.28,2.71]) + data2 = lldb.SBData.CreateDataFromDoubleArray(process.GetByteOrder(),process.GetAddressByteSize(),[3.14,6.28,2.71]) self.assertTrue( fabs(data2.GetDouble(error,0) - 3.14) < 0.5, 'double data2[0] = 3.14') self.assertTrue( fabs(data2.GetDouble(error,8) - 6.28) < 0.5, 'double data2[1] = 6.28') self.assertTrue( fabs(data2.GetDouble(error,16) - 2.71) < 0.5, 'double data2[2] = 2.71') + + data2 = lldb.SBData() + + data2.SetDataFromCString('hello!') + self.assertTrue(data2.GetUnsignedInt8(error,0) == 104, 'set h == 104') + self.assertTrue(data2.GetUnsignedInt8(error,1) == 101, 'set e == 101') + self.assertTrue(data2.GetUnsignedInt8(error,2) == 108, 'set l == 108') + self.assertTrue(data2.GetUnsignedInt8(error,3) == 108, 'set l == 108') + self.assertTrue(data2.GetUnsignedInt8(error,4) == 111, 'set o == 111') + self.assertTrue(data2.GetUnsignedInt8(error,5) == 33, 'set ! == 33') + self.assertTrue(data2.GetUnsignedInt8(error,6) == 0, 'set binary 0 terminator') + + data2.SetDataFromUInt64Array([1,2,3,4,5]) + self.assertTrue(data2.GetUnsignedInt64(error,0) == 1, 'set data2[0] = 1') + self.assertTrue(data2.GetUnsignedInt64(error,8) == 2, 'set data2[1] = 2') + self.assertTrue(data2.GetUnsignedInt64(error,16) == 3, 'set data2[2] = 3') + self.assertTrue(data2.GetUnsignedInt64(error,24) == 4, 'set data2[3] = 4') + self.assertTrue(data2.GetUnsignedInt64(error,32) == 5, 'set data2[4] = 5') + + data2.SetDataFromSInt32Array([2, -2]) + self.assertTrue(data2.GetSignedInt32(error,0) == 2, 'set signed32 data2[0] = 2') + self.assertTrue(data2.GetSignedInt32(error,4) == -2, 'set signed32 data2[1] = -2') + + data2.SetDataFromSInt64Array([2, -2]) + self.assertTrue(data2.GetSignedInt32(error,0) == 2, 'set signed64 data2[0] = 2') + self.assertTrue(data2.GetSignedInt32(error,8) == -2, 'set signed64 data2[1] = -2') + + data2.SetDataFromUInt32Array([1,2,3,4,5]) + self.assertTrue(data2.GetUnsignedInt32(error,0) == 1, 'set 32-bit data2[0] = 1') + self.assertTrue(data2.GetUnsignedInt32(error,4) == 2, 'set 32-bit data2[1] = 2') + self.assertTrue(data2.GetUnsignedInt32(error,8) == 3, 'set 32-bit data2[2] = 3') + self.assertTrue(data2.GetUnsignedInt32(error,12) == 4, 'set 32-bit data2[3] = 4') + self.assertTrue(data2.GetUnsignedInt32(error,16) == 5, 'set 32-bit data2[4] = 5') + data2.SetDataFromDoubleArray([3.14,6.28,2.71]) + self.assertTrue( fabs(data2.GetDouble(error,0) - 3.14) < 0.5, 'set double data2[0] = 3.14') + self.assertTrue( fabs(data2.GetDouble(error,8) - 6.28) < 0.5, 'set double data2[1] = 6.28') + self.assertTrue( fabs(data2.GetDouble(error,16) - 2.71) < 0.5, 'set double data2[2] = 2.71') if __name__ == '__main__': import atexit |