Fix bug 717 - "QByteArray doesn't honor \0 inside strings."
Reviewer: Renato Araújo <renato.filho@openbossa.org>
Marcelo Lira <marcelo.lira@openbossa.org>
This commit is contained in:
parent
e14378b126
commit
ea5dd4f257
3 changed files with 80 additions and 17 deletions
|
|
@ -12,20 +12,17 @@ class QByteArrayConcatenationOperatorTest(unittest.TestCase):
|
|||
def testConcatQByteArrayAndPythonString(self):
|
||||
#Test concatenation of a QByteArray with a Python string, in this order
|
||||
qba = QByteArray('foo')
|
||||
result = qba + 'bar'
|
||||
self.assert_(isinstance(result, QByteArray))
|
||||
self.assertEqual(result, 'foobar')
|
||||
# NOTICE: the standard behavior of PyQt is to return a QString object
|
||||
# for this case. As this is a minor issue the assertion will be left commented.
|
||||
#self.assertEqual(result.__class__.__name__, 'QString')
|
||||
result = qba + '\x00bar'
|
||||
self.assertEqual(type(result), QByteArray)
|
||||
self.assertEqual(result, 'foo\x00bar')
|
||||
|
||||
def testConcatPythonStringAndQByteArray(self):
|
||||
#Test concatenation of a Python string with a QByteArray, in this order
|
||||
concat_python_string_add_qbytearray_worked = True
|
||||
qba = QByteArray('foo')
|
||||
result = 'bar' + qba
|
||||
self.assert_(isinstance(result, QByteArray))
|
||||
self.assertEqual(result, 'barfoo')
|
||||
result = 'bar\x00' + qba
|
||||
self.assertEqual(type(result), QByteArray)
|
||||
self.assertEqual(result, 'bar\x00foo')
|
||||
|
||||
# NOTICE: Does not makes sense concat a unicode string with a QByteArray, because the
|
||||
# user does not know nothing about the internal representation of the unicode string.
|
||||
|
|
|
|||
|
|
@ -152,7 +152,7 @@ class QByteArrayBug720(unittest.TestCase):
|
|||
def testIt(self):
|
||||
ba = QByteArray("32\"1\x00123")
|
||||
self.assertEqual(str(ba), "32\"1\x00123")
|
||||
self.assertEqual(repr(ba), "PySide.QtCore.QByteArray(\"32\\\"1\x00123\")")
|
||||
self.assertEqual(repr(ba), "PySide.QtCore.QByteArray('32\"1\\x00123')")
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue