1 # -*- coding: utf-8 -*-
3 # gPodder - A media aggregator and podcast client
4 # Copyright (c) 2005-2010 Thomas Perl and the gPodder Team
6 # gPodder is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or
9 # (at your option) any later version.
11 # gPodder is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
21 # Run Doctests and Unittests for gPodder modules
22 # 2009-02-25 Thomas Perl <thp@gpodder.org>
32 except ImportError, e
:
33 print >>sys
.stderr
, """
34 Error: Unit tests require the "minimock" module (python-minimock).
35 Please install it before running the unit tests.
39 # Which package and which modules in the package should be tested?
44 suite
= unittest
.TestSuite()
46 for module
in modules
:
47 m
= __import__('.'.join((package
, module
)), fromlist
=[module
])
48 coverage_modules
.append(m
)
49 suite
.addTest(doctest
.DocTestSuite(m
))
51 runner
= unittest
.TextTestRunner(verbosity
=2)
58 if coverage
is not None:
62 result
= runner
.run(suite
)
64 if not result
.wasSuccessful():
67 if coverage
is not None:
69 coverage
.report(coverage_modules
)
73 print >>sys
.stderr
, """
74 No coverage reporting done (Python module "coverage" is missing)
75 Please install the python-coverage package to get coverage reporting.