aboutsummaryrefslogtreecommitdiffstats
path: root/tests/QtScript
diff options
context:
space:
mode:
authorHugo Parente Lima <hugo.pl@gmail.com>2011-07-28 16:37:12 -0300
committerHugo Parente Lima <hugo.pl@gmail.com>2012-03-08 16:54:41 -0300
commit8d8c4cf308c6e066a4e625ff2a05c11e7b9fba0b (patch)
tree7267e71f96b4b4ddd915e732e5ad23867a28c571 /tests/QtScript
parentd912655b5a00f44dc26be4ec6821c5e0aed1ab3c (diff)
Fix bug 923 - "Make QScriptValue (or QScriptValueIterator) implement the Python iterator protocol"
Reviewer: Marcelo Lira <marcelo.lira@openbossa.org> Luciano Wolf <luciano.wolf@openbossa.org>
Diffstat (limited to 'tests/QtScript')
-rw-r--r--tests/QtScript/qscriptvalue_test.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/tests/QtScript/qscriptvalue_test.py b/tests/QtScript/qscriptvalue_test.py
index d029bf9fc..e5b6a637f 100644
--- a/tests/QtScript/qscriptvalue_test.py
+++ b/tests/QtScript/qscriptvalue_test.py
@@ -1,6 +1,6 @@
import unittest
import PySide
-from PySide.QtScript import QScriptEngine, QScriptValue
+from PySide.QtScript import *
from helper import UsesQApplication
@@ -19,6 +19,20 @@ class TestQScriptValue (UsesQApplication):
value = QScriptValue("somePerson = { firstName: 'John', lastName: 'Doe' }")
value2 = eval(repr(value))
self.assertEqual(value.toString(), value2.toString())
+ self.assertEqual(value.toVariant(), value2.toVariant())
+
+ def testIteratorProtocol(self):
+ engine = QScriptEngine()
+ value = engine.evaluate('x = {"a": 1, "b":2}')
+ d = {}
+ for k, v in QScriptValueIterator(value):
+ d[k] = v
+ self.assertEqual(d, {'a': 1, 'b': 2})
+
+ d = {}
+ for k, v in value:
+ d[k] = v
+ self.assertEqual(d, {'a': 1, 'b': 2})
if __name__ == '__main__':
unittest.main()