__main__.py :  » Game-2D-3D » Pygame » pygame-1.9.1release » test » Python Open Source

Home
Python Open Source
1.3.1.2 Python
2.Ajax
3.Aspect Oriented
4.Blog
5.Build
6.Business Application
7.Chart Report
8.Content Management Systems
9.Cryptographic
10.Database
11.Development
12.Editor
13.Email
14.ERP
15.Game 2D 3D
16.GIS
17.GUI
18.IDE
19.Installer
20.IRC
21.Issue Tracker
22.Language Interface
23.Log
24.Math
25.Media Sound Audio
26.Mobile
27.Network
28.Parser
29.PDF
30.Project Management
31.RSS
32.Search
33.Security
34.Template Engines
35.Test
36.UML
37.USB Serial
38.Web Frameworks
39.Web Server
40.Web Services
41.Web Unit
42.Wiki
43.Windows
44.XML
Python Open Source » Game 2D 3D » Pygame 
Pygame » pygame 1.9.1release » test » __main__.py
"""Load and run the Pygame test suite

python -c "import pygame.tests.go" [<test options>]

or

python test/go.py [<test options>]

Command line option --help displays a command line usage message.

run_tests.py in the main distribution directory is an alternative to test.go

"""

import sys

if __name__ == '__main__':
    import os
    pkg_dir = os.path.split(os.path.abspath(__file__))[0]
    parent_dir, pkg_name = os.path.split(pkg_dir)
    is_pygame_pkg = (pkg_name == 'tests' and
                     os.path.split(parent_dir)[1] == 'pygame')
    if not is_pygame_pkg:
        sys.path.insert(0, parent_dir)
else:
    is_pygame_pkg = __name__.startswith('pygame.tests.')

if is_pygame_pkg:
    from pygame.tests.test_utils.run_tests import run
    from pygame.tests.test_utils.test_runner import opt_parser
else:
    from test.test_utils.run_tests import run
    from test.test_utils.test_runner import opt_parser

if is_pygame_pkg:
    test_pkg_name = "pygame.tests"
else:
    test_pkg_name = "test"
program_name = sys.argv[0]
if program_name == '-c':
    program_name = 'python -c "import %s.go"' % test_pkg_name

###########################################################################
# Set additional command line options
#
# Defined in test_runner.py as it shares options, added to here

opt_parser.set_usage("""

Runs all or some of the %(pkg)s.xxxx_test tests.

$ %(exec)s sprite threads -sd

Runs the sprite and threads module tests isolated in subprocesses, dumping
all failing tests info in the form of a dict.

""" % {'pkg': test_pkg_name, 'exec': program_name})

opt_parser.add_option (
     "-d",  "--dump", action = 'store_true',
     help   = "dump failures/errors as dict ready to eval" )

opt_parser.add_option (
     "-F",  "--file",
     help   = "dump failures/errors to a file" )

opt_parser.add_option (
     "-a",  "--all", action = 'store_true',
     help   = "dump all results not just errors eg. -da" )

opt_parser.add_option (
     "-m",  "--multi_thread", metavar = 'THREADS', type = 'int',
     help   = "run subprocessed tests in x THREADS" )

opt_parser.add_option (
     "-t",  "--time_out", metavar = 'SECONDS', type = 'int',
     help   = "kill stalled subprocessed tests after SECONDS" )

opt_parser.add_option (
     "-f",  "--fake", metavar = "DIR",
     help   = "run fake tests in run_tests__tests/$DIR" )

opt_parser.add_option (
     "-p",  "--python", metavar = "PYTHON",
     help   = "path to python excutable to run subproccesed tests\n"
              "default (sys.executable): %s" % sys.executable)

opt_parser.add_option (
     "-I",  "--interactive", action = 'store_true',
     help   = "include tests requiring user input")

###########################################################################
# Set run() keyword arguements according to command line arguemnts.
# args will be the test module list, passed as positional argumemts.

options, args = opt_parser.parse_args()

kwds = {}
if options.incomplete:
    kwds['incomplete'] = True
if options.nosubprocess:
    kwds['nosubprocess'] = True
if options.dump:
    kwds['dump'] = True
if options.file:
    kwds['file'] = options.file
kwds['timings'] = options.timings
if options.exclude:
    kwds['exclude'] = options.exclude
if options.show_output:
    kwds['show_output'] = True
if options.all:
    kwds['all'] = True
if options.randomize:
    kwds['randomize'] = True
if options.seed is not None:
    kwds['seed'] = options.seed
if options.multi_thread is not None:
    kwds['multi_thread'] = options.multi_thread
if options.time_out is not None:
    kwds['time_out'] = options.time_out
if options.fake:
    kwds['fake'] = options.fake
if options.python:
    kwds['python'] = options.python
if options.interactive:
    kwds['interactive'] = True

###########################################################################
# Run the test suite.
run(*args, **kwds)


www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.