diff --git a/python/plugins/processing/tests/AlgorithmsTestBase.py b/python/plugins/processing/tests/AlgorithmsTestBase.py index 9d74c7c64de..99292e394dc 100644 --- a/python/plugins/processing/tests/AlgorithmsTestBase.py +++ b/python/plugins/processing/tests/AlgorithmsTestBase.py @@ -41,19 +41,6 @@ from osgeo.gdalconst import GA_ReadOnly from numpy import nan_to_num from copy import deepcopy -import processing - -from processing.script.ScriptAlgorithm import ScriptAlgorithm # NOQA - -from processing.modeler.ModelerAlgorithmProvider import ModelerAlgorithmProvider # NOQA -from processing.algs.qgis.QGISAlgorithmProvider import QGISAlgorithmProvider # NOQA -#from processing.algs.grass7.Grass7AlgorithmProvider import Grass7AlgorithmProvider # NOQA -#from processing.algs.gdal.GdalAlgorithmProvider import GdalAlgorithmProvider # NOQA -#from processing.algs.saga.SagaAlgorithmProvider import SagaAlgorithmProvider # NOQA -from processing.script.ScriptAlgorithmProvider import ScriptAlgorithmProvider # NOQA -#from processing.preconfigured.PreconfiguredAlgorithmProvider import PreconfiguredAlgorithmProvider # NOQA - - from qgis.core import (QgsVectorLayer, QgsRasterLayer, QgsFeatureRequest, @@ -65,9 +52,11 @@ from qgis.core import (QgsVectorLayer, QgsProcessingFeedback) from qgis.testing import _UnexpectedSuccess - from utilities import unitTestDataPath +import processing +from processing.script.ScriptAlgorithm import ScriptAlgorithm # NOQA + def processingTestDataPath(): return os.path.join(os.path.dirname(__file__), 'testdata') diff --git a/python/plugins/processing/tests/CMakeLists.txt b/python/plugins/processing/tests/CMakeLists.txt index 4aa7f67c155..3340ae9da73 100644 --- a/python/plugins/processing/tests/CMakeLists.txt +++ b/python/plugins/processing/tests/CMakeLists.txt @@ -15,4 +15,5 @@ IF(ENABLE_TESTS) ADD_PYTHON_TEST(ProcessingScriptAlgorithmsTest ScriptAlgorithmsTest.py) ADD_PYTHON_TEST(ProcessingGrass7AlgorithmsImageryTest Grass7AlgorithmsImageryTest.py) ADD_PYTHON_TEST(ProcessingGrass7AlgorithmsRasterTest Grass7AlgorithmsRasterTest.py) + ADD_PYTHON_TEST(ProcessingSagaAlgorithmsTest SagaAlgorithmsTest.py) ENDIF(ENABLE_TESTS) diff --git a/python/plugins/processing/tests/SagaAlgorithmsTest.py b/python/plugins/processing/tests/SagaAlgorithmsTest.py new file mode 100644 index 00000000000..3195bb0f04e --- /dev/null +++ b/python/plugins/processing/tests/SagaAlgorithmsTest.py @@ -0,0 +1,56 @@ +# -*- coding: utf-8 -*- + +""" +*************************************************************************** + SagaAlgorithmsTests.py + --------------------- + Date : September 2017 + Copyright : (C) 2017 by Alexander Bruy + Email : alexander dot bruy at gmail dot com +*************************************************************************** +* * +* This program is free software; you can redistribute it and/or modify * +* it under the terms of the GNU General Public License as published by * +* the Free Software Foundation; either version 2 of the License, or * +* (at your option) any later version. * +* * +*************************************************************************** +""" + +__author__ = 'Alexander Bruy' +__date__ = 'September 2017' +__copyright__ = '(C) 2017, Alexander Bruy' + +# This will get replaced with a git SHA1 when you do a git archive + +__revision__ = ':%H$' + +import nose2 +import shutil + +from qgis.testing import start_app, unittest +import AlgorithmsTestBase + + +class TestSagaAlgorithms(unittest.TestCase, AlgorithmsTestBase.AlgorithmsTest): + + @classmethod + def setUpClass(cls): + start_app() + from processing.core.Processing import Processing + Processing.initialize() + cls.cleanup_paths = [] + + @classmethod + def tearDownClass(cls): + from processing.core.Processing import Processing + Processing.deinitialize() + for path in cls.cleanup_paths: + shutil.rmtree(path) + + def test_definition_file(self): + return 'saga_algorithm_tests.yaml' + + +if __name__ == '__main__': + nose2.main() diff --git a/python/plugins/processing/tests/testdata/saga_algorithm_tests.yaml b/python/plugins/processing/tests/testdata/saga_algorithm_tests.yaml new file mode 100644 index 00000000000..5c47dfc0258 --- /dev/null +++ b/python/plugins/processing/tests/testdata/saga_algorithm_tests.yaml @@ -0,0 +1,4 @@ +# See ../README.md for a description of the file format + +tests: +