Skip to content

Commit

Permalink
Merge pull request #13 from linz/unittest-discover
Browse files Browse the repository at this point in the history
Include subfolders and print final summary
  • Loading branch information
charlottedawson committed Nov 7, 2017
2 parents c8fecca + 5f240a1 commit 77833c6
Show file tree
Hide file tree
Showing 10 changed files with 278 additions and 287 deletions.
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ install:
- docker exec -it qgis-testing-environment sh -c "ln -s /tests_directory /root/.qgis2/python/plugins/${PLUGIN_NAME}"

script:
- docker exec -it qgis-testing-environment sh -c "qgis_testrunner.sh ${PLUGIN_NAME}.tests.test_script_assistant.run_tests"
- docker exec -it qgis-testing-environment sh -c "qgis_testrunner.sh ${PLUGIN_NAME}.tests.run_tests"
23 changes: 23 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,29 @@ Change Log

All notable changes to this project will be documented in this file.

Unreleased
==========

Added
-----

* A final summary of the test results is printed to the QGIS Python Console after all testing

Changed
-------

* Subfolders are now included in test discovery

Removed
-------

* The option to run plugin tests with a delay and repaint has been removed due to inconsistent behaviour

Fixed
-----

* Now handles test directories that were valid when configured but were later moved or deleted

0.4.1 - 2017-07-27
==================

Expand Down
10 changes: 0 additions & 10 deletions docs/configuration.rst
Original file line number Diff line number Diff line change
Expand Up @@ -36,16 +36,6 @@ Don't reload tests setting

This setting turns off the use of ``reload()`` to reload test modules. It'll run tests faster but the test won't update if it has been edited in an external text editor.

Playback UI tests in slow motion setting
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. image:: images/playback_ui_tests.png
:align: center

This setting requires some additional code within the tests to actually do anything.

This setting simply calls ``test_x.run_tests(view_tests=True)`` instead of ``test_x.run_tests()``. The ``view_tests`` parameter is used to include a function in testing that repaints Qt widgets and sleeps for a designated time period. This allows UI tests to be visualised.

Directory validation
--------------------

Expand Down
24 changes: 1 addition & 23 deletions scriptassistant/gui/settings_dialog.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@ def __init__(self, parent=None):
self.cmb_config.lineEdit().textChanged.connect(self.check_changes)
self.cmb_config.currentIndexChanged.connect(self.check_changes)
self.chk_reload.stateChanged.connect(self.check_changes)
self.chk_repaint.stateChanged.connect(self.check_changes)

@pyqtSlot()
def save_configuration(self):
Expand All @@ -55,10 +54,6 @@ def save_configuration(self):
no_reload_value = "Y"
else:
no_reload_value = "N"
if self.chk_repaint.isChecked():
view_tests_value = "Y"
else:
view_tests_value = "N"

# Save to system
settings = QSettings(
Expand Down Expand Up @@ -86,7 +81,6 @@ def save_configuration(self):
settings.setValue("test_data_folder", self.lne_test_data.text())
settings.setValue("test_folder", self.lne_test.text())
settings.setValue("no_reload", no_reload_value)
settings.setValue("view_tests", view_tests_value)
settings.endArray()

config_names = [self.cmb_config.itemText(i) for i in range(self.cmb_config.count())]
Expand Down Expand Up @@ -128,7 +122,6 @@ def delete_configuration(self):
settings.setValue("test_data_folder", config[item]["test_data_folder"])
settings.setValue("test_folder", config[item]["test_folder"])
settings.setValue("no_reload", config[item]["no_reload"])
settings.setValue("view_tests", config[item]["view_tests"])
settings.endArray()

if self.cmb_config.count() == 0:
Expand All @@ -137,7 +130,6 @@ def delete_configuration(self):
self.lne_test.setText("")
self.lne_test_data.setText("")
self.chk_reload.setChecked(False)
self.chk_repaint.setChecked(False)
else:
self.show_configuration()

Expand All @@ -158,7 +150,6 @@ def load_configuration():
"test_data_folder": settings.value("test_data_folder"),
"test_folder": settings.value("test_folder"),
"no_reload": settings.value("no_reload"),
"view_tests": settings.value("view_tests"),
}
settings.endArray()
return config
Expand All @@ -179,10 +170,6 @@ def show_configuration(self):
self.chk_reload.setChecked(True)
elif settings.value("no_reload") == "N":
self.chk_reload.setChecked(False)
if settings.value("view_tests") == "Y":
self.chk_repaint.setChecked(True)
elif settings.value("view_tests") == "N":
self.chk_repaint.setChecked(False)
settings.endArray()

@pyqtSlot()
Expand Down Expand Up @@ -227,10 +214,6 @@ def check_changes(self):
no_reload_value = "Y"
else:
no_reload_value = "N"
if self.chk_repaint.isChecked():
view_tests_value = "Y"
else:
view_tests_value = "N"

# Retrieve from system
settings = QSettings(
Expand All @@ -245,8 +228,7 @@ def check_changes(self):
self.lne_script.text() == settings.value("script_folder") and \
self.lne_test.text() == settings.value("test_folder") and \
self.lne_test_data.text() == settings.value("test_data_folder") and \
no_reload_value == settings.value("no_reload") and \
view_tests_value == settings.value("view_tests"):
no_reload_value == settings.value("no_reload"):
self.btn_save.setEnabled(False)
self.setWindowTitle("Script Assistant Configuration")
else:
Expand Down Expand Up @@ -293,10 +275,6 @@ def show_last_configuration(self):
self.chk_reload.setChecked(True)
elif settings_manager.load_setting("no_reload") == "N":
self.chk_reload.setChecked(False)
if settings_manager.load_setting("view_tests") == "Y":
self.chk_repaint.setChecked(True)
elif settings_manager.load_setting("view_tests") == "N":
self.chk_repaint.setChecked(False)

def closeEvent(self, event):
self.closingDialog.emit()
Expand Down

0 comments on commit 77833c6

Please sign in to comment.