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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 292 - (hide annotations)
Fri Aug 30 09:44:12 2002 UTC (22 years, 6 months ago) by bh
Original Path: trunk/thuban/test/support.py
File MIME type: text/x-python
File size: 2166 byte(s)
Initial set of tests and
brief instructions on how to run them

1 bh 292 # Copyright (c) 2002 by Intevation GmbH
2     # 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     Support classes and function for the test suite
10     """
11    
12     __version__ = "$Revision$"
13     # $Source$
14     # $Id$
15    
16     import os, sys
17     import unittest
18    
19     def thuban_dir():
20     """Return the directory containing the Thuban package"""
21     thisdir = os.path.dirname(__file__)
22     return os.path.join(thisdir, os.pardir)
23    
24    
25     def add_thuban_dir_to_path():
26     """Insert the Thuban directory at the beginning of the python path.
27    
28     If it's already part of the path, remove later occurrences.
29     """
30     dir = thuban_dir()
31     while 1:
32     try:
33     sys.path.remove(dir)
34     except ValueError:
35     break
36     sys.path.insert(0, dir)
37    
38    
39     _initthuban_done = 0
40     def initthuban():
41     """Initialize the interpreter for using Thuban modules
42     """
43     global _initthuban_done
44     if not _initthuban_done:
45     add_thuban_dir_to_path()
46     import thubaninit
47     _initthuban_done = 1
48    
49     def run_suite(suite):
50     """Run the test suite suite and return the result"""
51     runner = unittest.TextTestRunner(verbosity = 2)
52     return runner.run(suite)
53    
54    
55     def create_temp_dir():
56     """Create a temporary directory and return its name.
57    
58     The temporary directory is always called temp and is created in the
59     directory where support module is located.
60    
61     If the temp directory already exists, just return the name.
62     """
63     name = os.path.abspath(os.path.join(os.path.dirname(__file__), "temp"))
64    
65     # if the directory already exists, we're done
66     if os.path.isdir(name):
67     return name
68    
69     # create the directory
70     os.mkdir(name)
71     return name
72    
73    
74     class FileTestMixin:
75    
76     """Mixin class for tests that use files in the temporary directory
77     """
78    
79     def temp_file_name(self, basename):
80     """Return the full name of the file named basename in the temp. dir"""
81     return os.path.join(create_temp_dir(), basename)
82    
83     def temp_dir(self):
84     """Return the name of the directory for the temporary files"""
85     return create_temp_dir()

Properties

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

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26