diff options
author | Hugo Parente Lima <hugo.pl@gmail.com> | 2010-08-30 17:28:13 -0300 |
---|---|---|
committer | Hugo Parente Lima <hugo.pl@gmail.com> | 2010-08-30 17:46:25 -0300 |
commit | d27d6958c07fdb2d452484ddda0b615c43c8db7b (patch) | |
tree | 755d85aea0654daa97fdceb6e829d00092df682f | |
parent | 7b2903ad21aba22798b4ceace38c34d29bf7b8cc (diff) |
Fix bug#309 - "QtCore.QByteArray() or list from QtCore.Qsettings.value() as default"
Reviewer: Luciano Wolf <luciano.wolf@openbossa.org>
Renato Araújo <renato.araujo@openbossa.org>
-rw-r--r-- | PySide/QtCore/qvariant_conversions.h | 3 | ||||
-rw-r--r-- | tests/QtCore/qbytearray_test.py | 8 |
2 files changed, 8 insertions, 3 deletions
diff --git a/PySide/QtCore/qvariant_conversions.h b/PySide/QtCore/qvariant_conversions.h index 7a799e1c6..a471ce64a 100644 --- a/PySide/QtCore/qvariant_conversions.h +++ b/PySide/QtCore/qvariant_conversions.h @@ -28,6 +28,9 @@ struct Converter<QVariant> } else if (Converter<QString>::checkType(pyObj)) { // QVariant(const char*) return QVariant(Converter<QString>::toCpp(pyObj)); + } else if (Converter<QByteArray>::checkType(pyObj)) { + // QVariant(QByteArray) + return QVariant(Converter<QByteArray>::toCpp(pyObj)); } else if (PyFloat_CheckExact(pyObj)) { // QVariant(double) return QVariant(Converter<double>::toCpp(pyObj)); diff --git a/tests/QtCore/qbytearray_test.py b/tests/QtCore/qbytearray_test.py index 20bba1400..1c425b8e9 100644 --- a/tests/QtCore/qbytearray_test.py +++ b/tests/QtCore/qbytearray_test.py @@ -5,7 +5,7 @@ import unittest import ctypes import sys -from PySide.QtCore import QByteArray +from PySide.QtCore import * class QByteArrayTestToNumber(unittest.TestCase): def testToNumberInt(self): @@ -91,8 +91,10 @@ class QByteArrayOperatorAtSetterLargeIndex(unittest.TestCase): obj[10] = 'normal' self.assertEqual(obj, QByteArray('mystring normal')) - - +class QByteArrayOnQVariant(unittest.TestCase): + def testQByteArrayOnQVariant(self): + a = QSettings().value("some_prop", QByteArray()) + self.assertEqual(type(a), QByteArray) if __name__ == '__main__': unittest.main() |