aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorHugo Parente Lima <hugo.pl@gmail.com>2011-04-12 15:53:56 -0300
committerHugo Parente Lima <hugo.pl@gmail.com>2012-03-08 16:54:09 -0300
commitc2c04ddd5107f0743441c9cf77c481254d168aae (patch)
tree0209a3ee7f8661976d2eca53cd6feb3d3bb50385 /tests
parentb1ab2a02604bca8abfb18a2f626643a52c5d4453 (diff)
Fix bug 723 - "Missing QAbstractFileEngine.read and QAbstractFileEngine.readLine"
Diffstat (limited to 'tests')
-rw-r--r--tests/QtCore/CMakeLists.txt1
-rw-r--r--tests/QtCore/bug_723.py50
2 files changed, 51 insertions, 0 deletions
diff --git a/tests/QtCore/CMakeLists.txt b/tests/QtCore/CMakeLists.txt
index cbc9ee0b3..a7cd8b17d 100644
--- a/tests/QtCore/CMakeLists.txt
+++ b/tests/QtCore/CMakeLists.txt
@@ -8,6 +8,7 @@ PYSIDE_TEST(bug_515.py)
PYSIDE_TEST(bug_656.py)
PYSIDE_TEST(bug_699.py)
PYSIDE_TEST(bug_706.py)
+PYSIDE_TEST(bug_723.py)
PYSIDE_TEST(bug_724.py)
PYSIDE_TEST(blocking_signals_test.py)
PYSIDE_TEST(child_event_test.py)
diff --git a/tests/QtCore/bug_723.py b/tests/QtCore/bug_723.py
new file mode 100644
index 000000000..68ebeab61
--- /dev/null
+++ b/tests/QtCore/bug_723.py
@@ -0,0 +1,50 @@
+import unittest
+from PySide.QtCore import *
+
+class MyFileEngine (QAbstractFileEngine):
+
+ def __init__(self):
+ QAbstractFileEngine.__init__(self)
+ self.contents = "Foo bar for the win!"
+ self.pos = 0
+
+ def open(self, mode):
+ return True
+
+ def read(self, maxlen):
+ print "Reading... to return ", self.contents[self.pos:maxlen]
+
+ if self.pos > len(self.contents):
+ return -1
+
+ res = self.contents[self.pos:maxlen]
+ self.pos += len(res)
+ return res
+
+ def readLine(self, maxlen):
+ return self.contents[self.pos:maxlen]
+
+class MyFileEngineHandler (QAbstractFileEngineHandler):
+
+ def create(self, fileName):
+ print "hey ho: ", fileName
+ if fileName.startswith("foo:/"):
+ return MyFileEngine()
+ return None
+
+
+class TestBug723 (unittest.TestCase):
+
+ def testIt(self):
+ fh = MyFileEngineHandler()
+
+ f = QFile("foo:/bar")
+
+ assert(f.open(QFile.ReadOnly | QFile.Text))
+ contents = f.readAll()
+ self.assertEqual(contents, "Foo bar for the win!")
+ f.close()
+
+
+if __name__ == '__main__':
+ unittest.main()