Created new unittest model.

Separete unittest for module.
Only run unittest for compiled modules.

Reviewer: Marcelo Lira <marcelo.lira@openbossa.org>,
          Luciano Wolf <luciano.wolf@openbossa.org>
This commit is contained in:
Renato Filho 2010-06-07 14:43:45 -03:00
commit ab918abc1e
211 changed files with 241 additions and 79 deletions

View file

@ -1,22 +1,44 @@
set(PYSIDE_TIMEOUT 5)
file(GLOB TEST_FILES */*_test.py) macro(TEST_QT_MODULE var name)
if(NOT DISABLE_${name} AND ${var})
add_subdirectory(${name})
endif()
endmacro(TEST_QT_MODULE)
set(test_blacklist ) macro(PYSIDE_TEST)
set(TEST_NAME ${ARGV0})
if (${ARGC} EQUAL 1)
set(EXPECT_TO_FAIL 0)
elseif(${ARGC} EQUAL 2)
set(EXPECT_TO_FAIL ${ARGV1})
else()
message(WARNING "Ivalid call of macro PYSIDE_TEST")
endif()
set(TEST_CMD ${CMAKE_SOURCE_DIR}/tests/run_test.sh ${CMAKE_BINARY_DIR} "${CMAKE_BINARY_DIR}:${CMAKE_SOURCE_DIR}/tests/util" ${PYTHON_EXECUTABLE} "${CMAKE_CURRENT_SOURCE_DIR}/${TEST_NAME}")
add_test(${TEST_NAME} ${TEST_CMD})
set_tests_properties(${TEST_NAME} PROPERTIES
TIMEOUT ${PYSIDE_TIMEOUT}
WILL_FAIL ${EXPECT_TO_FAIL})
endmacro(PYSIDE_TEST)
foreach(test_file ${TEST_FILES})
string(REGEX MATCH "/([^/]+)//?([^/]+)_test.py" test_name ${test_file} ) add_subdirectory(signals)
list(FIND test_blacklist ${CMAKE_MATCH_1}_${CMAKE_MATCH_2} expect_fail) TEST_QT_MODULE(QT_QTCORE_FOUND QtCore)
add_test(${CMAKE_MATCH_1}_${CMAKE_MATCH_2} sh TEST_QT_MODULE(QT_QTGUI_FOUND QtGui)
${CMAKE_CURRENT_SOURCE_DIR}/run_test.sh TEST_QT_MODULE(QT_QTNETWORK_FOUND QtNetwork)
"${pysidebase_BINARY_DIR}:${libpyside_BINARY_DIR}" TEST_QT_MODULE(QT_QTWEBKIT_FOUND QtWebKit)
"${CMAKE_BINARY_DIR}:${CMAKE_CURRENT_SOURCE_DIR}/util" TEST_QT_MODULE(QT_QTSVG_FOUND QtSvg)
${PYTHON_EXECUTABLE} TEST_QT_MODULE(QT_QTXML_FOUND QtXml)
${test_file}) TEST_QT_MODULE(QT_QTTEST_FOUND QtTest)
set_tests_properties(${CMAKE_MATCH_1}_${CMAKE_MATCH_2} PROPERTIES TIMEOUT 5) TEST_QT_MODULE(QT_QTOPENGL_FOUND QtOpenGL)
if (${expect_fail} GREATER -1) TEST_QT_MODULE(QT_QTSQL_FOUND QtSql)
set_tests_properties(${CMAKE_MATCH_1}_${CMAKE_MATCH_2} PROPERTIES WILL_FAIL TRUE) TEST_QT_MODULE(QT_QTUITOOLS_FOUND QtUiTools)
endif(${expect_fail} GREATER -1) TEST_QT_MODULE(QT_QTHELP_FOUND QtHelp)
# Should set python path here TEST_QT_MODULE(QT_QTXMLPATTERNS_FOUND QtXmlPatterns)
# Looks like it's fixed in 2.8: TEST_QT_MODULE(QT_QTMAEMO5_FOUND QtMaemo5)
# http://www.vtk.org/Bug/print_bug_page.php?bug_id=7885 TEST_QT_MODULE(QT_QTSCRIPT_FOUND QtScript)
endforeach(test_file ${TEST_FILES}) TEST_QT_MODULE(QT_QTSCRIPTTOOLS_FOUND QtScriptTools)
TEST_QT_MODULE(QT_QTMULTIMEDIA_FOUND QtMultimedia)
TEST_QT_MODULE(QT_PHONON_FOUND phonon)
TEST_QT_MODULE(QT_QTDECLARATIVE_FOUND QtDeclarative)

View file

@ -0,0 +1,71 @@
PYSIDE_TEST(blocking_signals_test.py)
PYSIDE_TEST(buffer_test.py)
PYSIDE_TEST(child_event_test.py)
PYSIDE_TEST(deletelater_test.py)
PYSIDE_TEST(duck_punching_test.py)
PYSIDE_TEST(missing_symbols_test.py)
PYSIDE_TEST(qabs_test.py)
PYSIDE_TEST(qabstracttransition_test.py)
PYSIDE_TEST(qanimationgroup_test.py)
PYSIDE_TEST(qbitarray_test.py)
PYSIDE_TEST(qbytearray_buffer_protocol_test.py)
PYSIDE_TEST(qbytearray_concatenation_operator_test.py)
PYSIDE_TEST(qbytearray_operator_iadd_test.py)
PYSIDE_TEST(qbytearray_operator_test.py)
PYSIDE_TEST(qbytearray_test.py)
PYSIDE_TEST(qchar_test.py)
PYSIDE_TEST(qcoreapplication_instance_test.py)
PYSIDE_TEST(qdatastream_test.py)
PYSIDE_TEST(qdate_test.py)
PYSIDE_TEST(qenum_test.py)
PYSIDE_TEST(qevent_test.py)
PYSIDE_TEST(qfileinfo_test.py)
PYSIDE_TEST(qfile_test.py)
PYSIDE_TEST(qflags_test.py)
PYSIDE_TEST(qhandle_test.py)
PYSIDE_TEST(qlatin1string_test.py)
PYSIDE_TEST(qlinef_test.py)
PYSIDE_TEST(qlocale_test.py)
PYSIDE_TEST(qmetaobject_test.py)
PYSIDE_TEST(qmodelindex_internalpointer_test.py)
PYSIDE_TEST(qobject_children_segfault_test.py)
PYSIDE_TEST(qobject_connect_notify_test.py)
PYSIDE_TEST(qobject_event_filter_test.py)
PYSIDE_TEST(qobject_inherits_test.py)
PYSIDE_TEST(qobject_parent_test.py)
PYSIDE_TEST(qobject_property_test.py)
PYSIDE_TEST(qobject_protected_methods_test.py)
PYSIDE_TEST(qobject_test.py)
PYSIDE_TEST(qobject_timer_event_test.py)
PYSIDE_TEST(qobject_tr_as_instance_test.py)
PYSIDE_TEST(qpoint_test.py)
PYSIDE_TEST(qprocess_test.py)
PYSIDE_TEST(qrect_test.py)
PYSIDE_TEST(qresource_test.py)
PYSIDE_TEST(qsize_test.py)
PYSIDE_TEST(qslot_object_test.py)
PYSIDE_TEST(qsrand_test.py)
PYSIDE_TEST(qstatemachine_test.py)
PYSIDE_TEST(qstate_test.py)
PYSIDE_TEST(qstring_buffer_protocol_test.py)
PYSIDE_TEST(qstringlist_test.py)
PYSIDE_TEST(qstring_operator_test.py)
PYSIDE_TEST(qstring_test.py)
PYSIDE_TEST(qtext_codec_test.py)
PYSIDE_TEST(qtextstream_test.py)
PYSIDE_TEST(qthread_prod_cons_test.py)
PYSIDE_TEST(qthread_signal_test.py)
PYSIDE_TEST(qthread_test.py)
PYSIDE_TEST(qtimer_singleshot_test.py)
PYSIDE_TEST(qtimer_timeout_test.py)
PYSIDE_TEST(qtnamespace_test.py)
PYSIDE_TEST(qurl_test.py)
PYSIDE_TEST(qvariant_pyobject_test.py)
PYSIDE_TEST(qvariant_test.py)
PYSIDE_TEST(resources_mc.py)
PYSIDE_TEST(static_method_test.py)
PYSIDE_TEST(static_protected_methods_test.py)
PYSIDE_TEST(thread_signals.py)
PYSIDE_TEST(translation_test.py)
PYSIDE_TEST(unaryoperator_test.py)
PYSIDE_TEST(unicode_test.py)

View file

@ -5,14 +5,13 @@ import unittest
import os import os
from tempfile import mkstemp from tempfile import mkstemp
from PySide.QtCore import QObject, SIGNAL, QFile, QThread, QTimer from PySide.QtCore import QObject, SIGNAL, QFile, QThread, QTimer, Qt
from helper import UsesQCoreApplication from helper import UsesQCoreApplication
class MyThread(QThread): class MyThread(QThread):
def run(self): def run(self):
self.emit(SIGNAL("test(const QString&)"), self.emit(SIGNAL("test(const QString&)"), "INdT - PySide");
"INdT - PySide");
class TestThreadSignal(UsesQCoreApplication): class TestThreadSignal(UsesQCoreApplication):
@ -20,18 +19,13 @@ class TestThreadSignal(UsesQCoreApplication):
def _callback(self, msg): def _callback(self, msg):
self.assertEqual(msg, "INdT - PySide") self.assertEqual(msg, "INdT - PySide")
self.__called__ = True self.__called__ = True
self._quit()
def _quit(self):
self.app.quit() self.app.quit()
def testThread(self): def testThread(self):
t = MyThread() t = MyThread()
QObject.connect(t, SIGNAL("test(const QString&)"), QObject.connect(t, SIGNAL("test(const QString&)"), self._callback);
self._callback);
t.start() t.start()
QTimer.singleShot(100, self._quit)
self.app.exec_() self.app.exec_()
self.assert_(self.__called__); self.assert_(self.__called__);

View file

@ -0,0 +1,2 @@
PYSIDE_TEST(qdeclarativenetwork_test.py FALSE)
PYSIDE_TEST(qdeclarativeview_test.py FALSE)

View file

@ -0,0 +1,58 @@
PYSIDE_TEST(add_action_test.py)
PYSIDE_TEST(customproxywidget_test.py)
PYSIDE_TEST(float_to_int_implicit_conversion_test.py)
PYSIDE_TEST(grandparent_method_test.py)
PYSIDE_TEST(hashabletype_test.py)
PYSIDE_TEST(keep_reference_test.py)
PYSIDE_TEST(missing_symbols_test.py)
PYSIDE_TEST(paint_event_test.py)
PYSIDE_TEST(parent_method_test.py)
PYSIDE_TEST(python_properties_test.py)
PYSIDE_TEST(qapplication_exit_segfault_test.py)
PYSIDE_TEST(qapplication_singleton_test.py)
PYSIDE_TEST(qapp_test.py)
PYSIDE_TEST(qbrush_test.py)
PYSIDE_TEST(qcolor_test.py)
PYSIDE_TEST(qdatastream_gui_operators_test.py)
PYSIDE_TEST(qfontdialog_test.py)
PYSIDE_TEST(qfontmetrics_test.py)
PYSIDE_TEST(qgraphicsitem_isblocked_test.py)
PYSIDE_TEST(qgraphicsitem_test.py)
PYSIDE_TEST(qgraphicsproxywidget_test.py)
PYSIDE_TEST(qgraphicsscene_test.py)
PYSIDE_TEST(qinputdialog_get_test.py)
PYSIDE_TEST(qitemselection_test.py)
PYSIDE_TEST(qlayout_ref_test.py)
PYSIDE_TEST(qlayout_test.py)
PYSIDE_TEST(qlcdnumber_test.py)
PYSIDE_TEST(qlistwidgetitem_test.py)
PYSIDE_TEST(qmainwindow_test.py)
PYSIDE_TEST(qmatrix_test.py)
PYSIDE_TEST(qmenuadd_test.py)
PYSIDE_TEST(qmenu_test.py)
PYSIDE_TEST(qobject_mi_test.py)
PYSIDE_TEST(qpainter_test.py)
PYSIDE_TEST(qpen_test.py)
PYSIDE_TEST(qpixmap_test.py)
PYSIDE_TEST(qpushbutton_test.py)
PYSIDE_TEST(qradialgradient_test.py)
PYSIDE_TEST(qregion_test.py)
PYSIDE_TEST(qshortcut_test.py)
PYSIDE_TEST(qstandarditemmodel_test.py)
PYSIDE_TEST(qstring_qkeysequence_test.py)
PYSIDE_TEST(qstyle_test.py)
PYSIDE_TEST(qtableview_test.py)
PYSIDE_TEST(qtabwidget_test.py)
PYSIDE_TEST(qtextedit_test.py)
PYSIDE_TEST(qtoolbar_test.py)
PYSIDE_TEST(qtoolbox_test.py)
PYSIDE_TEST(qvariant_test.py)
PYSIDE_TEST(qwidget_setlayout_test.py)
PYSIDE_TEST(qwidget_test.py TRUE) #Bug 237
PYSIDE_TEST(reference_count_test.py)
PYSIDE_TEST(standardpixmap_test.py)
PYSIDE_TEST(timed_app_test.py)
PYSIDE_TEST(virtual_protected_inheritance_test.py)
PYSIDE_TEST(virtual_pure_override.py)
PYSIDE_TEST(wrong_return_test.py)
PYSIDE_TEST(x11_symbols.py)

Some files were not shown because too many files have changed in this diff Show more