geonode.tests.suite.runner

Attributes

WORKER_MAX

WORKER_COUNT

NOT_THREAD_SAFE

PARENT_TIMEOUT

WORKER_TIMEOUT

logger

null_file

Classes

GeoNodeBaseSuiteDiscoverRunner

BufferWritesDevice

ParallelTestSuiteRunner

DjangoParallelTestSuiteRunner

DjangoParallelTestRunner

TwistedParallelTestSuiteRunner

TestResult

NullTimeKeeper

TimeKeeper

Module Contents

geonode.tests.suite.runner.WORKER_MAX[source]
geonode.tests.suite.runner.WORKER_COUNT[source]
geonode.tests.suite.runner.NOT_THREAD_SAFE[source]
geonode.tests.suite.runner.PARENT_TIMEOUT[source]
geonode.tests.suite.runner.WORKER_TIMEOUT[source]
geonode.tests.suite.runner.logger[source]
geonode.tests.suite.runner.null_file[source]
class geonode.tests.suite.runner.GeoNodeBaseSuiteDiscoverRunner(pattern=None, top_level=None, verbosity=1, interactive=True, failfast=True, keepdb=False, reverse=False, debug_mode=False, debug_sql=False, parallel=0, tags=None, exclude_tags=None, test_name_patterns=None, pdb=False, buffer=False, enable_faulthandler=True, timing=False, **kwargs)[source]

Bases: django.test.runner.DiscoverRunner

pattern[source]
top_level[source]
verbosity[source]
interactive[source]
failfast[source]
keepdb[source]
reverse[source]
debug_mode[source]
debug_sql[source]
parallel[source]
tags[source]
exclude_tags[source]
pdb[source]
buffer[source]
test_name_patterns = None[source]
time_keeper[source]
class geonode.tests.suite.runner.BufferWritesDevice[source]
_data = [][source]
write(string)[source]
read()[source]
flush(*args, **kwargs)[source]
isatty()[source]
class geonode.tests.suite.runner.ParallelTestSuiteRunner(pattern=None, top_level=None, verbosity=1, interactive=True, failfast=True, keepdb=False, reverse=False, debug_mode=False, debug_sql=False, parallel=0, tags=None, exclude_tags=None, **kwargs)[source]
pattern[source]
top_level[source]
verbosity[source]
interactive[source]
failfast[source]
keepdb[source]
reverse[source]
debug_mode[source]
debug_sql[source]
parallel[source]
tags[source]
exclude_tags[source]
_keyboard_interrupt_intercepted = False[source]
_worker_max[source]
_worker_count[source]
_not_thread_safe[source]
_parent_timeout[source]
_worker_timeout[source]
_database_names[source]
_get_database_names()[source]
run_tests(test_labels, **kwargs)[source]
_run_tests(tests, **kwargs)[source]
_run_tests_worker(index, tests_queue, results_queue, stop_event)[source]
_pre_tests_func()[source]
_post_tests_func()[source]
_tests_func(worker_index)[source]
_print_result(result)[source]
_exit(start_time, end_time, failure_count, error_count)[source]
_group_by_app(test_labels)[source]

Groups tests by an app. This helps to partition tests so they can be run in separate worker processes.

@TODO: Better partitioning of tests based on the previous runs - measure test suite run time and partition tests so we can spawn as much workers as it makes sense to get the maximum performance benefits.

_group_by_file(test_names)[source]
_create_worker_pool(pool_size, target_func, worker_args)[source]
log(string)[source]
class geonode.tests.suite.runner.DjangoParallelTestSuiteRunner(pattern=None, top_level=None, verbosity=1, interactive=True, failfast=True, keepdb=False, reverse=False, debug_mode=False, debug_sql=False, parallel=0, tags=None, exclude_tags=None, **kwargs)[source]

Bases: ParallelTestSuiteRunner, django.test.runner.DiscoverRunner

pattern[source]
top_level[source]
verbosity[source]
interactive[source]
failfast[source]
keepdb[source]
reverse[source]
debug_mode[source]
debug_sql[source]
parallel[source]
tags[source]
exclude_tags[source]
_keyboard_interrupt_intercepted = False[source]
_worker_max[source]
_worker_count[source]
_not_thread_safe[source]
_parent_timeout[source]
_worker_timeout[source]
_database_names[source]
run_tests(test_labels, extra_tests=None, **kwargs)[source]
run_suite(suite, **kwargs)[source]
setup_databases(**kwargs)[source]
dependency_ordered(test_databases, dependencies)[source]

Reorder test_databases into an order that honors the dependencies described in TEST[DEPENDENCIES].

setup_databases_18(**kwargs)[source]
_tests_func(tests, worker_index)[source]
class geonode.tests.suite.runner.DjangoParallelTestRunner(verbosity=2, failfast=True, **kwargs)[source]

Bases: django.test.runner.DiscoverRunner

stream[source]
class geonode.tests.suite.runner.TwistedParallelTestSuiteRunner(config, verbosity=1, interactive=False, failfast=True, **kwargs)[source]

Bases: ParallelTestSuiteRunner

config[source]
run_tests(test_labels, extra_tests=None, **kwargs)[source]
run_suite()[source]
_tests_func(tests, worker_index)[source]
_make_runner(config, stream)[source]
class geonode.tests.suite.runner.TestResult[source]
dots = False[source]
errors = None[source]
failures = None[source]
exception = None[source]
output = None[source]
from_django_result(result_obj)[source]
from_trial_result(result_obj)[source]
from_exception(exception)[source]
_format_failures(failures)[source]
class geonode.tests.suite.runner.NullTimeKeeper[source]
timed(name)[source]
print_results()[source]
class geonode.tests.suite.runner.TimeKeeper[source]
records[source]
timed(name)[source]
print_results()[source]