Warning

This document is for an in-development version of Galaxy. You can alternatively view this page in the latest release if it exists or view the top of the latest release's documentation.

galaxy_test.driver package

Submodules

galaxy_test.driver.api module

galaxy_test.driver.driver_util module

Scripts for drivers of Galaxy functional tests.

galaxy_test.driver.driver_util.copy_database_template(source, db_path)[source]

Copy a ‘clean’ sqlite template database.

From file or URL to specified path for sqlite database.

galaxy_test.driver.driver_util.build_logger()[source]

Build a logger for test driver script.

galaxy_test.driver.driver_util.drive_test(test_driver_class)[source]

Instantiate driver class, run, and exit appropriately.

galaxy_test.driver.driver_util.database_conf(db_path, prefix='GALAXY', prefer_template_database=False)[source]

Find (and populate if needed) Galaxy database connection.

galaxy_test.driver.driver_util.get_webapp_global_conf()[source]

Get the global_conf dictionary sent to app_factory.

galaxy_test.driver.driver_util.nose_config_and_run(argv=None, env=None, ignore_files=None, plugins=None)[source]

Setup a nose context and run tests.

Tests are specified by argv (defaulting to sys.argv).

galaxy_test.driver.driver_util.setup_galaxy_config(tmpdir, use_test_file_dir=False, default_install_db_merged=True, default_tool_data_table_config_path=None, default_shed_tool_data_table_config=None, default_job_config_file=None, enable_tool_shed_check=False, default_tool_conf=None, shed_tool_conf=None, datatypes_conf=None, update_integrated_tool_panel=False, prefer_template_database=False, log_format=None, conda_auto_init=False, conda_auto_install=False, use_shared_connection_for_amqp=False)[source]

Setup environment and build config for test Galaxy instance.

class galaxy_test.driver.driver_util.TestDriver[source]

Bases: object

Responsible for the life-cycle of a Galaxy-style functional test.

Sets up servers, configures tests, runs nose, and tears things down. This is somewhat like a Python TestCase - but different because it is meant to provide a main() endpoint.

__init__()[source]

Setup tracked resources.

setup()[source]

Called before tests are built.

build_tests()[source]

After environment is setup, setup nose tests.

tear_down()[source]

Cleanup resources tracked by this object.

stop_servers()[source]
mkdtemp()[source]

Return a temp directory that is properly cleaned up or not based on the config.

run()[source]

Driver whole test.

Setup environment, build tests (if needed), run test, and finally cleanup resources.

galaxy_test.driver.driver_util.wait_for_http_server(host, port, sleep_amount=0.1, sleep_tries=150)[source]

Wait for an HTTP server to boot up.

galaxy_test.driver.integration_util module

Utilities for constructing Galaxy integration tests.

Tests that start an actual Galaxy server with a particular configuration in order to test something that cannot be tested with the default functional/api testing configuration.

galaxy_test.driver.integration_util.skip_if_jenkins(cls)[source]
galaxy_test.driver.integration_util.skip_unless_amqp()[source]
galaxy_test.driver.integration_util.skip_unless_executable(executable)[source]
galaxy_test.driver.integration_util.skip_unless_docker()[source]
galaxy_test.driver.integration_util.skip_unless_kubernetes()[source]
galaxy_test.driver.integration_util.k8s_config_path()[source]
galaxy_test.driver.integration_util.skip_unless_fixed_port()[source]
galaxy_test.driver.integration_util.skip_if_github_workflow()[source]
class galaxy_test.driver.integration_util.IntegrationInstance[source]

Bases: galaxy_test.base.api.UsesApiTestCaseMixin

Unit test case with utilities for spinning up Galaxy.

prefer_template_database = True
require_uwsgi = False
isolate_galaxy_config = True
classmethod setUpClass()[source]

Configure and start Galaxy for a test.

classmethod tearDownClass()[source]

Shutdown Galaxy server and cleanup temp directory.

setUp()[source]
restart(handle_reconfig=None)[source]
classmethod handle_galaxy_config_kwds(galaxy_config_kwds)[source]

Extension point for subclasses to modify arguments used to configure Galaxy.

This method will be passed the keyword argument pairs used to call Galaxy Config object and can modify the Galaxy instance created for the test as needed.

classmethod handle_uwsgi_cli_command(command)[source]

Extension point sub subclasses to modify arguments used to launch uWSGI server.

Command will a list that can be modified.

classmethod temp_config_dir(name)[source]
class galaxy_test.driver.integration_util.IntegrationTestCase(methodName='runTest')[source]

Bases: galaxy_test.driver.integration_util.IntegrationInstance, unittest.case.TestCase

Unit TestCase with utilities for spinning up Galaxy.

galaxy_test.driver.integration_util.integration_module_instance(clazz)[source]
galaxy_test.driver.integration_util.integration_tool_runner(tool_ids)[source]

galaxy_test.driver.test_logging module

galaxy_test.driver.testcase module

class galaxy_test.driver.testcase.DrivenFunctionalTestCase(methodName='runTest')[source]

Bases: galaxy_test.base.testcase.FunctionalTestCase

Variant of FunctionalTestCase that can launch Galaxy instances.

galaxy_driver_class

alias of galaxy_test.driver.driver_util.GalaxyTestDriver