Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
[processing] Move AlgorithmTests to QgisAlgorithmTests
  • Loading branch information
m-kuhn committed Feb 23, 2016
1 parent db60a04 commit 450fb13
Show file tree
Hide file tree
Showing 4 changed files with 62 additions and 21 deletions.
Expand Up @@ -2,7 +2,7 @@

"""
***************************************************************************
test_algorithms.py
AlgorithmsTest.py
---------------------
Date : January 2016
Copyright : (C) 2016 by Matthias Kuhn
Expand Down Expand Up @@ -46,11 +46,6 @@
QgsMapLayerRegistry
)

from qgis.testing import (
start_app,
unittest
)

from utilities import (
unitTestDataPath
)
Expand All @@ -60,25 +55,13 @@ def processingTestDataPath():
return os.path.join(os.path.dirname(__file__), 'testdata')


class TestAlgorithms(unittest.TestCase):

@classmethod
def setUpClass(cls):
start_app()
from processing.core.Processing import Processing
Processing.initialize()
cls.cleanup_paths = []

@classmethod
def tearDownClass(cls):
for path in cls.cleanup_paths:
shutil.rmtree(path)
class AlgorithmsTest():

def test_algorithms(self):
"""
This is the main test function. All others will be executed based on the definitions in testdata/algorithm_tests.yaml
"""
with open(os.path.join(processingTestDataPath(), 'algorithm_tests.yaml'), 'r') as stream:
with open(os.path.join(processingTestDataPath(), self.test_definition_file()), 'r') as stream:
algorithm_tests = yaml.load(stream)

for algtest in algorithm_tests['tests']:
Expand Down
2 changes: 1 addition & 1 deletion python/plugins/processing/tests/CMakeLists.txt
Expand Up @@ -7,5 +7,5 @@ PLUGIN_INSTALL(processing tests/data ${TEST_DATA_FILES})
IF(ENABLE_TESTS)
INCLUDE(UsePythonTest)
ADD_PYTHON_TEST(ProcessingParametersTest ParametersTest.py)
ADD_PYTHON_TEST(ProcessingAlgorithmsTest AlgorithmsTest.py)
ADD_PYTHON_TEST(ProcessingQgisAlgorithmsTest QgisAlgorithmsTest.py)
ENDIF(ENABLE_TESTS)
58 changes: 58 additions & 0 deletions python/plugins/processing/tests/QgisAlgorithmsTest.py
@@ -0,0 +1,58 @@
# -*- coding: utf-8 -*-

"""
***************************************************************************
QgisAlgorithmTests.py
---------------------
Date : January 2016
Copyright : (C) 2016 by Matthias Kuhn
Email : matthias@opengis.ch
***************************************************************************
* *
* 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__ = 'Matthias Kuhn'
__date__ = 'January 2016'
__copyright__ = '(C) 2016, Matthias Kuhn'

# This will get replaced with a git SHA1 when you do a git archive

__revision__ = ':%H$'

import AlgorithmsTestBase

import nose2
import shutil

from qgis.testing import (
start_app,
unittest
)


class TestQgisAlgorithms(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):
for path in cls.cleanup_paths:
shutil.rmtree(path)

def test_definition_file(self):
return 'qgis_algorithm_tests.yaml'


if __name__ == '__main__':
nose2.main()

0 comments on commit 450fb13

Please sign in to comment.