These tests have moved elsewhere
authorEd Page <eopage@byu.net>
Sun, 28 Aug 2011 03:50:32 +0000 (22:50 -0500)
committerEd Page <eopage@byu.net>
Sun, 28 Aug 2011 03:50:32 +0000 (22:50 -0500)
hand_tests/cropped_pies.py [deleted file]
hand_tests/double_disconnect.py [deleted file]
hand_tests/expanding_buttons.py [deleted file]
hand_tests/producer_consumer.py [deleted file]
hand_tests/qtcontacts.py [deleted file]

diff --git a/hand_tests/cropped_pies.py b/hand_tests/cropped_pies.py
deleted file mode 100755 (executable)
index 62a1ed7..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-#!/usr/bin/env python
-
-from __future__ import with_statement
-from __future__ import division
-
-import sys
-import logging
-
-from PyQt4 import QtCore
-from PyQt4 import QtGui
-
-
-_moduleLogger = logging.getLogger(__name__)
-
-
-class QPieDisplay(QtGui.QWidget):
-
-       def __init__(self, parent = None, flags = QtCore.Qt.Window):
-               QtGui.QWidget.__init__(self, parent, flags)
-               self._child = None
-               self._size = QtCore.QSize(128, 128)
-               self._canvas = QtGui.QPixmap(self._size)
-               self._mask = QtGui.QBitmap(self._canvas.size())
-               self._mask.fill(QtCore.Qt.color0)
-               self._generate_mask(self._mask)
-               self._canvas.setMask(self._mask)
-
-       def sizeHint(self):
-               return self._size
-
-       def showEvent(self, showEvent):
-               self.setMask(self._mask)
-
-               QtGui.QWidget.showEvent(self, showEvent)
-
-       def paintEvent(self, paintEvent):
-               painter = QtGui.QPainter(self._canvas)
-               painter.setRenderHint(QtGui.QPainter.Antialiasing, True)
-               adjustmentRect = self._canvas.rect().adjusted(0, 0, -1, -1)
-
-               painter.setBrush(self.palette().window())
-               painter.setPen(self.palette().mid().color())
-               painter.drawRect(self._canvas.rect())
-
-               background = self.palette().highlight().color()
-               painter.setPen(QtCore.Qt.NoPen)
-               painter.setBrush(background)
-               painter.drawPie(adjustmentRect, 0, 360 * 16)
-
-               dark = self.palette().mid().color()
-               painter.setPen(QtGui.QPen(dark, 1))
-               painter.setBrush(QtCore.Qt.NoBrush)
-               painter.drawEllipse(adjustmentRect)
-
-               screen = QtGui.QPainter(self)
-               screen.drawPixmap(QtCore.QPoint(0, 0), self._canvas)
-               QtGui.QWidget.paintEvent(self, paintEvent)
-
-       def mousePressEvent(self, mouseEvent):
-               pass
-
-       def mouseReleaseEvent(self, mouseEvent):
-               if self._child is None:
-                       lastMousePos = mouseEvent.pos()
-                       globalButtonPos = self.mapToGlobal(lastMousePos)
-                       self._child = QPieDisplay(None, QtCore.Qt.SplashScreen)
-                       self._child.move(globalButtonPos)
-                       self._child.show()
-               else:
-                       self._child.hide()
-                       self._child = None
-
-       def _generate_mask(self, mask):
-               """
-               Specifies on the mask the shape of the pie menu
-               """
-               painter = QtGui.QPainter(mask)
-               painter.setPen(QtCore.Qt.color1)
-               painter.setBrush(QtCore.Qt.color1)
-               painter.drawRect(mask.rect())
-
-class Grid(object):
-
-       def __init__(self):
-               layout = QtGui.QGridLayout()
-               for i in xrange(3):
-                       for k in xrange(3):
-                               button = QtGui.QPushButton("%s,%s" % (i, k))
-                               button.setSizePolicy(QtGui.QSizePolicy(
-                                       QtGui.QSizePolicy.MinimumExpanding,
-                                       QtGui.QSizePolicy.MinimumExpanding,
-                                       QtGui.QSizePolicy.PushButton,
-                               ))
-                               self._create_callback(button)
-                               layout.addWidget(button, i, k)
-
-               centralWidget = QtGui.QWidget()
-               centralWidget.setLayout(layout)
-               centralWidget.setContentsMargins(0, 0, 0, 0)
-
-               self._window = QtGui.QMainWindow()
-               self._window.setAttribute(QtCore.Qt.WA_DeleteOnClose, True)
-               self._window.setWindowTitle("Buttons!")
-               self._window.setCentralWidget(centralWidget)
-               self._child = None
-
-       def show(self):
-               self._window.show()
-
-       def _create_callback(self, button):
-               button.clicked.connect(lambda: self._on_click(button))
-
-       def _on_click(self, button):
-               if self._child is None:
-                       buttonCorner = pos = QtCore.QPoint(0, 0)
-                       globalButtonPos = button.mapToGlobal(pos)
-                       self._child = QPieDisplay(None, QtCore.Qt.SplashScreen)
-                       self._child.move(globalButtonPos)
-                       self._child.show()
-               else:
-                       self._child.hide()
-                       self._child = None
-
-
-if __name__ == "__main__":
-       app = QtGui.QApplication([])
-
-       grid = Grid()
-       grid.show()
-
-       val = app.exec_()
-       sys.exit(val)
diff --git a/hand_tests/double_disconnect.py b/hand_tests/double_disconnect.py
deleted file mode 100755 (executable)
index 2acd797..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/usr/bin/env python
-
-from __future__ import with_statement
-from __future__ import division
-
-import sys
-import logging
-
-PYSIDE = False
-DISCONNECT_ON_DELETE = False
-
-if PYSIDE:
-       import PySide.QtCore as QtCore
-       import PySide.QtGui as QtGui
-else:
-       import PyQt4.QtCore as QtCore
-       import PyQt4.QtGui as QtGui
-
-
-_moduleLogger = logging.getLogger(__name__)
-
-
-class Signaller(QtCore.QObject):
-
-       if PYSIDE:
-               s1 = QtCore.Signal()
-               s2 = QtCore.Signal()
-       else:
-               s1 = QtCore.pyqtSignal()
-               s2 = QtCore.pyqtSignal()
-
-
-class Window(object):
-
-       def __init__(self, s):
-               self._window = QtGui.QMainWindow()
-               self._window.setAttribute(QtCore.Qt.WA_DeleteOnClose, True)
-               self._window.setWindowTitle("Demo!")
-               if DISCONNECT_ON_DELETE:
-                       self._window.destroyed.connect(self._on_destroyed)
-
-               self._s = s
-               self._s.s1.connect(self._on_signal)
-               self._s.s2.connect(self._on_signal)
-
-       def show(self):
-               self._window.show()
-
-       def _on_signal(self):
-               print "Signal!"
-               self._window.setWindowTitle("Signaled!")
-
-       def _on_destroyed(self, obj = None):
-               print "Main window destroyed"
-               self._s.s1.disconnect(self._on_signal)
-               self._s.s2.disconnect(self._on_signal)
-
-
-if __name__ == "__main__":
-       app = QtGui.QApplication([])
-
-       s = Signaller()
-       w = Window(s)
-       w.show()
-
-       val = app.exec_()
-       del w
-
-       print "s1"
-       s.s1.emit()
-       print "s2"
-       s.s2.emit()
-
-       print "Exiting"
-       sys.exit(val)
diff --git a/hand_tests/expanding_buttons.py b/hand_tests/expanding_buttons.py
deleted file mode 100755 (executable)
index b800451..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/usr/bin/env python
-
-from __future__ import with_statement
-from __future__ import division
-
-import sys
-import logging
-
-from PyQt4 import QtCore
-from PyQt4 import QtGui
-
-
-_moduleLogger = logging.getLogger(__name__)
-
-
-if __name__ == "__main__":
-       app = QtGui.QApplication([])
-
-       layout = QtGui.QGridLayout()
-       for i in xrange(3):
-               for k in xrange(3):
-                       button = QtGui.QPushButton("%s,%s" % (i, k))
-                       button.setSizePolicy(QtGui.QSizePolicy(
-                               QtGui.QSizePolicy.MinimumExpanding,
-                               QtGui.QSizePolicy.MinimumExpanding,
-                               QtGui.QSizePolicy.PushButton,
-                       ))
-                       layout.addWidget(button, i, k)
-
-       centralWidget = QtGui.QWidget()
-       centralWidget.setLayout(layout)
-       centralWidget.setContentsMargins(0, 0, 0, 0)
-
-       window = QtGui.QMainWindow()
-       window.setAttribute(QtCore.Qt.WA_DeleteOnClose, True)
-       window.setWindowTitle("Buttons!")
-       window.setCentralWidget(centralWidget)
-       window.show()
-
-       val = app.exec_()
-       sys.exit(val)
diff --git a/hand_tests/producer_consumer.py b/hand_tests/producer_consumer.py
deleted file mode 100755 (executable)
index 22084ed..0000000
+++ /dev/null
@@ -1,157 +0,0 @@
-#!/usr/bin/env python
-
-from __future__ import with_statement
-from __future__ import division
-
-import functools
-import time
-
-
-FORCE_PYQT = False
-DECORATE = True
-
-
-try:
-       if FORCE_PYQT:
-               raise ImportError()
-       import PySide.QtCore as _QtCore
-       QtCore = _QtCore
-       USES_PYSIDE = True
-except ImportError:
-       import sip
-       sip.setapi('QString', 2)
-       sip.setapi('QVariant', 2)
-       import PyQt4.QtCore as _QtCore
-       QtCore = _QtCore
-       USES_PYSIDE = False
-
-
-if USES_PYSIDE:
-       Signal = QtCore.Signal
-       Slot = QtCore.Slot
-       Property = QtCore.Property
-else:
-       Signal = QtCore.pyqtSignal
-       Slot = QtCore.pyqtSlot
-       Property = QtCore.pyqtProperty
-
-
-def log_exception():
-
-       def log_exception_decorator(func):
-
-               @functools.wraps(func)
-               def wrapper(*args, **kwds):
-                       try:
-                               return func(*args, **kwds)
-                       except Exception:
-                               print "Exception", func.__name__
-                               raise
-
-               if DECORATE:
-                       return wrapper
-               else:
-                       return func
-
-       return log_exception_decorator
-
-
-class QThread44(QtCore.QThread):
-       """
-       This is to imitate QThread in Qt 4.4+ for when running on older version
-       See http://labs.trolltech.com/blogs/2010/06/17/youre-doing-it-wrong
-       (On Lucid I have Qt 4.7 and this is still an issue)
-       """
-
-       def __init__(self, parent = None):
-               QtCore.QThread.__init__(self, parent)
-
-       def run(self):
-               self.exec_()
-
-
-class Producer(QtCore.QObject):
-
-       data = Signal(int)
-       done = Signal()
-
-       def __init__(self):
-               QtCore.QObject.__init__(self)
-
-       @Slot()
-       @log_exception()
-       def process(self):
-               print "Starting producer"
-               for i in xrange(10):
-                       self.data.emit(i)
-                       time.sleep(0.1)
-               self.done.emit()
-
-
-class Consumer(QtCore.QObject):
-
-       def __init__(self):
-               QtCore.QObject.__init__(self)
-
-       @Slot()
-       @log_exception()
-       def process(self):
-               print "Starting consumer"
-
-       @Slot()
-       @log_exception()
-       def print_done(self):
-               print "Done"
-
-       @Slot(int)
-       @log_exception()
-       def print_data(self, i):
-               print i
-
-
-def run_producer_consumer():
-       app = QtCore.QCoreApplication([])
-
-       producerThread = QThread44()
-       producer = Producer()
-       producer.moveToThread(producerThread)
-       producerThread.started.connect(producer.process)
-
-       consumerThread = QThread44()
-       consumer = Consumer()
-       consumer.moveToThread(consumerThread)
-       consumerThread.started.connect(consumer.process)
-
-       producer.data.connect(consumer.print_data)
-       producer.done.connect(consumer.print_done)
-
-       @Slot()
-       @log_exception()
-       def producer_done():
-               print "Shutting down"
-               producerThread.quit()
-               consumerThread.quit()
-               print "Done"
-       producer.done.connect(producer_done)
-
-       count = [0]
-
-       @Slot()
-       @log_exception()
-       def thread_done():
-               print "Thread done"
-               count[0] += 1
-               if count[0] == 2:
-                       print "Quitting"
-                       app.exit(0)
-               print "Done"
-       producerThread.finished.connect(thread_done)
-       consumerThread.finished.connect(thread_done)
-
-       producerThread.start()
-       consumerThread.start()
-       print "Status %s" % app.exec_()
-
-
-if __name__ == "__main__":
-       run_producer_consumer()
diff --git a/hand_tests/qtcontacts.py b/hand_tests/qtcontacts.py
deleted file mode 100644 (file)
index ace8436..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/usr/bin/env python
-
-from __future__ import with_statement
-from __future__ import division
-
-import QtMobility.Contacts as QtContacts
-
-
-class QtContactsAddressBook(object):
-
-       def __init__(self, name, uri):
-               self._name = name
-               self._uri = uri
-               self._manager = QtContacts.QContactManager.fromUri(uri)
-               self._contacts = None
-
-       @property
-       def name(self):
-               return self._name
-
-       @property
-       def error(self):
-               return self._manager.error()
-
-       def update_account(self, force = True):
-               if not force and self._contacts is not None:
-                       return
-               self._contacts = dict(self._get_contacts())
-
-       def get_contacts(self):
-               if self._contacts is None:
-                       self._contacts = dict(self._get_contacts())
-               return self._contacts
-
-       def _get_contacts(self):
-               contacts = self._manager.contacts()
-               for contact in contacts:
-                       contactId = contact.localId()
-                       contactName = contact.displayLabel()
-                       phoneDetails = contact.details(QtContacts.QContactPhoneNumber().DefinitionName)
-                       phones = [{"phoneType": "Phone", "phoneNumber": phone.value(QtContacts.QContactPhoneNumber().FieldNumber)} for phone in phoneDetails]
-                       contactDetails = phones
-                       if 0 < len(contactDetails):
-                               yield str(contactId), {
-                                       "contactId": str(contactId),
-                                       "name": contactName,
-                                       "numbers": contactDetails,
-                               }
-
-
-class _QtContactsAddressBookFactory(object):
-
-       def __init__(self):
-               self._availableManagers = {}
-
-               availableMgrs = QtContacts.QContactManager.availableManagers()
-               availableMgrs.remove("invalid")
-               for managerName in availableMgrs:
-                       params = {}
-                       managerUri = QtContacts.QContactManager.buildUri(managerName, params)
-                       self._availableManagers[managerName] =  managerUri
-
-       def get_addressbooks(self):
-               for name, uri in self._availableManagers.iteritems():
-                       book = QtContactsAddressBook(name, uri)
-                       if book.error:
-                               print "Could not load %r due to %r" % (name, book.error)
-                       else:
-                               yield book
-
-
-class _EmptyAddressBookFactory(object):
-
-       def get_addressbooks(self):
-               if False:
-                       yield None
-
-
-if QtContacts is not None:
-       QtContactsAddressBookFactory = _QtContactsAddressBookFactory
-else:
-       QtContactsAddressBookFactory = _EmptyAddressBookFactory
-       print "QtContacts support not available"
-
-
-if __name__ == "__main__":
-       factory = QtContactsAddressBookFactory()
-       books = factory.get_addressbooks()
-       for book in books:
-               print book.name
-               print book.get_contacts()