aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside2/tests/QtCore/qbytearray_test.py
diff options
context:
space:
mode:
Diffstat (limited to 'sources/pyside2/tests/QtCore/qbytearray_test.py')
-rw-r--r--sources/pyside2/tests/QtCore/qbytearray_test.py100
1 files changed, 63 insertions, 37 deletions
diff --git a/sources/pyside2/tests/QtCore/qbytearray_test.py b/sources/pyside2/tests/QtCore/qbytearray_test.py
index 672472c42..3f7de66fb 100644
--- a/sources/pyside2/tests/QtCore/qbytearray_test.py
+++ b/sources/pyside2/tests/QtCore/qbytearray_test.py
@@ -1,4 +1,5 @@
-#!/usr/bin/python
+# -*- coding:utf-8 -*-
+# !/usr/bin/python
#############################################################################
##
@@ -35,24 +36,24 @@ import ctypes
import pickle
import py3kcompat as py3k
-from PySide2.QtCore import QByteArray, QSettings, QObject
+from PySide2.QtCore import QByteArray, QSettings, QObject, QDataStream, QIODevice
class QByteArrayTestToNumber(unittest.TestCase):
def testToNumberInt(self):
- obj = QByteArray('37')
+ obj = QByteArray(py3k.b('37'))
self.assertEqual((37, True), obj.toInt())
def testToNumberUShort(self):
- obj = QByteArray('37')
+ obj = QByteArray(py3k.b('37'))
self.assertEqual((37, True), obj.toUShort())
def testToNumberFloat(self):
- obj = QByteArray('37.109')
+ obj = QByteArray(py3k.b('37.109'))
self.assertEqual((ctypes.c_float(37.109).value, True),
obj.toFloat())
def testToNumberDouble(self):
- obj = QByteArray('37.109')
+ obj = QByteArray(py3k.b('37.109'))
self.assertEqual((ctypes.c_double(37.109).value, True),
obj.toDouble())
@@ -69,9 +70,9 @@ class QByteArrayTestToNumber(unittest.TestCase):
def testAppend(self):
b = QByteArray()
- b.append("A")
+ b.append(py3k.b("A"))
self.assertEqual(b.size(), 1)
- b.append("AB")
+ b.append(py3k.b("AB"))
self.assertEqual(b.size(), 3)
@@ -80,7 +81,7 @@ class QByteArraySplit(unittest.TestCase):
def testPathSeparator(self):
#QByteArray.split('/')
- obj = QByteArray(unittest.__file__)
+ obj = QByteArray(py3k.b(unittest.__file__))
self.assertEqual(obj.split('/'), unittest.__file__.split('/'))
class QByteArrayData(unittest.TestCase):
@@ -88,11 +89,11 @@ class QByteArrayData(unittest.TestCase):
'''Test case for QByteArray.data'''
def testData(self):
- url = QByteArray("http://web.openbossa.org/")
- self.assertEqual(url.data(), py3k.b("http://web.openbossa.org/"))
+ url = QByteArray(py3k.b("http://pyside.org"))
+ self.assertEqual(url.data(), py3k.b("http://pyside.org"))
def testDataWithZeros(self):
- s1 = "123\000321"
+ s1 = py3k.b("123\000321")
ba = QByteArray(s1)
s2 = ba.data()
self.assertEqual(py3k.b(s1), s2)
@@ -103,21 +104,21 @@ class QByteArrayOperatorAtSetter(unittest.TestCase):
def testSetterString(self):
'''QByteArray[x] = pythonstring'''
- obj = QByteArray('123456')
- obj[1] = '0'
- self.assertEqual(obj, QByteArray('103456'))
+ obj = QByteArray(py3k.b('123456'))
+ obj[1] = py3k.b('0')
+ self.assertEqual(obj, QByteArray(py3k.b('103456')))
def testSetterStringLarge(self):
'''QByteArray[x] = pythonstring (larget than 1 char)'''
- obj = QByteArray('123456')
- obj[3] = 'abba'
- self.assertEqual(obj, QByteArray('123abba56'))
+ obj = QByteArray(py3k.b('123456'))
+ obj[3] = py3k.b('abba')
+ self.assertEqual(obj, QByteArray(py3k.b('123abba56')))
def testSetterQByteArray(self):
'''QByteArray[x] = qbytearray'''
- obj = QByteArray('123456')
- obj[3] = QByteArray('array')
- self.assertEqual(obj, QByteArray('123array56'))
+ obj = QByteArray(py3k.b('123456'))
+ obj[3] = QByteArray(py3k.b('array'))
+ self.assertEqual(obj, QByteArray(py3k.b('123array56')))
class QByteArrayOperatorAtSetterNegativeIndex(unittest.TestCase):
@@ -125,9 +126,9 @@ class QByteArrayOperatorAtSetterNegativeIndex(unittest.TestCase):
def testSetterNegativeIndex(self):
'''QByteArray[x] = string - negative index'''
- obj = QByteArray('123456')
- obj[-3] = 'array'
- self.assertEqual(obj, QByteArray('123array56'))
+ obj = QByteArray(py3k.b('123456'))
+ obj[-3] = py3k.b('array')
+ self.assertEqual(obj, QByteArray(py3k.b('123array56')))
class QByteArrayOperatorAtSetterLargeIndex(unittest.TestCase):
@@ -136,16 +137,38 @@ class QByteArrayOperatorAtSetterLargeIndex(unittest.TestCase):
def testSetterLargeIndexEmpty(self):
'''QByteArray[x] = somestring - Overflow index on empty string'''
# should pad with spaces if the index is larger
- obj = QByteArray('')
- obj[2] = 'a'
- self.assertEqual(obj, QByteArray(' a'))
+ obj = QByteArray(py3k.b(''))
+ obj[2] = py3k.b('a')
+ self.assertEqual(obj, QByteArray(py3k.b(' a')))
def testSetterLargeIndexNormal(self):
'''QByteArray[x] = somestring - Overflow index on normal string'''
# should pad with spaces if the index is larger
- obj = QByteArray('mystring')
- obj[10] = 'normal'
- self.assertEqual(obj, QByteArray('mystring normal'))
+ obj = QByteArray(py3k.b('mystring'))
+ obj[10] = py3k.b('normal')
+ self.assertEqual(obj, QByteArray(py3k.b('mystring normal')))
+
+class QByteArrayOnQDataStream(unittest.TestCase):
+ '''
+ Bug PYSIDE-232
+ '''
+ def testIt(self):
+ a = QByteArray()
+ b = QDataStream(a, QIODevice.WriteOnly)
+ b.writeUInt16(5000)
+ # The __repr__ not suppose to crash anymore
+ self.assertNotEqual(repr(b), None)
+
+class TestBug664(unittest.TestCase):
+ '''
+ QByteArray.data() should return correct data
+ '''
+ def testIt(self):
+ a = QByteArray(py3k.unicode_('hi 猫').encode('utf-8'))
+ if py3k.IS_PY3K:
+ self.assertEqual(repr(a), "PySide2.QtCore.QByteArray(b'hi \\xe7\\x8c\\xab')")
+ else:
+ self.assertEqual(repr(a), "PySide2.QtCore.QByteArray('hi \\xe7\\x8c\\xab')")
class QByteArrayOnQVariant(unittest.TestCase):
def testQByteArrayOnQVariant(self):
@@ -157,7 +180,7 @@ class TestBug567(unittest.TestCase):
QByteArray should support slices
'''
def testIt(self):
- ba = QByteArray('1234567890')
+ ba = QByteArray(py3k.b('1234567890'))
self.assertEqual(ba[2:4], '34')
self.assertEqual(ba[:4], '1234')
self.assertEqual(ba[4:], '567890')
@@ -176,21 +199,24 @@ class QByteArrayBug514(unittest.TestCase):
class TestPickler(unittest.TestCase):
def testIt(self):
- ba = QByteArray("321\x00123")
+ ba = QByteArray(py3k.b("321\x00123"))
output = pickle.dumps(str(ba))
ba2 = pickle.loads(output)
- self.assertEqual(ba, ba2)
+ self.assertEqual(str(ba), str(ba2))
class QByteArrayBug720(unittest.TestCase):
def testIt(self):
- ba = QByteArray(b"32\"1\x00123")
- self.assertEqual(str(ba), "32\"1\x00123")
- self.assertEqual(repr(ba), "PySide2.QtCore.QByteArray('32\"1\x00123')")
+ ba = QByteArray(py3k.b("32\"1\x00123"))
+ self.assertEqual(str(ba), str(py3k.b("32\"1\x00123")))
+ if py3k.IS_PY3K:
+ self.assertEqual(repr(ba), "PySide2.QtCore.QByteArray(b'32\"1\\x00123')")
+ else:
+ self.assertEqual(repr(ba), "PySide2.QtCore.QByteArray('32\"1\\x00123')")
class QByteArrayImplicitConvert(unittest.TestCase):
def testString(self):
# No implicit conversions from QByteArray to python string
- ba = QByteArray("object name")
+ ba = QByteArray(py3k.b("object name"))
obj = QObject()
self.assertRaises(TypeError, obj.setObjectName, ba)