/[thuban]/branches/WIP-pyshapelib-bramz/test/runtests.py
ViewVC logotype

Annotation of /branches/WIP-pyshapelib-bramz/test/runtests.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1245 - (hide annotations)
Thu Jun 19 19:29:23 2003 UTC (21 years, 8 months ago) by bh
Original Path: trunk/thuban/test/runtests.py
File MIME type: text/x-python
File size: 1951 byte(s)
Add XML validation to some of the tests. Validation will only be
done if pyRXP is installed (http://reportlab.com/xml/pyrxp.html).
To make the DTD available to the test cases it's moved into
Resources/XML

* Resources/XML/thuban.dtd: New. This is now the real Thuban DTD
for versions up to and including 0.2. Two slight changes: added an
encoding specification and fixed the comment which refered to
GRASS, not Thuban

* test/xmlsupport.py: New support module for tests involving XML.
Currently there's a mix-in class for XML validation.

* test/test_xmlsupport.py: New. Tests for the xmlsupport module

* test/test_save.py (SaveSessionTest): Derive from ValidationTest
so that we can validate the
(SaveSessionTest.testEmptySession)
(SaveSessionTest.testSingleLayer)
(SaveSessionTest.testSingleLayer)
(SaveSessionTest.testLayerProjection)
(SaveSessionTest.testRasterLayer)
(SaveSessionTest.testClassifiedLayer): Validate the generated XML

* test/runtests.py (main): Call print_additional_summary instead
of print_garbage_information

* test/support.py (resource_dir): New function to return the
"Resource" subdirectory
(print_additional_summary): New function to combine several
summary functions
(run_tests): Use print_additional_summary instead of calling
print_garbage_information directly

1 bh 597 # Copyright (c) 2002, 2003 by Intevation GmbH
2 bh 292 # Authors:
3     # Bernhard Herzog <[email protected]>
4     #
5     # This program is free software under the GPL (>=v2)
6     # Read the file COPYING coming with Thuban for details.
7    
8     """
9     Main entry point for the Thuban test suite.
10    
11     Just run this file as a python script to execute all tests
12     """
13    
14    
15     import os, sys
16 bh 1219 import warnings
17 bh 292 import unittest
18    
19     import support
20     support.initthuban()
21     import Thuban.Lib.connector
22    
23     def main():
24     """Run all the tests in the Thuban test suite"""
25    
26 bh 1219 # Turn Thuban's deprecation warnings into errors so they're cought
27     # by the tests
28     #
29     # Maintenance: Keep a warning filter until the backwards
30     # compatibility code is removed at which time using the old
31     # interfaces should lead to other errors anyway.
32    
33     # The layer attributes table, shapetable, shapefile and filename are
34     # deprecated.
35     warnings.filterwarnings("error", "The Layer attribute.*is deprecated",
36     DeprecationWarning)
37    
38     # Usage of the old table interface. This old interface is still used
39     # by the test_table.py module which calls filterwarnings too to
40     # ignore the warnings issued by its own intended use of the old
41     # interface.
42     warnings.filterwarnings("error", ".*old table interface.*",
43     DeprecationWarning)
44    
45    
46     # All Python files starting with test in the current directory
47     # contain test cases.
48     # FIXME: It should be possible to run runtests.py even when not in
49     # the test directory
50 bh 292 files = os.listdir(os.curdir)
51     names = []
52     for file in files:
53     if file[:4] == "test" and file[-3:] == ".py":
54     names.append(file[:-3])
55    
56     suite = unittest.defaultTestLoader.loadTestsFromNames(names)
57     runner = unittest.TextTestRunner(verbosity = 2)
58     result = runner.run(suite)
59    
60 bh 1245 support.print_additional_summary()
61 bh 292
62     sys.exit(not result.wasSuccessful())
63    
64    
65     if __name__ == "__main__":
66     main()

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26