diff --git a/.travis.yml b/.travis.yml index 983626f63..9325cd97b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,6 +9,6 @@ python: install: - pip install coveralls script: - make test + coverage run tests/run.py after_success: coveralls diff --git a/Makefile b/Makefile index d5b9dcafe..119159485 100644 --- a/Makefile +++ b/Makefile @@ -14,10 +14,7 @@ lint: pylint -E telegram test: - @- $(foreach TEST, $(wildcard tests/test_*.py), python $(TEST);) - -coverage: - @- $(foreach TEST, $(wildcard tests/test_*.py), coverage run $(TEST);) + python tests/run.py help: @echo "Available targets:" diff --git a/tests/run.py b/tests/run.py new file mode 100644 index 000000000..3b7dd1ba9 --- /dev/null +++ b/tests/run.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python +# +# A library that provides a Python interface to the Telegram Bot API +# Copyright (C) 2015 Leandro Toledo de Souza +# +# 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 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see [http://www.gnu.org/licenses/]. + +import os +import glob +import unittest + +suite = unittest.TestSuite() +for test_file in glob.glob('tests/test_*.py'): + test_module = os.path.basename(test_file).replace('.py', '') + suite.addTest(unittest.defaultTestLoader.loadTestsFromName(test_module)) + +unittest.TextTestRunner().run(suite)