root/galaxy-central/eggs/GeneTrack-2.0.0_beta_1_dev_48da9e998f0caf01c5be731e926f4b0481f658f0-py2.6.egg/tests/testlib/testoptions.py

リビジョン 3, 2.8 KB (コミッタ: kohda, 14 年 前)

Install Unix tools  http://hannonlab.cshl.edu/galaxy_unix_tools/galaxy.html

行番号 
1"""
2Option parser for all tests
3
4Needs to be a separate module to avoid circular imports
5"""
6
7import sys, optparse
8
9def option_parser():
10    """
11    Returns the option parser for tests.
12   
13    This parser needs to be able to handle all flags that may be passed
14    to any test
15   
16    Due to the optparse desing we cannot create a 'partial' option parser
17    that would ignore extra parameters while allowing it to be later be
18    extended. So it is either every flag goes the main option parser,
19    or each module will have to implement almost identical parsers.
20
21    Having one large option parser seemed the lesser of two bad choices.
22    """
23
24    parser = optparse.OptionParser()
25
26    # passing -n will disable the pathfix, use it to test global pygr distributions
27    parser.add_option(
28        '-n', '--nopath', action="store_true", dest="no_pathfix", default=False,
29        help="do not alter the python import path"
30    )
31
32    # add the regular build directory rather than the in place directory
33    parser.add_option(
34        '-b', '--buildpath', action="store_true", dest="builddir", default=False,
35        help="use the platform specific build directory",
36    )
37
38    # stops testing immediately after a test suite fails
39    parser.add_option(
40        '-s', '--strict', action="store_true",
41        dest="strict", default=False,
42        help="stops testing after a test suite fails"
43    )
44
45    # exclude the modules listed in arguments from all the tests
46    parser.add_option(
47        '-x', '--exclude', action="store_true",
48        dest="exclude", default=False,
49        help="excludes the files that are listed"
50    )
51
52    # verbosity can be 0,1 and 2 (increasing verbosity)
53    parser.add_option(
54        '-v', '--verbosity', action="store",
55        dest="verbosity", type="int", default=1,
56        help="sets the verbosity (0, 1, or 2)",
57    )
58
59    # reset the test directory
60    parser.add_option(
61        '-r', '--reset', action="store_true",
62        dest="reset", default=False,
63        help="resets the test directory"
64    )
65
66    # long options are typically used only within individual tests
67   
68    # executes figleaf to collect the coverage data
69    parser.add_option(
70        '--coverage', action="store_true", dest="coverage", default=False,
71        help="runs figleaf and collects the coverage information into the html directory"
72    )
73
74    # runs the performance tests
75    parser.add_option(
76        '--performance', action="store_true", dest="performance", default=False,
77        help="runs the performance tests (not implemented)"
78    )
79
80
81    return parser
82
83if __name__ == '__main__':
84    # list flags here
85    flags = " --coverage"
86
87    sys.argv.extend( flags.split() )
88    parser = option_parser()
89    options, args = parser.parse_args()
90   
91    print options
92   
93   
Note: リポジトリブラウザについてのヘルプは TracBrowser を参照してください。