diff options
author | Lauro Neto <lauro.neto@openbossa.org> | 2010-10-07 14:36:12 -0300 |
---|---|---|
committer | Lauro Neto <lauro.neto@openbossa.org> | 2010-10-07 15:41:50 -0300 |
commit | 349bdc2bc53c36043c81222f6e83762c72a6c56f (patch) | |
tree | 38bb22ed4ea39c6592290fc3f93fcfc891ff6ddf | |
parent | 04180e1f1d9e5dc2b8e8e856f6fde0587074284a (diff) | |
download | pyside-349bdc2bc53c36043c81222f6e83762c72a6c56f.tar.gz pyside-349bdc2bc53c36043c81222f6e83762c72a6c56f.tar.xz pyside-349bdc2bc53c36043c81222f6e83762c72a6c56f.zip |
Add more test for operations with QFlags
-rw-r--r-- | tests/QtCore/qflags_test.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/QtCore/qflags_test.py b/tests/QtCore/qflags_test.py index 3ecaa2f..8c088d6 100644 --- a/tests/QtCore/qflags_test.py +++ b/tests/QtCore/qflags_test.py @@ -56,11 +56,31 @@ class QFlagOperatorTest(unittest.TestCase): flag_type = (flags & Qt.WindowType_Mask) self.assertEqual(flag_type, Qt.Window) + def testOperatorBetweenFlags(self): + '''QFlags & QFlags''' + flags = Qt.NoItemFlags | Qt.ItemIsUserCheckable + newflags = Qt.NoItemFlags | Qt.ItemIsUserCheckable + self.assert_(flags & newflags) + + def testOperatorDifferentOrder(self): + '''Different ordering of arguments''' + flags = Qt.NoItemFlags | Qt.ItemIsUserCheckable + self.assertEqual(flags | Qt.ItemIsEnabled, Qt.ItemIsEnabled | flags) + class QFlagsOnQVariant(unittest.TestCase): def testQFlagsOnQVariant(self): o = QObject() o.setProperty("foo", QIODevice.ReadOnly | QIODevice.WriteOnly) self.assertEqual(type(o.property("foo")), int) +class QFlagsWrongType(unittest.TestCase): + def testWrongType(self): + '''Wrong type passed to QFlags binary operators''' + self.assertRaises(TypeError, lambda :Qt.NoItemFlags | '43') + self.assertRaises(TypeError, lambda :Qt.NoItemFlags & '43') + self.assertRaises(TypeError, lambda :'jabba' & Qt.NoItemFlags) + self.assertRaises(TypeError, lambda :'hut' & Qt.NoItemFlags) + self.assertRaises(TypeError, lambda :Qt.NoItemFlags & QObject()) + if __name__ == '__main__': unittest.main() |