tool_shed.test.functional package

Submodules

tool_shed.test.functional.test_0000_basic_repository_features module

class tool_shed.test.functional.test_0000_basic_repository_features.TestBasicRepositoryFeatures[source]

Bases: ShedTwillTestCase

Test core repository features.

test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_repository_without_categories()[source]

Verify that a repository cannot be created unless at least one category has been defined.

test_0010_create_categories()[source]

Create categories for this test suite

test_0015_create_repository()[source]

Create the filtering repository

test_0020_edit_repository()[source]

Edit the repository name, description, and long description

test_0025_change_repository_category()[source]

Change the categories associated with the filtering repository

test_0030_grant_write_access()[source]

Grant write access to another user

test_0035_upload_filtering_1_1_0()[source]

Upload filtering_1.1.0.tar to the repository

test_0040_verify_repository()[source]

Display basic repository pages

test_0045_alter_repository_states()[source]

Test toggling the malicious and deprecated repository flags.

test_0050_display_repository_tip_file()[source]

Display the contents of filtering.xml in the repository tip revision

test_0055_upload_filtering_txt_file()[source]

Upload filtering.txt file associated with tool version 1.1.0.

test_0060_upload_filtering_test_data()[source]

Upload filtering test data.

test_0065_upload_filtering_2_2_0()[source]

Upload filtering version 2.2.0

test_0070_verify_filtering_repository()[source]

Verify the new tool versions and repository metadata.

test_0075_upload_readme_txt_file()[source]

Upload readme.txt file associated with tool version 2.2.0.

test_0080_delete_readme_txt_file()[source]

Delete the readme.txt file.

test_0085_search_for_valid_filter_tool()[source]

Search for the filtering tool by tool ID, name, and version.

test_0090_verify_repository_metadata()[source]

Verify that resetting the metadata does not change it.

test_0095_verify_reserved_repository_name_handling()[source]

Check that reserved repository names are handled correctly.

test_0100_verify_reserved_username_handling()[source]

Check that reserved usernames are handled correctly.

test_0105_contact_repository_owner()[source]
test_0110_delete_filtering_repository()[source]

Delete the filtering_0000 repository and verify that it no longer has any downloadable revisions.

test_0115_undelete_filtering_repository()[source]

Undelete the filtering_0000 repository and verify that it now has two downloadable revisions.

test_0120_enable_email_notifications()[source]

Enable email notifications for test user 2 on filtering_0000.

test_0125_upload_new_readme_file()[source]

Upload a new readme file to the filtering_0000 repository and verify that there is no error.

test_0130_verify_handling_of_invalid_characters()[source]

Load the above changeset in the change log and confirm that there is no server error displayed.

test_0135_api_get_repositories_in_category()[source]

Load the api endpoint for repositories in a category.

test_0140_view_invalid_changeset()[source]

View repository using an invalid changeset

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0010_repository_with_tool_dependencies module

tool_shed.test.functional.test_0010_repository_with_tool_dependencies.repository_long_description = "Long description of Galaxy's freebayes tool"
  1. Create repository freebayes_0020 and upload only the tool XML.

  2. Upload the tool_data_table_conf.xml.sample file.

  3. Upload sam_fa_indices.loc.sample.

  4. Upload a tool_dependencies.xml file that should not parse correctly.

  5. Upload a tool_dependencies.xml file that specifies a version that does not match the tool’s requirements.

  6. Upload a valid tool_dependencies.xml file.

  7. Check for the appropriate strings on the manage repository page.

class tool_shed.test.functional.test_0010_repository_with_tool_dependencies.TestFreebayesRepository[source]

Bases: ShedTwillTestCase

Testing freebayes with tool data table entries, .loc files, and tool dependencies.

test_0000_create_or_login_admin_user()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_category()[source]

Create a category for this test suite

test_0010_create_freebayes_repository_and_upload_tool_xml()[source]

Create freebayes repository and upload only freebayes.xml.

We are at step 1 - Create repository freebayes_0020 and upload only the tool XML. Uploading only the tool XML file should result in an invalid tool and an error message on upload, as well as on the manage repository page.

test_0015_upload_missing_tool_data_table_conf_file()[source]

Upload the missing tool_data_table_conf.xml.sample file to the repository.

We are at step 2 - Upload the tool_data_table_conf.xml.sample file. Uploading the tool_data_table_conf.xml.sample alone should not make the tool valid, but the error message should change.

test_0020_upload_missing_sample_loc_file()[source]

Upload the missing sam_fa_indices.loc.sample file to the repository.

We are at step 3 - Upload the tool_data_table_conf.xml.sample file. Uploading the tool_data_table_conf.xml.sample alone should not make the tool valid, but the error message should change.

test_0025_upload_malformed_tool_dependency_xml()[source]

Upload tool_dependencies.xml with bad characters in the readme tag.

We are at step 4 - Upload a tool_dependencies.xml file that should not parse correctly. Upload a tool_dependencies.xml file that contains <> in the text of the readme tag. This should show an error message about malformed xml.

test_0030_upload_invalid_tool_dependency_xml()[source]

Upload tool_dependencies.xml defining version 0.9.5 of the freebayes package.

We are at step 5 - Upload a tool_dependencies.xml file that specifies a version that does not match the tool’s requirements. This should result in a message about the tool dependency configuration not matching the tool’s requirements.

test_0035_upload_valid_tool_dependency_xml()[source]

Upload tool_dependencies.xml defining version 0.9.4_9696d0ce8a962f7bb61c4791be5ce44312b81cf8 of the freebayes package.

We are at step 6 - Upload a valid tool_dependencies.xml file. At this stage, there should be no errors on the upload page, as every missing or invalid file has been corrected.

test_0040_verify_tool_dependencies()[source]

Verify that the uploaded tool_dependencies.xml specifies the correct package versions.

We are at step 7 - Check for the appropriate strings on the manage repository page. Verify that the manage repository page now displays the valid tool dependencies, and that there are no invalid tools shown on the manage page.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0020_basic_repository_dependencies module

class tool_shed.test.functional.test_0020_basic_repository_dependencies.TestBasicRepositoryDependencies[source]

Bases: ShedTwillTestCase

Testing emboss 5 with repository dependencies.

test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_category()[source]

Create a category for this test suite

test_0010_create_column_maker_repository()[source]

Create and populate column_maker_0020.

test_0020_create_emboss_5_repository_and_upload_files()[source]

Create and populate the emboss_5_0020 repository.

test_0025_generate_and_upload_repository_dependencies_xml()[source]

Generate and upload the repository_dependencies.xml file

test_0030_verify_emboss_5_dependencies()[source]

Verify that the emboss_5 repository now depends on the emboss_datatypes repository with correct name, owner, and changeset revision.

test_0040_verify_repository_metadata()[source]

Verify that resetting the metadata does not change it.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0030_repository_dependency_revisions module

class tool_shed.test.functional.test_0030_repository_dependency_revisions.TestRepositoryDependencyRevisions[source]

Bases: ShedTwillTestCase

Test dependencies on different revisions of a repository.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_category()[source]

Create a category for this test suite

test_0010_create_emboss_5_repository()[source]

Create and populate the emboss_5_0030 repository.

test_0015_create_emboss_6_repository()[source]

Create and populate the emboss_6_0030 repository.

test_0020_create_dependent_repository()[source]

Create and populate the emboss_datatypes_0030 repository.

test_0025_create_emboss_repository()[source]

Create and populate the emboss_0030 repository.

test_0030_generate_repository_dependencies_for_emboss_5()[source]

Generate a repository_dependencies.xml file specifying emboss_datatypes and upload it to the emboss_5 repository.

test_0035_generate_repository_dependencies_for_emboss_6()[source]

Generate a repository_dependencies.xml file specifying emboss_datatypes and upload it to the emboss_6 repository.

test_0040_generate_repository_dependency_on_emboss_5()[source]

Create and upload repository_dependencies.xml for the emboss_5_0030 repository.

test_0045_generate_repository_dependency_on_emboss_6()[source]

Create and upload repository_dependencies.xml for the emboss_6_0030 repository.

test_0050_verify_repository_dependency_revisions()[source]

Verify that different metadata revisions of the emboss repository have different repository dependencies.

test_0055_verify_repository_metadata()[source]

Verify that resetting the metadata does not change it.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0040_repository_circular_dependencies module

class tool_shed.test.functional.test_0040_repository_circular_dependencies.TestRepositoryCircularDependencies[source]

Bases: ShedTwillTestCase

Verify that the code correctly displays repositories with circular repository dependencies.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_category()[source]

Create a category for this test suite

test_0010_create_freebayes_repository()[source]

Create and populate freebayes_0040.

test_0015_create_filtering_repository()[source]

Create and populate filtering_0040.

test_0020_create_dependency_on_freebayes()[source]

Upload a repository_dependencies.xml file that specifies the current revision of freebayes to the filtering_0040 repository.

test_0025_create_dependency_on_filtering()[source]

Upload a repository_dependencies.xml file that specifies the current revision of filtering to the freebayes_0040 repository.

test_0030_verify_repository_dependencies()[source]

Verify that each repository can depend on the other without causing an infinite loop.

test_0035_verify_repository_metadata()[source]

Verify that resetting the metadata does not change it.

test_0040_verify_tool_dependencies()[source]

Verify that freebayes displays tool dependencies.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0050_circular_dependencies_4_levels module

class tool_shed.test.functional.test_0050_circular_dependencies_4_levels.TestRepositoryCircularDependenciesToNLevels[source]

Bases: ShedTwillTestCase

Verify that the code correctly handles circular dependencies down to n levels.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_convert_repository()[source]

Create and populate convert_chars_0050.

test_0010_create_column_repository()[source]

Create and populate convert_chars_0050.

test_0015_create_emboss_datatypes_repository()[source]

noop

test_0020_create_emboss_repository()[source]

Create and populate emboss_0050.

test_0025_create_filtering_repository()[source]

Create and populate filtering_0050.

test_0030_create_freebayes_repository()[source]

Create and populate freebayes_0050.

test_0035_create_bismark_repository()[source]

Create and populate bismark_0050.

test_0040_create_and_upload_dependency_definitions()[source]
test_0045_verify_repository_dependencies()[source]

Verify that the generated dependency circle does not cause an infinite loop. Expected structure:

id: 2 key: http://toolshed.local:10001__ESEP__filtering__ESEP__test__ESEP__871602b4276b
[’http://toolshed.local:10001’, ‘emboss_5’, ‘test’, ‘8de5fe0d7b04’]
id: 3 key: http://toolshed.local:10001__ESEP__emboss_datatypes__ESEP__test__ESEP__dbd4f68bf507

[’http://toolshed.local:10001’, ‘freebayes’, ‘test’, ‘f40028114098’]

id: 4 key: http://toolshed.local:10001__ESEP__freebayes__ESEP__test__ESEP__f40028114098

[’http://toolshed.local:10001’, ‘emboss_datatypes’, ‘test’, ‘dbd4f68bf507’] [’http://toolshed.local:10001’, ‘emboss_5’, ‘test’, ‘8de5fe0d7b04’] [’http://toolshed.local:10001’, ‘column_maker’, ‘test’, ‘83e956bdbac0’]

id: 5 key: http://toolshed.local:10001__ESEP__column_maker__ESEP__test__ESEP__83e956bdbac0

[’http://toolshed.local:10001’, ‘convert_chars’, ‘test’, ‘b28134220c8a’]

id: 6 key: http://toolshed.local:10001__ESEP__convert_chars__ESEP__test__ESEP__b28134220c8a

[’http://toolshed.local:10001’, ‘column_maker’, ‘test’, ‘83e956bdbac0’]

id: 7 key: http://toolshed.local:10001__ESEP__emboss_5__ESEP__test__ESEP__8de5fe0d7b04

[’http://toolshed.local:10001’, ‘emboss_datatypes’, ‘test’, ‘dbd4f68bf507’]

test_0050_verify_tool_dependencies()[source]

Check that freebayes and emboss display tool dependencies.

test_0055_verify_repository_metadata()[source]

Verify that resetting the metadata does not change it.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0070_invalid_tool module

class tool_shed.test.functional.test_0070_invalid_tool.TestBismarkRepository[source]

Bases: ShedTwillTestCase

Testing bismark with valid and invalid tool entries.

test_0000_create_or_login_admin_user()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_category_and_repository()[source]

Create a category for this test suite, then create and populate a bismark repository. It should contain at least one each valid and invalid tool.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0080_advanced_circular_dependencies module

class tool_shed.test.functional.test_0080_advanced_circular_dependencies.TestRepositoryCircularDependencies[source]

Bases: ShedTwillTestCase

Verify that the code correctly handles circular dependencies.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_column_repository()[source]

Create and populate the column_maker repository.

test_0005_create_convert_repository()[source]

Create and populate the convert_chars repository.

test_0020_create_repository_dependencies()[source]

Upload a repository_dependencies.xml file that specifies the current revision of convert_chars_0080 to the column_maker_0080 repository.

test_0025_create_dependency_on_filtering()[source]

Upload a repository_dependencies.xml file that specifies the current revision of filtering to the freebayes_0040 repository.

test_0030_verify_repository_dependencies()[source]

Verify that each repository can depend on the other without causing an infinite loop.

test_0035_verify_repository_metadata()[source]

Verify that resetting the metadata does not change it.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0100_complex_repository_dependencies module

class tool_shed.test.functional.test_0100_complex_repository_dependencies.TestComplexRepositoryDependencies[source]

Bases: ShedTwillTestCase

Test features related to complex repository dependencies.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_bwa_package_repository()[source]

Create and populate package_bwa_0_5_9_0100.

test_0010_create_bwa_base_repository()[source]

Create and populate bwa_base_0100.

test_0015_generate_complex_repository_dependency_invalid_shed_url()[source]

Generate and upload a complex repository definition that specifies an invalid tool shed URL.

test_0020_generate_complex_repository_dependency_invalid_repository_name()[source]

Generate and upload a complex repository definition that specifies an invalid repository name.

test_0025_generate_complex_repository_dependency_invalid_owner_name()[source]

Generate and upload a complex repository definition that specifies an invalid owner.

test_0030_generate_complex_repository_dependency_invalid_changeset_revision()[source]

Generate and upload a complex repository definition that specifies an invalid changeset revision.

test_0035_generate_complex_repository_dependency()[source]

Generate and upload a valid tool_dependencies.xml file that specifies package_bwa_0_5_9_0100.

test_0040_generate_tool_dependency()[source]

Generate and upload a new tool_dependencies.xml file that specifies an arbitrary file on the filesystem, and verify that bwa_base depends on the new changeset revision.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0110_invalid_simple_repository_dependencies module

class tool_shed.test.functional.test_0110_invalid_simple_repository_dependencies.TestBasicRepositoryDependencies[source]

Bases: ShedTwillTestCase

Testing emboss 5 with repository dependencies.

test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_category()[source]

Create a category for this test suite

test_0010_create_emboss_datatypes_repository_and_upload_tarball()[source]

Create and populate the emboss_datatypes repository.

test_0020_create_emboss_5_repository_and_upload_files()[source]

Create and populate the emboss_5_0110 repository.

test_0025_generate_repository_dependency_with_invalid_url()[source]

Generate a repository dependency for emboss 5 with an invalid URL.

test_0030_generate_repository_dependency_with_invalid_name()[source]

Generate a repository dependency for emboss 5 with an invalid name.

test_0035_generate_repository_dependency_with_invalid_owner()[source]

Generate a repository dependency for emboss 5 with an invalid owner.

test_0040_generate_repository_dependency_with_invalid_changeset_revision()[source]

Generate a repository dependency for emboss 5 with an invalid changeset revision.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0120_simple_repository_dependency_multiple_owners module

tool_shed.test.functional.test_0120_simple_repository_dependency_multiple_owners.tool_repository_long_description = 'Make a table from BLAST XML'

Tool shed side:

1) Create and populate blast_datatypes_0120. 1a) Check for appropriate strings. 2) Create and populate blastxml_to_top_descr_0120. 2a) Check for appropriate strings. 3) Upload repository_dependencies.xml to blastxml_to_top_descr_0120 that defines a relationship to blast_datatypes_0120. 3a) Check for appropriate strings.

class tool_shed.test.functional.test_0120_simple_repository_dependency_multiple_owners.TestRepositoryMultipleOwners[source]

Bases: ShedTwillTestCase

test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

Create all the user accounts that are needed for this test script to run independently of other tests. Previously created accounts will not be re-created.

test_0005_create_datatypes_repository()[source]

Create and populate the blast_datatypes_0120 repository

We are at step 1. Create and populate blast_datatypes.

test_0010_verify_datatypes_repository()[source]

Verify the blast_datatypes_0120 repository.

We are at step 1a. Check for appropriate strings, most importantly BlastXml, BlastNucDb, and BlastProtDb, the datatypes that are defined in datatypes_conf.xml.

test_0015_create_tool_repository()[source]

Create and populate the blastxml_to_top_descr_0120 repository

We are at step 2. Create and populate blastxml_to_top_descr_0120.

test_0020_verify_tool_repository()[source]

Verify the blastxml_to_top_descr_0120 repository.

We are at step 2a. Check for appropriate strings, such as tool name, description, and version.

test_0025_create_repository_dependency()[source]

Create a repository dependency on blast_datatypes_0120.

We are at step 3. Create a simple repository dependency for blastxml_to_top_descr_0120 that defines a dependency on blast_datatypes_0120.

test_0040_verify_repository_dependency()[source]

Verify the created repository dependency.

We are at step 3a. Check the newly created repository dependency to ensure that it was defined and displays correctly.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0130_datatype_converters module

tool_shed.test.functional.test_0140_tool_help_images module

tool_shed.test.functional.test_0140_tool_help_images.category_description = 'Test 0140 Tool Help Images'
  1. Create and populate the htseq_count_0140 repository.

  2. Visit the manage_repository page.

  3. Simulate clicking the htseq_count tool button.

  4. On the resulting display tool page, look for the image string similar to the following string where the encoded repository_id is previously determined:

src=”/repository/static/images/<id>/count_modes.png”

class tool_shed.test.functional.test_0140_tool_help_images.TestToolHelpImages[source]

Bases: ShedTwillTestCase

Test features related to tool help images.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_htseq_count_repository()[source]

Create and populate htseq_count_0140.

We are at step 1 - Create and populate the htseq_count_0140 repository. Create the htseq_count_0140 repository and upload the tarball.

test_0010_load_tool_page()[source]

Load the tool page and check for the image.

We are at step 2 Visit the manage_repository page and the tool page, and look for the image url similar to the following string:

src=”/repository/static/images/<id>/count_modes.png”

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0150_prior_installation_required module

tool_shed.test.functional.test_0150_prior_installation_required.category_description = 'Test 0150 Simple Prior Installation'

Create column_maker and convert_chars.

Column maker repository dependency: <repository toolshed=”self.url” name=”convert_chars” owner=”test” changeset_revision=”c3041382815c” prior_installation_required=”True” />

Verify display.

Galaxy side:

Install column_maker. Verify that convert_chars was installed first, contrary to the ordering that would be present without prior_installation_required.

class tool_shed.test.functional.test_0150_prior_installation_required.TestSimplePriorInstallation[source]

Bases: ShedTwillTestCase

Test features related to datatype converters.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_convert_repository()[source]

Create and populate convert_chars_0150.

test_0010_create_column_repository()[source]

Create and populate convert_chars_0150.

test_0015_create_repository_dependency()[source]

Create a repository dependency specifying convert_chars.

Column maker repository dependency:

<repository toolshed=”self.url” name=”convert_chars” owner=”test” changeset_revision=”<tip>” prior_installation_required=”True” />

test_0020_verify_repository_dependency()[source]

Verify that the previously generated repositiory dependency displays correctly.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0160_circular_prior_installation_required module

tool_shed.test.functional.test_0160_circular_prior_installation_required.category_description = 'Test 0160 Simple Prior Installation'

Create column_maker and convert_chars.

Column maker repository dependency: <repository toolshed=”self.url” name=”convert_chars” owner=”test” changeset_revision=”c3041382815c” prior_installation_required=”True” />

Verify display.

class tool_shed.test.functional.test_0160_circular_prior_installation_required.TestSimplePriorInstallation[source]

Bases: ShedTwillTestCase

Test features related to datatype converters.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_convert_repository()[source]

Create and populate convert_chars_0160.

test_0010_create_column_repository()[source]

Create and populate convert_chars_0160.

test_0015_create_filtering_repository()[source]

Create and populate filtering_0160.

test_0020_create_repository_dependency()[source]

Create a repository dependency specifying convert_chars.

Each of the three repositories should depend on the other two, to make this as circular as possible.

test_0025_verify_repository_dependency()[source]

Verify that the previously generated repositiory dependency displays correctly.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0170_complex_prior_installation_required module

tool_shed.test.functional.test_0170_complex_prior_installation_required.category_description = 'Test 0170 Prior Installation Complex Dependencies'
  1. Create and populate repositories package_matplotlib_1_2_0170 and package_numpy_1_7_0170.

  2. Create a complex repository dependency on package_numpy_1_7_0170, and upload this to package_matplotlib_1_2_0170.

  3. Verify that package_matplotlib_1_2_0170 now depends on package_numpy_1_7_0170, and that the inherited tool dependency displays correctly.

class tool_shed.test.functional.test_0170_complex_prior_installation_required.TestComplexPriorInstallation[source]

Bases: ShedTwillTestCase

Test features related to datatype converters.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_matplotlib_repository()[source]

Create and populate the package_matplotlib_1_2_0170 repository.

This is step 1 - Create and populate repositories package_matplotlib_1_2_0170 and package_numpy_1_7_0170.

test_0010_create_numpy_repository()[source]

Create and populate the package_numpy_1_7_0170 repository.

This is step 1 - Create and populate repositories package_matplotlib_1_2_0170 and package_numpy_1_7_0170.

test_0015_create_complex_repository_dependency()[source]

Create a dependency on package_numpy_1_7_0170.

This is step 2 - Create a complex repository dependency on package_numpy_1_7_0170, and upload this to package_matplotlib_1_2_0170. package_matplotlib_1_2_0170 should depend on package_numpy_1_7_0170, with prior_installation_required set to True. When matplotlib is selected for installation, the result should be that numpy is compiled and installed first.

test_0020_verify_generated_dependency()[source]

Verify that matplotlib now has a package tool dependency and a complex repository dependency.

This is step 3 - Verify that package_matplotlib_1_2_0170 now depends on package_numpy_1_7_0170, and that the inherited tool dependency displays correctly. ‘Inherited’ in this case means that matplotlib should show a package tool dependency on numpy version 1.7, and a repository dependency on the latest revision of package_numpy_1_7_0170.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0300_reset_all_metadata module

class tool_shed.test.functional.test_0300_reset_all_metadata.TestResetAllRepositoryMetadata[source]

Bases: ShedTwillTestCase

Verify that the “Reset selected metadata” feature works.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_filtering_repository()[source]

Create and populate the filtering_0000 repository.

test_0010_create_freebayes_repository()[source]

Create and populate the freebayes_0010 repository.

test_0015_create_datatypes_0020_repository()[source]

Create and populate the column_maker_0020 repository.

test_0020_create_emboss_0020_repository()[source]

Create and populate the emboss_0020 repository.

test_0025_create_emboss_datatypes_0030_repository()[source]

Create and populate the emboss_0030 repository.

test_0030_create_emboss_5_repository()[source]

Create and populate the emboss_5_0030 repository.

test_0035_create_emboss_6_repository()[source]

Create and populate the emboss_6_0030 repository.

test_0040_create_emboss_0030_repository()[source]

Create and populate the emboss_0030 repository.

test_0045_create_repository_dependencies_for_0030()[source]

Create the dependency structure for test 0030.

test_0050_create_freebayes_repository()[source]

Create and populate the freebayes_0040 repository.

test_0055_create_filtering_repository()[source]

Create and populate the filtering_0040 repository.

test_0060_create_dependency_structure()[source]

Create the dependency structure for test 0040.

test_0065_create_convert_repository()[source]

Create and populate convert_chars_0050.

test_0070_create_column_repository()[source]

Create and populate convert_chars_0050.

test_0075_create_emboss_datatypes_repository()[source]

noop now…

test_0080_create_emboss_repository()[source]

Create and populate emboss_0050.

test_0085_create_filtering_repository()[source]

Create and populate filtering_0050.

test_0090_create_freebayes_repository()[source]

Create and populate freebayes_0050.

test_0095_create_bismark_repository()[source]

Create and populate bismark_0050.

test_0100_create_and_upload_dependency_definitions()[source]

Create the dependency structure for test 0050.

test_0110_reset_metadata_on_all_repositories()[source]

Reset metadata on all repositories, then verify that it has not changed.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0310_hg_api_features module

tool_shed.test.functional.test_0310_hg_api_features.category_description = 'Test 0310 for verifying the tool shed http interface to mercurial.'
  1. Create a repository.

  2. Clone the repository to a local path.

class tool_shed.test.functional.test_0310_hg_api_features.TestHgWebFeatures[source]

Bases: ShedTwillTestCase

Test http mercurial interface.

test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_filtering_repository()[source]

Create and populate the filtering_0310 repository.

We are at step 1 - Create a repository. Create and populate the filtering_0310 repository.

test_0010_clone()[source]

Clone the repository to a local path.

We are at step 2 - Clone the repository to a local path. The repository should have the following files:

filtering.py filtering.xml test-data/ test-data/1.bed test-data/7.bed test-data/filter1_in3.sam test-data/filter1_inbad.bed test-data/filter1_test1.bed test-data/filter1_test2.bed test-data/filter1_test3.sam test-data/filter1_test4.bed

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0400_repository_component_reviews module

tool_shed.test.functional.test_0410_repository_component_review_access_control module

tool_shed.test.functional.test_0420_citable_urls_for_repositories module

tool_shed.test.functional.test_0420_citable_urls_for_repositories.first_changeset_hash = ''
  1. Add and populate a repository to the tool shed with change set revision 0 (assume owner is test).

  2. Add valid change set revision 1.

  3. Visit the following url and check for appropriate strings: <tool shed base url>/view/user1

  4. Visit the following url and check for appropriate strings: <tool shed base url>/view/user1/filtering_0420 . The resulting page should contain change set revision 1

  5. Visit the following url and check for appropriate strings: <tool shed base url>/view/user1/filtering_0420/<revision 0> . The resulting page should not contain change set revision 1, but should contain change set revision 0.

  6. Visit the following url and check for appropriate strings: <tool shed base url>/view/user1/filtering_0420/<invalid revision>

  7. Visit the following url and check for appropriate strings: <tool shed base url>/view/user1/<invalid repository name>

  8. Visit the following url and check for appropriate strings: <tool shed base url>/view/<invalid owner>

class tool_shed.test.functional.test_0420_citable_urls_for_repositories.TestRepositoryCitableURLs[source]

Bases: ShedTwillTestCase

Test repository citable url features.

test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

Create all the user accounts that are needed for this test script to run independently of other tests. Previously created accounts will not be re-created.

test_0005_create_repository()[source]

Create and populate the filtering_0420 repository

We are at step 1. Add and populate a repository to the tool shed with change set revision 0 (assume owner is test_user_1).

test_0010_upload_new_file_to_repository()[source]

Upload a readme file to the repository in order to create a second changeset revision.

We are at step 2. Add valid change set revision 1. The repository should now contain two changeset revisions, 0:<revision hash> and 1:<revision hash>.

test_0015_load_user_view_page()[source]

Load the /view/<username> page amd check for strings.

We are at step 3. Visit the following url and check for appropriate strings: <tool shed base url>/view/user1

test_0020_load_repository_view_page()[source]

Load the /view/<user>/<repository> page and check for the appropriate strings.

We are at step 4. Visit the following url and check for strings: <tool shed base url>/view/user1/filtering_0420 . The resulting page should contain change set revision 1

test_0025_load_view_page_for_previous_revision()[source]

Load a citable url for a past changeset revision and verify that strings display.

We are at step 5. Visit the following url and check for appropriate strings: <tool shed base url>/view/user1/filtering_0420/<revision 0> . The resulting page should not contain change set revision 1, but should contain change set revision 0.

test_0030_load_sharable_url_with_invalid_changeset_revision()[source]

Load a citable url with an invalid changeset revision specified.

test_0035_load_sharable_url_with_invalid_repository_name()[source]

Load a citable url with an invalid changeset revision specified.

We are at step 7. Visit the following url and check for appropriate strings: <tool shed base url>/view/user1/!!invalid!!

test_0040_load_sharable_url_with_invalid_owner()[source]

Load a citable url with an invalid owner.

We are at step 8. Visit the following url and check for appropriate strings: <tool shed base url>/view/!!invalid!!

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0430_browse_utilities module

tool_shed.test.functional.test_0430_browse_utilities.freebayes_repository_long_description = 'Long description of Freebayes tool for test 0430'
  1. Create and populate repositories.

  2. Browse Custom Datatypes.

  3. Browse Tools.

  4. Browse Repository Dependencies.

  5. Browse Tool Dependencies.

class tool_shed.test.functional.test_0430_browse_utilities.TestToolShedBrowseUtilities[source]

Bases: ShedTwillTestCase

Test browsing for Galaxy utilities.

test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

Create all the user accounts that are needed for this test script to run independently of other tests. Previously created accounts will not be re-created.

test_0010_create_emboss_repository()[source]

Create and populate the emboss_0430 repository

We are at step 1. Create the emboss_0430 repository, and populate it with tools.

test_0020_create_tool_dependency_repository()[source]

Create and populate the freebayes_0430 repository

We are at step 1. Create and populate the repository that will have a tool dependency defined.

test_0030_browse_tools()[source]

Load the page to browse tools.

We are at step 3. Verify the existence of emboss tools in the browse tools page.

test_0040_browse_tool_dependencies()[source]

Browse tool dependencies and look for the right versions of freebayes and samtools.

We are at step 4. Verify that the browse tool dependencies page shows the correct dependencies defined for freebayes_0430.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0440_deleting_dependency_definitions module

tool_shed.test.functional.test_0440_deleting_dependency_definitions.bwa_tool_dependency_repository_long_description = 'NT space mapping with BWA'

Simple repository dependencies:

  1. Create and populate column_maker_0440 so that it has an installable revision 0.

  2. Create and populate convert_chars_0440 so that it has an installable revision 0.

  3. Add a valid simple repository_dependencies.xml to convert_chars_0440 that points to the installable revision of column_maker_0440.

  4. Make sure the installable revision of convert_chars_0440 is now revision 1 instead of revision 0.

  5. Delete repository_dependencies.xml from convert_chars_0440, and make sure convert_chars_0440 now has two installable revisions: 1 and 2

Complex repository dependencies:

  1. Create and populate bwa_package_0440 so that it has a valid tool dependency definition and an installable revision 0.

  2. Create and populate bwa_base_0440 so that it has an installable revision 0.

  3. Add a valid complex repository dependency tool_dependencies.xml to bwa_base_0440 that points to the installable revision 0 of bwa_package_0440.

  4. Make sure that bwa_base_0440 installable revision is now revision 1 instead of revision 0.

  5. Delete tool_dependencies.xml from bwa_base_0440, and make sure bwa_base_0440 now has two installable revisions: 1 and 2

Tool dependencies:

  1. Create and populate bwa_tool_dependency_0440 so that it has a valid tool dependency definition and an installable revision 0.

  2. Delete tool_dependencies.xml from bwa_tool_dependency_0440, and make sure that bwa_tool_dependency_0440 still has a single installable revision 0.

  3. Add the same tool_dependencies.xml file to bwa_tool_dependency_0440, and make sure that bwa_tool_dependency_0440 still has a single installable revision 0.

class tool_shed.test.functional.test_0440_deleting_dependency_definitions.TestDeletedDependencies[source]

Bases: ShedTwillTestCase

Test metadata setting when dependency definitions are deleted.

test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

Create all the user accounts that are needed for this test script to run independently of other tests. Previously created accounts will not be re-created.

test_0005_create_column_maker_repository()[source]

Create and populate a repository named column_maker_0440.

We are at simple repository dependencies, step 1 - Create and populate column_maker_0440 so that it has an installable revision 0.

test_0010_create_convert_chars_repository()[source]

Create and populate a repository named convert_chars_0440.

We are at simple repository dependencies, step 2 - Create and populate convert_chars_0440 so that it has an installable revision 0.

test_0015_create_dependency_on_convert_chars()[source]

Create a dependency definition file that specifies column_maker_0440 and upload it to convert_chars_0440.

We are at simple repository dependencies, step 3 - Add a valid simple repository_dependencies.xml to convert_chars_0440 that points to the installable revision of column_maker_0440.

test_0020_verify_dependency_metadata()[source]

Verify that uploading the dependency moved metadata to the tip.

We are at simple repository dependencies, step 4 - Make sure the installable revision of convert_chars_0440 is now revision 1 (the tip) instead of revision 0.

test_0025_delete_repository_dependency()[source]

Delete the repository_dependencies.xml from convert_chars_0440.

We are at simple repository dependencies, steps 5 and 6 - Delete repository_dependencies.xml from convert_chars_0440. Make sure convert_chars_0440 now has two installable revisions: 1 and 2

test_0030_create_bwa_package_repository()[source]

Create and populate the bwa_package_0440 repository.

We are at complex repository dependencies, step 1 - Create and populate bwa_package_0440 so that it has a valid tool dependency definition and an installable revision 0.

test_0035_create_bwa_base_repository()[source]

Create and populate the bwa_base_0440 repository.

We are at complex repository dependencies, step 2 - Create and populate bwa_base_0440 so that it has an installable revision 0. This repository should contain a tool with a defined dependency that will be satisfied by the tool dependency defined in bwa_package_0440.

test_0040_create_dependency_on_bwa_package_repository()[source]

Create a complex repository dependency on bwa_package_0440 and upload it to bwa_tool_0440.

We are at complex repository dependencies, step 3 - Add a valid complex repository dependency tool_dependencies.xml to bwa_base_0440 that points to the installable revision 0 of bwa_package_0440.

test_0045_verify_dependency_metadata()[source]

Verify that uploading the dependency moved metadata to the tip.

We are at complex repository dependencies, step 4 - Make sure that bwa_base_0440 installable revision is now revision 1 instead of revision 0.

test_0050_delete_complex_repository_dependency()[source]

Delete the tool_dependencies.xml from bwa_base_0440.

We are at complex repository dependencies, step 5 - Delete tool_dependencies.xml from bwa_base_0440, and make sure bwa_base_0440 now has two installable revisions: 1 and 2

test_0055_create_bwa_tool_dependency_repository()[source]

Create and populate the bwa_tool_dependency_0440 repository.

We are at tool dependencies, step 1 - Create and populate bwa_tool_dependency_0440 so that it has a valid tool dependency definition and an installable revision 0.

test_0060_delete_bwa_tool_dependency_definition()[source]

Delete the tool_dependencies.xml file from bwa_tool_dependency_0440.

We are at tool dependencies, step 2 - Delete tool_dependencies.xml from bwa_tool_dependency_0440. Make sure bwa_tool_dependency_0440 still has a downloadable changeset revision at the old tip.

test_0065_reupload_bwa_tool_dependency_definition()[source]

Reupload the tool_dependencies.xml file to bwa_tool_dependency_0440.

We are at tool dependencies, step 3 - Add the same tool_dependencies.xml file to bwa_tool_dependency_0440, and make sure that bwa_tool_dependency_0440 still has a single installable revision 0.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0460_upload_to_repository module

tool_shed.test.functional.test_0460_upload_to_repository.bwa_repository_long_description = 'bwa (alignment via Burrows-Wheeler transformation) 0.5.9-r16 by Heng Li'

For all steps, verify that the generated dependency points to the tip of the specified repository.

  1. Create category…

  2. Create and populate package_bwa_0_5_9_0460

  3. Create complex_dependency_test_1_0460, complex_dependency_test_2_0460, complex_dependency_test_3_0460, complex_dependency_test_4_0460, complex_dependency_test_5_0460.

  4. Upload an uncompressed tool_dependencies.xml to complex_dependency_test_1_0460 that specifies a complex repository dependency on package_bwa_0_5_9_0460 without a specified changeset revision or tool shed url.

  5. Upload a tarball to complex_dependency_test_2_0460 with a tool_dependencies.xml in the root of the tarball.

  6. Upload a tarball to complex_dependency_test_3_0460 with a tool_dependencies.xml in a subfolder within the tarball.

  7. Create hg_tool_dependency_0460 and hg_subfolder_tool_dependency_0460 and populate with tool dependencies.

  8. Upload to complex_dependency_test_4_0460 using the url hg://<tool shed url>/repos/user1/hg_tool_dependency_0460.

  9. Upload to complex_dependency_test_5_0460 using the url hg://<tool shed url>/repos/user1/hg_subfolder_tool_dependency_0460.

  10. Create repository_dependency_test_1_0460, repository_dependency_test_2_0460, repository_dependency_test_3_0460, repository_dependency_test_4_0460, repository_dependency_test_4_0460.

  11. Upload an uncompressed repository_dependencies.xml to repository_dependency_test_1_0460 that specifies a repository dependency on the package without a specified changeset revision or tool shed url.

  12. Upload a tarball to repository_dependency_test_1_0460 with a repository_dependencies.xml in the root of the tarball.

  13. Upload a tarball to repository_dependency_test_1_0460 with a repository_dependencies.xml in a subfolder within the tarball.

  14. Create hg_repository_dependency_0460 and populate with repository_dependencies.xml.

  15. Upload to repository_dependency_test_4_0460 using the url hg://<tool shed url>/repos/user1/hg_repository_dependency_0460.

  16. Upload to repository_dependency_test_5_0460 using the url hg://<tool shed url>/repos/user1/hg_repository_dependency_0460.

class tool_shed.test.functional.test_0460_upload_to_repository.TestAutomaticDependencyRevision[source]

Bases: ShedTwillTestCase

Test defining repository dependencies without specifying the changeset revision.

test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_datatypes_repository()[source]

Create and populate the emboss_datatypes_0460 repository

This is step 1 - Create and populate emboss_datatypes_0460.

test_0010_create_bwa_package_repository()[source]

Create and populate the package_bwa_0_5_9_0460 repository.

This is step 2 - Create and populate package_bwa_0_5_9_0460.

test_0015_create_tool_dependency_repositories()[source]

Create repositories for testing complex dependency generation.

This is step 3 - Create complex_dependency_test_1_0460, complex_dependency_test_2_0460, complex_dependency_test_3_0460, complex_dependency_test_4_0460, complex_dependency_test_5_0460. Each of these repositories will be populated in a way that tests a different way to achieve the same resulting dependency structure using complex tool dependencies. The different methods being tested are: - Upload an uncompressed tool_dependencies.xml to the root of the repository. - Upload a tool_dependencies.xml in a tarball, not in a subfolder. - Upload a tool_dependencies.xml in a subfolder within a tarball. - Upload via url, with the tool_dependencies.xml in the root of another repository. - Upload via url, with the tool_dependencies.xml in a subfolder within another repository.

test_0020_populate_complex_dependency_test_1_0460()[source]

Populate complex_dependency_test_1_0460.

This is step 4 - Upload an uncompressed tool_dependencies.xml to complex_dependency_test_1_0460 that specifies a complex repository dependency on package_bwa_0_5_9_0460 without a specified changeset revision or tool shed url.

test_0025_populate_complex_dependency_test_2_0460()[source]

Populate complex_dependency_test_2_0460.

This is step 5 - Upload an tarball with tool_dependencies.xml to complex_dependency_test_2_0460 that specifies a complex repository dependency on package_bwa_0_5_9_0460 without a specified changeset revision or tool shed url.

test_0030_populate_complex_dependency_test_3_0460()[source]

Populate complex_dependency_test_3_0460.

This is step 6 - Upload an tarball with tool_dependencies.xml in a subfolder to complex_dependency_test_3_0460 that specifies a complex repository dependency on package_bwa_0_5_9_0460 without a specified changeset revision or tool shed url.

test_0035_create_repositories_for_url_upload()[source]

Create and populate hg_tool_dependency_0460 and hg_subfolder_tool_dependency_0460.

This is step 7 - Create hg_tool_dependency_0460 and hg_subfolder_tool_dependency_0460 and populate with tool dependencies.

test_0050_create_repositories_for_simple_dependencies()[source]

Create repositories for testing simple dependency generation.

This is step 10 - Create repository_dependency_test_1_0460, repository_dependency_test_2_0460, repository_dependency_test_3_0460, repository_dependency_test_4_0460, repository_dependency_test_4_0460.. Each of these repositories will be populated in a way that tests a different way to achieve the same resulting dependency structure using complex tool dependencies. The different methods being tested are: - Upload an uncompressed repository_dependencies.xml to the root of the repository. - Upload a repository_dependencies.xml in a tarball, not in a subfolder. - Upload a repository_dependencies.xml in a subfolder within a tarball. - Upload via url, with the repository_dependencies.xml in the root of another repository. - Upload via url, with the repository_dependencies.xml in a subfolder within another repository.

test_0055_populate_repository_dependency_test_1_0460()[source]

Populate repository_dependency_test_1_0460.

This is step 11 - Upload an uncompressed repository_dependencies.xml to repository_dependency_test_1_0460 that specifies a repository dependency on emboss_datatypes_0460 without a specified changeset revision or tool shed url.

test_0060_populate_repository_dependency_test_2_0460()[source]

Populate repository_dependency_test_2_0460.

This is step 12 - Upload a tarball to repository_dependency_test_2_0460 with a repository_dependencies.xml in the root of the tarball.

test_0065_populate_repository_dependency_test_3_0460()[source]

Populate repository_dependency_test_3_0460.

This is step 13 - Upload a tarball to repository_dependency_test_3_0460 with a repository_dependencies.xml in a subfolder within the tarball.

test_0070_create_repositories_for_url_upload()[source]

Create and populate hg_repository_dependency_0460 and hg_subfolder_repository_dependency_0460.

This is step 14 - Create hg_repository_dependency_0460 and hg_subfolder_repository_dependency_0460 and populate with repository dependencies.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0470_tool_dependency_repository_type module

tool_shed.test.functional.test_0470_tool_dependency_repository_type.emboss_repository_long_description = 'Galaxy wrappers for Emboss version 5.0.0 tools'
  1. Create and populate a repository named package_x11_client_1_5_proto_7_0 that contains only a single file named tool_dependencies.xml. Keep the repository type as the default “Unrestricted”.

  2. Create a repository named package_emboss_5_0_0 of type “Unrestricted” that has a repository dependency definition that defines the above package_x11_client_1_5_proto_7_0 repository. Upload the tool_dependencies.xml file such that it does not have a changeset_revision defined so it will get automatically populated.

  3. Create a repository named emboss_5 of type “Unrestricted” that has a tool-dependencies.xml file defining a complex repository dependency on the package_emboss_5_0_0 repository above. Upload the tool_dependencies.xml file such that it does not have a change set_revision defined so it will get automatically populated.

  4. Add a comment to the tool_dependencies.xml file to be uploaded to the package_x11_client_1_5_prot_7_0 repository, creating a new installable changeset revision at the repository tip.

  5. Add a comment to the tool_dependencies.xml file for the package_emboss_5_0_0 repository, eliminating the change set_revision attribute so that it gets automatically populated when uploaded. After uploading the file, the package_emboss_5_0_0 repository should have 2 installable changeset revisions.

  6. Add a comment to the tool_dependencies.xml file in the emboss_5 repository, eliminating the changeset_revision attribute so that it gets automatically populated when uploaded. After uploading the file, the emboss5 repository should have 2 installable metadata revisions.

  7. Change the repository type of the package_x11_client_1_5_proto_7_0 repository to be tool_dependency_definition.

  8. Change the repository type of the package_emboss_5_0_0 repository to be tool_dependency_definition.

  9. Reset metadata on the package_emboss_5_0_0 repository. It should now have only its tip as the installable revision.

  10. Reset metadata on the emboss_5 repository. It should now have only its tip as the installable revision.

class tool_shed.test.functional.test_0470_tool_dependency_repository_type.TestEnvironmentInheritance[source]

Bases: ShedTwillTestCase

Test referencing environment variables that were defined in a separate tool dependency.

test_0000_initiate_users_and_category()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_libx11_repository()[source]

Create and populate package_x11_client_1_5_proto_7_0_0470.

This is step 1 - Create and populate a repository named package_x11_client_1_5_proto_7_0.

Create and populate a repository named package_x11_client_1_5_proto_7_0 that contains only a single file named tool_dependencies.xml. Keep the repository type as the default “Unrestricted”.

test_0010_create_emboss_5_0_0_repository()[source]

Create and populate package_emboss_5_0_0_0470.

This is step 2 - Create a repository named package_emboss_5_0_0 of type “Unrestricted”.

Create a repository named package_emboss_5_0_0 of type “Unrestricted” that has a repository dependency definition that defines the above package_x11_client_1_5_proto_7_0 repository. Upload the tool_dependencues.xml file such that it does not have a changeset_revision defined so it will get automatically populated.

test_0015_create_emboss_5_repository()[source]

Create and populate emboss_5_0470.

This is step 3 - Create a repository named emboss_5 of type “Unrestricted”.

Create a repository named emboss_5 of type “Unrestricted” that has a tool-dependencies.xml file defining a complex repository dependency on the package_emboss_5_0_0 repository above. Upload the tool_dependencies.xml file such that it does not have a change set_revision defined so it will get automatically populated.

test_0020_upload_updated_tool_dependency_to_package_x11()[source]

Upload a new tool_dependencies.xml to package_x11_client_1_5_proto_7_0_0470.

This is step 4 - Add a comment to the tool_dependencies.xml file to be uploaded to the package_x11_client_1_5_prot_7_0 repository, creating a new installable changeset revision at the repository tip.

test_0025_upload_updated_tool_dependency_to_package_emboss()[source]

Upload a new tool_dependencies.xml to package_emboss_5_0_0_0470.

This is step 5 - Add a comment to the tool_dependencies.xml file for the package_emboss_5_0_0 repository, eliminating the change set_revision attribute so that it gets automatically populated when uploaded. After uploading the file, the package_emboss_5_0_0 repository should have 2 installable changeset revisions.

test_0030_upload_updated_tool_dependency_to_emboss_5_repository()[source]

Upload a new tool_dependencies.xml to emboss_5_0470.

This is step 6 - Add a comment to the tool_dependencies.xml file in the emboss_5 repository, eliminating the changeset_revision attribute so that it gets automatically populated when uploaded. After uploading the file, the emboss5 repository should have 2 installable metadata revisions.

test_0035_modify_package_x11_repository_type()[source]

Set package_x11_client_1_5_proto_7_0 type tool_dependency_definition.

This is step 7 - Change the repository type of the package_x11_client_1_5_proto_7_0 repository to be tool_dependency_definition.

test_0040_modify_package_emboss_repository_type()[source]

Set package_emboss_5_0_0 to type tool_dependency_definition.

This is step 8 - Change the repository type of the package_emboss_5_0_0 repository to be tool_dependency_definition.

test_0045_reset_repository_metadata()[source]

Reset metadata on package_emboss_5_0_0_0470 and package_x11_client_1_5_proto_7_0.

This is step 9 - Reset metadata on the package_emboss_5_0_0 and package_x11_client_1_5_proto_7_0 repositories. They should now have only their tip as the installable revision.

test_0050_reset_emboss_5_metadata()[source]

Reset metadata on emboss_5.

This is step 10 - Reset metadata on the emboss_5 repository. It should now have only its tip as the installable revision.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0480_tool_dependency_xml_verification module

tool_shed.test.functional.test_0480_tool_dependency_xml_verification.repository_long_description = 'This repository is in the test suite 0480'
  1. Create a repository package_invalid_tool_dependency_xml_1_0_0

  2. Upload a tool_dependencies.xml file to the repository with no <actions> tags around the <action> tags.

  3. Verify error message is displayed.

class tool_shed.test.functional.test_0480_tool_dependency_xml_verification.TestDependencyDefinitionValidation[source]

Bases: ShedTwillTestCase

Test the tool shed’s tool dependency XML validation.

test_0000_initiate_users_and_category()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_tool_dependency_repository()[source]

Create and populate package_invalid_tool_dependency_xml_1_0_0.

This is step 1 - Create a repository package_invalid_tool_dependency_xml_1_0_0.

Create a repository named package_invalid_tool_dependency_xml_1_0_0 that will contain only a single file named tool_dependencies.xml.

test_0010_populate_tool_dependency_repository()[source]

Verify package_invalid_tool_dependency_xml_1_0_0.

This is step 3 - Verify repository. The uploaded tool dependency XML should not have resulted in a new changeset.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0530_repository_admin_feature module

tool_shed.test.functional.test_0530_repository_admin_feature.category_description = 'Verify the functionality of the code that handles the repository admin role.'
  1. Create new repository as user user1.

  2. Check to make sure a new role was created named <repo_name>_user1_admin.

  3. Check to make sure a new repository_role_association record was created with appropriate repository id and role id.

  4. Change the name of the repository created in step 1 - this can be done as long as the repository has not been installed or cloned.

  5. Make sure the name of the role initially inspected in Step 2 has been changed to reflect the new repository name from Step 4.

  6. Log into the Tool Shed as a user that is not the repository owner (e.g., user2) and make sure the repository name and description cannot be changed.

  7. As user user1, add user user2 as a repository admin user.

  8. Log into the Tool Shed as user user2 and make sure the repository name and description can now be changed.

class tool_shed.test.functional.test_0530_repository_admin_feature.TestRepositoryAdminRole[source]

Bases: ShedTwillTestCase

Verify that the code correctly handles the repository admin role.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_filtering_repository()[source]

Create and populate the filtering_0530 repository.

This is step 1 - Create new repository as user user1.

test_0010_verify_repository_admin_role_exists()[source]

Verify that the role filtering_0530_user1_admin exists.

This is step 2 - Check to make sure a new role was created named filtering_0530_user1_admin.

test_0015_verify_repository_role_association()[source]

Verify that the filtering_0530_user1_admin role is associated with the filtering_0530 repository.

This is step 3 - Check to make sure a new repository_role_association record was created with appropriate repository id and role id.

test_0020_rename_repository()[source]

Rename the repository to renamed_filtering_0530.

This is step 4 - Change the name of the repository created in step 1 - this can be done as long as the repository has not been installed or cloned.

test_0030_verify_access_denied()[source]

Make sure a non-admin user can’t modify the repository.

This is step 6 - Log into the Tool Shed as a user that is not the repository owner (e.g., user2) and make sure the repository name and description cannot be changed.

test_0035_grant_admin_role()[source]

Grant the repository admin role to user2.

This is step 7 - As user user1, add user user2 as a repository admin user.

test_0040_rename_repository_as_repository_admin()[source]

Rename the repository as user2.

This is step 8 - Log into the Tool Shed as user user2 and make sure the repository name and description can now be changed.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_0540_get_all_metadata_from_api module

tool_shed.test.functional.test_0550_metadata_updated_dependencies module

tool_shed.test.functional.test_0550_metadata_updated_dependencies.category_description = 'Verify metadata updates'
  1. Create repository package_freebayes_0550.

  2. Create repository package_samtools_0550.

  3. Create repository filtering_0550.

  4. Create dependency on package_freebayes_0550 for filtering_0550.

  5. Create dependency on package_samtools_0550 for filtering_0550.

  6. Update package_freebayes_0550 and package_samtools_0550.

  1. Load /api/repositories/{filtering_0550}.id/metadata and verify contents.

class tool_shed.test.functional.test_0550_metadata_updated_dependencies.TestGetUpdatedMetadata[source]

Bases: ShedTwillTestCase

Verify that updated repositories still have correct dependency links.

test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_freebayes_repository()[source]

Create and populate package_freebayes_0550.

test_0010_create_samtools_repository()[source]

Create and populate the package_samtools_0550 repository.

test_0015_create_filtering_repository()[source]

Create the filtering_0550 repository.

test_0020_check_repository_dependency()[source]

Make filtering depend on samtools and freebayes.

test_0025_update_dependent_repositories()[source]

Update freebayes and samtools, load the API endpoint again.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1000_install_basic_repository module

class tool_shed.test.functional.test_1000_install_basic_repository.TestBasicToolShedFeatures[source]

Bases: ShedTwillTestCase

Test installing a basic repository.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_ensure_repositories_and_categories_exist()[source]

Create the 0000 category and upload the filtering repository to it, if necessary.

test_0010_browse_tool_sheds()[source]

Browse the available tool sheds in this Galaxy instance.

test_0015_browse_test_0000_category()[source]

Browse the category created in test 0000. It should contain the filtering_0000 repository also created in that test.

test_0020_preview_filtering_repository()[source]

Load the preview page for the filtering_0000 repository in the tool shed.

test_0025_install_filtering_repository()[source]
test_0030_install_filtering_repository_again()[source]

Attempt to install the already installed filtering repository.

test_0035_verify_installed_repository_metadata()[source]

Verify that resetting the metadata on an installed repository does not change the metadata.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1010_install_repository_with_tool_dependencies module

class tool_shed.test.functional.test_1010_install_repository_with_tool_dependencies.TestToolWithToolDependencies[source]

Bases: ShedTwillTestCase

Test installing a repository with tool dependencies.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_ensure_repositories_and_categories_exist()[source]

Create the 0010 category and upload the freebayes repository to it, if necessary.

test_0010_browse_tool_shed()[source]

Browse the available tool sheds in this Galaxy instance and preview the freebayes tool.

test_0015_install_freebayes_repository()[source]

Install the freebayes repository without installing tool dependencies.

test_0020_verify_installed_repository_metadata()[source]

Verify that resetting the metadata on an installed repository does not change the metadata.

test_0025_verify_sample_files()[source]

Verify that the installed repository populated shed_tool_data_table.xml and the sample files.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1020_install_repository_with_repository_dependencies module

class tool_shed.test.functional.test_1020_install_repository_with_repository_dependencies.TestToolWithRepositoryDependencies[source]

Bases: ShedTwillTestCase

Test installing a repository with repository dependencies.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_ensure_repositories_and_categories_exist()[source]

Create the 0020 category and any missing repositories.

test_0010_browse_tool_shed()[source]

Browse the available tool sheds in this Galaxy instance and preview the emboss tool.

test_0015_install_emboss_repository()[source]

Install the emboss repository without installing tool dependencies.

test_0020_verify_installed_repository_metadata()[source]

Verify that resetting the metadata on an installed repository does not change the metadata.

test_0025_deactivate_datatypes_repository()[source]

Deactivate the emboss_datatypes repository without removing it from disk.

test_0030_reactivate_datatypes_repository()[source]

Reactivate the datatypes repository and verify that the datatypes are again present.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1030_install_repository_with_dependency_revisions module

class tool_shed.test.functional.test_1030_install_repository_with_dependency_revisions.TestRepositoryWithDependencyRevisions[source]

Bases: ShedTwillTestCase

Test installing a repository with dependency revisions.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_ensure_repositories_and_categories_exist()[source]

Create the 0030 category and add repositories to it, if necessary.

test_0010_browse_tool_shed()[source]

Browse the available tool sheds in this Galaxy instance and preview the emboss tool.

test_0015_install_emboss_repository()[source]

Install the emboss repository without installing tool dependencies.

test_0025_verify_installed_repository_metadata()[source]

Verify that resetting the metadata on an installed repository does not change the metadata.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1040_install_repository_basic_circular_dependencies module

class tool_shed.test.functional.test_1040_install_repository_basic_circular_dependencies.TestInstallingCircularDependencies[source]

Bases: ShedTwillTestCase

Verify that the code correctly handles installing repositories with circular dependencies.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_freebayes_repository()[source]

Create and populate freebayes_0040.

test_0015_create_filtering_repository()[source]

Create and populate filtering_0040.

test_0020_create_repository_dependencies()[source]

Set up the filtering and freebayes repository dependencies.

test_0025_install_freebayes_repository()[source]

Install freebayes with blank tool panel section, without tool dependencies but with repository dependencies.

test_0030_uninstall_filtering_repository()[source]

Deactivate filtering, verify tool panel section and missing repository dependency.

test_0035_reactivate_filtering_repository()[source]

Reinstall filtering into ‘filtering’ tool panel section.

test_0040_uninstall_freebayes_repository()[source]

Deactivate freebayes, verify tool panel section and missing repository dependency.

test_0045_deactivate_filtering_repository()[source]

Deactivate filtering, verify tool panel section.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1050_circular_dependencies_4_levels module

class tool_shed.test.functional.test_1050_circular_dependencies_4_levels.TestInstallRepositoryCircularDependencies[source]

Bases: ShedTwillTestCase

Verify that the code correctly handles circular dependencies down to n levels.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_convert_repository()[source]

Create and populate convert_chars_0050.

test_0010_create_column_repository()[source]

Create and populate convert_chars_0050.

test_0015_create_emboss_datatypes_repository()[source]

noop now…

test_0020_create_emboss_repository()[source]

Create and populate emboss_0050.

test_0025_create_filtering_repository()[source]

Create and populate filtering_0050.

test_0030_create_freebayes_repository()[source]

Create and populate freebayes_0050.

test_0035_create_bismark_repository()[source]

Create and populate bismark_0050.

test_0040_create_and_upload_dependency_definitions()[source]

Set up the dependency structure.

test_0045_verify_repository_dependencies()[source]

Verify that the generated dependency circle does not cause an infinite loop. Expected structure:

id: 2 key: http://toolshed.local:10001__ESEP__filtering__ESEP__test__ESEP__871602b4276b
[’http://toolshed.local:10001’, ‘emboss_5’, ‘test’, ‘8de5fe0d7b04’]
id: 3 key: http://toolshed.local:10001__ESEP__emboss_datatypes__ESEP__test__ESEP__dbd4f68bf507

[’http://toolshed.local:10001’, ‘freebayes’, ‘test’, ‘f40028114098’]

id: 4 key: http://toolshed.local:10001__ESEP__freebayes__ESEP__test__ESEP__f40028114098

[’http://toolshed.local:10001’, ‘emboss_datatypes’, ‘test’, ‘dbd4f68bf507’] [’http://toolshed.local:10001’, ‘emboss_5’, ‘test’, ‘8de5fe0d7b04’] [’http://toolshed.local:10001’, ‘column_maker’, ‘test’, ‘83e956bdbac0’]

id: 5 key: http://toolshed.local:10001__ESEP__column_maker__ESEP__test__ESEP__83e956bdbac0

[’http://toolshed.local:10001’, ‘convert_chars’, ‘test’, ‘b28134220c8a’]

id: 6 key: http://toolshed.local:10001__ESEP__convert_chars__ESEP__test__ESEP__b28134220c8a

[’http://toolshed.local:10001’, ‘column_maker’, ‘test’, ‘83e956bdbac0’]

id: 7 key: http://toolshed.local:10001__ESEP__emboss_5__ESEP__test__ESEP__8de5fe0d7b04

[’http://toolshed.local:10001’, ‘emboss_datatypes’, ‘test’, ‘dbd4f68bf507’]

test_0050_verify_tool_dependencies()[source]

Check that freebayes and emboss display tool dependencies.

test_0055_install_column_repository()[source]

Install column_maker with repository dependencies.

test_0060_install_emboss_repository()[source]

Install emboss_5 with repository dependencies.

test_0065_deactivate_bismark_repository()[source]

Deactivate bismark and verify things are okay.

test_0070_uninstall_emboss_repository()[source]

Uninstall the emboss_5 repository.

test_0075_install_freebayes_repository()[source]

Install freebayes with repository dependencies. This should also automatically reactivate bismark and reinstall emboss_5.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1070_invalid_tool module

class tool_shed.test.functional.test_1070_invalid_tool.TestFreebayesRepository[source]

Bases: ShedTwillTestCase

Test repository with multiple revisions with invalid tools.

requires_galaxy: bool = True
test_0000_create_or_login_admin_user()[source]

Create necessary user accounts and login as an admin user.

test_0005_ensure_existence_of_repository_and_category()[source]

Create freebayes repository and upload only freebayes.xml. This should result in an error message and invalid tool.

test_0010_browse_tool_shed()[source]

Browse the available tool sheds in this Galaxy instance and preview the bismark repository.

test_0015_install_freebayes_repository()[source]

Install the test repository without installing tool dependencies.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1080_advanced_circular_dependency_installation module

class tool_shed.test.functional.test_1080_advanced_circular_dependency_installation.TestRepositoryDependencies[source]

Bases: ShedTwillTestCase

Testing uninstalling and reinstalling repository dependencies, and setting tool panel sections.

requires_galaxy: bool = True
test_0000_create_or_login_admin_user()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_and_populate_column_repository()[source]

Create the category for this test suite, then create and populate column_maker.

test_0010_create_and_populate_convert_repository()[source]

Create and populate the convert_chars repository.

test_0015_upload_dependency_xml_if_needed()[source]

If this test is being run by itself, it will not have repository dependencies configured yet.

test_0020_install_convert_repository()[source]

Install convert_chars without repository dependencies into convert_chars tool panel section.

test_0025_install_column_repository()[source]

Install column maker with repository dependencies into column_maker tool panel section.

test_0030_deactivate_convert_repository()[source]

Deactivate convert_chars, verify that column_maker is installed and missing repository dependencies.

test_0035_reactivate_convert_repository()[source]

Reactivate convert_chars, both convert_chars and column_maker should now show as installed.

test_0040_deactivate_column_repository()[source]

Deactivate column_maker, verify that convert_chars is installed and missing repository dependencies.

test_0045_deactivate_convert_repository()[source]

Deactivate convert_chars, verify that both convert_chars and column_maker are deactivated.

test_0050_reactivate_column_repository()[source]

Reactivate column_maker. This should not automatically reactivate convert_chars, so column_maker should be displayed as installed but missing repository dependencies.

test_0055_reactivate_convert_repository()[source]

Activate convert_chars. Both convert_chars and column_maker should now show as installed.

test_0060_uninstall_column_repository()[source]

Uninstall column_maker. Verify that convert_chars is installed and missing repository dependencies.

test_0065_reinstall_column_repository()[source]

Reinstall column_maker without repository dependencies, verify both convert_chars and column_maker are installed.

test_0070_uninstall_convert_repository()[source]

Uninstall convert_chars, verify column_maker installed but missing repository dependencies.

test_0075_uninstall_column_repository()[source]

Uninstall column_maker, verify that both convert_chars and column_maker are uninstalled.

test_0080_reinstall_convert_repository()[source]

Reinstall convert_chars with repository dependencies, verify that this installs both convert_chars and column_maker.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1090_repository_dependency_handling module

class tool_shed.test.functional.test_1090_repository_dependency_handling.TestRepositoryDependencies[source]

Bases: ShedTwillTestCase

Testing the behavior of repository dependencies with tool panel sections.

requires_galaxy: bool = True
test_0000_create_or_login_admin_user()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_and_populate_column_repository()[source]

Create a category for this test suite and add repositories to it.

test_0010_create_and_populate_convert_repository()[source]
test_0015_create_and_upload_dependency_files()[source]
test_0020_install_repositories()[source]

Install column_maker into column_maker tool panel section and install repository dependencies.

test_0025_uninstall_column_repository()[source]

uninstall column_maker, verify same section

test_0030_uninstall_convert_repository()[source]
test_0035_reinstall_column_repository()[source]

reinstall column_maker into new section ‘new_column_maker’ (no_changes = false), no dependencies

test_0040_reinstall_convert_repository()[source]

reinstall convert_chars into new section ‘new_convert_chars’ (no_changes = false), no dependencies

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1100_install_updated_repository_dependencies module

class tool_shed.test.functional.test_1100_install_updated_repository_dependencies.TestRepositoryDependencies[source]

Bases: ShedTwillTestCase

Test installing a repository, then updating it to include repository dependencies.

requires_galaxy: bool = True
test_0000_create_or_login_admin_user()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_and_populate_column_repository()[source]

Create a category for this test suite and add repositories to it.

test_0010_create_and_populate_convert_repository()[source]

Create and populate the convert_chars repository.

test_0015_install_and_uninstall_column_repository()[source]

Install and uninstall the column_maker repository.

test_0020_upload_dependency_xml()[source]

Upload a repository_dependencies.xml file to column_maker that specifies convert_chars.

test_0025_verify_repository_dependency()[source]

Verify that the new revision of column_maker now depends on convert_chars.

test_0030_reinstall_column_repository()[source]

Reinstall column_maker and verify it installs repository dependencies.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1120_install_repository_with_complex_dependencies module

class tool_shed.test.functional.test_1120_install_repository_with_complex_dependencies.TestInstallingComplexRepositoryDependencies[source]

Bases: ShedTwillTestCase

Test features related to installing repositories with complex repository dependencies.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_bwa_package_repository()[source]

Create and populate package_bwa_0_5_9_0100.

test_0010_create_bwa_base_repository()[source]

Create and populate bwa_base_0100.

test_0015_generate_complex_repository_dependency_invalid_shed_url()[source]

Generate and upload a complex repository definition that specifies an invalid tool shed URL.

test_0020_generate_complex_repository_dependency_invalid_repository_name()[source]

Generate and upload a complex repository definition that specifies an invalid repository name.

test_0025_generate_complex_repository_dependency_invalid_owner_name()[source]

Generate and upload a complex repository definition that specifies an invalid owner.

test_0030_generate_complex_repository_dependency_invalid_changeset_revision()[source]

Generate and upload a complex repository definition that specifies an invalid changeset revision.

test_0035_generate_valid_complex_repository_dependency()[source]

Generate and upload a valid tool_dependencies.xml file that specifies package_bwa_0_5_9_0100.

test_0040_update_tool_repository()[source]

Upload a new tool_dependencies.xml to the tool repository, and verify that the base repository displays the new changeset.

test_0045_install_base_repository()[source]

Verify installation of the repository with complex repository dependencies.

test_0050_verify_installed_repositories()[source]

Verify that the installed repositories are displayed properly.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1130_install_repository_with_invalid_repository_dependency module

class tool_shed.test.functional.test_1130_install_repository_with_invalid_repository_dependency.TestBasicRepositoryDependencies[source]

Bases: ShedTwillTestCase

Testing emboss 5 with repository dependencies.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_category()[source]

Create a category for this test suite

test_0010_create_emboss_dependendent_column_maker_repository_and_upload_tarball()[source]

Create and populate the column_maker repository.

test_0020_create_emboss_5_repository_and_upload_files()[source]

Create and populate the emboss_5_0110 repository.

test_0025_generate_repository_dependency_with_invalid_url()[source]

Generate a repository dependency for emboss 5 with an invalid URL.

test_0030_generate_repository_dependency_with_invalid_name()[source]

Generate a repository dependency for emboss 5 with an invalid name.

test_0035_generate_repository_dependency_with_invalid_owner()[source]

Generate a repository dependency for emboss 5 with an invalid owner.

test_0040_generate_repository_dependency_with_invalid_changeset_revision()[source]

Generate a repository dependency for emboss 5 with an invalid changeset revision.

test_0045_install_repository_with_invalid_repository_dependency()[source]

Install the repository and verify that galaxy detects invalid repository dependencies.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1140_simple_repository_dependency_multiple_owners module

tool_shed.test.functional.test_1140_simple_repository_dependency_multiple_owners.tool_repository_long_description = 'Make a table from BLAST XML'

Tool shed side:

1) Create and populate blast_datatypes_0120. 1a) Check for appropriate strings. 2) Create and populate blastxml_to_top_descr_0120. 2a) Check for appropriate strings. 3) Upload repository_dependencies.xml to blastxml_to_top_descr_0120 that defines a relationship to blast_datatypes_0120. 3a) Check for appropriate strings. Galaxy side:

1) Install blastxml_to_top_descr_0120, with repository dependencies. 1a) Check for appropriate strings in the installed blastxml_to_top_descr_0120 and blast_datatypes_0120 repositories.

class tool_shed.test.functional.test_1140_simple_repository_dependency_multiple_owners.TestInstallRepositoryMultipleOwners[source]

Bases: ShedTwillTestCase

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

Create all the user accounts that are needed for this test script to run independently of other tests. Previously created accounts will not be re-created.

test_0005_create_datatypes_repository()[source]

Create and populate the blast_datatypes_0120 repository

We are at step 1. Create and populate blast_datatypes.

test_0010_verify_datatypes_repository()[source]

Verify the blast_datatypes_0120 repository.

We are at step 1a. Check for appropriate strings, most importantly BlastXml, BlastNucDb, and BlastProtDb, the datatypes that are defined in datatypes_conf.xml.

test_0015_create_tool_repository()[source]

Create and populate the blastxml_to_top_descr_0120 repository

We are at step 2. Create and populate blastxml_to_top_descr_0120.

test_0020_verify_tool_repository()[source]

Verify the blastxml_to_top_descr_0120 repository.

We are at step 2a. Check for appropriate strings, such as tool name, description, and version.

test_0025_create_repository_dependency()[source]

Create a repository dependency on blast_datatypes_0120.

We are at step 3. Create a simple repository dependency for blastxml_to_top_descr_0120 that defines a dependency on blast_datatypes_0120.

test_0040_verify_repository_dependency()[source]

Verify the created repository dependency.

We are at step 3a. Check the newly created repository dependency to ensure that it was defined and displays correctly.

test_0045_install_blastxml_to_top_descr()[source]

Install the blastxml_to_top_descr_0120 repository to Galaxy.

We are at step 1, Galaxy side. Install blastxml_to_top_descr_0120 to Galaxy, with repository dependencies, so that the datatypes repository is also installed.

test_0050_verify_repository_installation()[source]

Verify installation of blastxml_to_top_descr_0120 and blast_datatypes_0120.

We are at step 1a, Galaxy side. Check that the blastxml_to_top_descr_0120 and blast_datatypes_0120 repositories installed correctly, and that there are now new datatypes in the registry matching the ones defined in blast_datatypes_0120. Also check that blast_datatypes_0120 is labeled as an installed repository dependency of blastxml_to_top_descr_0120.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1150_datatype_converters module

tool_shed.test.functional.test_1160_tool_help_images module

class tool_shed.test.functional.test_1160_tool_help_images.TestToolHelpImages[source]

Bases: ShedTwillTestCase

Test features related to tool help images.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_htseq_count_repository()[source]

Create and populate htseq_count_0140.

We are at step 1 - Create and populate the htseq_count_0140 repository. Create the htseq_count_0140 repository and upload the tarball.

test_0010_load_tool_page()[source]

Load the tool page and check for the image URL.

This is a duplicate of test method _0010 in test_0140_tool_help_images.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1170_prior_installation_required module

tool_shed.test.functional.test_1170_prior_installation_required.category_description = 'Test 0150 Simple Prior Installation'

Create column_maker and convert_chars.

Column maker repository dependency: <repository toolshed=”self.url” name=”convert_chars” owner=”test” changeset_revision=”c3041382815c” prior_installation_required=”True” />

Verify display.

Galaxy side:

Install column_maker. Verify that convert_chars was installed first, contrary to the ordering that would be present without prior_installation_required.

class tool_shed.test.functional.test_1170_prior_installation_required.TestSimplePriorInstallation[source]

Bases: ShedTwillTestCase

Test features related to datatype converters.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_convert_repository()[source]

Create and populate convert_chars_0150.

test_0010_create_column_repository()[source]

Create and populate convert_chars_0150.

test_0015_create_repository_dependency()[source]

Create a repository dependency specifying convert_chars.

Column maker repository dependency:

<repository toolshed=”self.url” name=”convert_chars” owner=”test” changeset_revision=”<tip>” prior_installation_required=”True” />

test_0020_verify_repository_dependency()[source]

Verify that the previously generated repositiory dependency displays correctly.

test_0025_install_column_repository()[source]

Install column_maker_0150.

test_0030_verify_installation_order()[source]

Verify that convert_chars_0150 was installed before column_maker_0150.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1180_circular_prior_installation_required module

tool_shed.test.functional.test_1180_circular_prior_installation_required.category_description = 'Test 0160 Simple Prior Installation'

Create column_maker, filtering, and convert_chars.

Column maker repository dependency: <repository toolshed=”self.url” name=”convert_chars” owner=”test” changeset_revision=”c3041382815c” prior_installation_required=”True” /> <repository toolshed=”self.url” name=”filtering” owner=”test” changeset_revision=”c3041382815c” prior_installation_required=”True” />

Convert chars repository dependency: <repository toolshed=”self.url” name=”column_maker” owner=”test” changeset_revision=”c3041382815c” prior_installation_required=”True” /> <repository toolshed=”self.url” name=”filtering” owner=”test” changeset_revision=”c3041382815c” prior_installation_required=”True” />

Filtering repository dependency: <repository toolshed=”self.url” name=”column_maker” owner=”test” changeset_revision=”c3041382815c” prior_installation_required=”True” /> <repository toolshed=”self.url” name=”convert_chars” owner=”test” changeset_revision=”c3041382815c” prior_installation_required=”True” />

Verify display.

Galaxy side:

Install filtering. Verify that convert_chars was installed first, contrary to the ordering that would be present without prior_installation_required.

class tool_shed.test.functional.test_1180_circular_prior_installation_required.TestSimplePriorInstallation[source]

Bases: ShedTwillTestCase

Test features related to datatype converters.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_convert_repository()[source]

Create and populate convert_chars_0160.

test_0010_create_column_repository()[source]

Create and populate convert_chars_0160.

test_0015_create_filtering_repository()[source]

Create and populate filtering_0160.

test_0020_create_repository_dependency()[source]

Create a repository dependency specifying convert_chars.

Each of the three repositories should depend on the other two, to make this as circular as possible.

test_0025_verify_repository_dependency()[source]

Verify that the previously generated repositiory dependency displays correctly.

test_0030_install_filtering_repository()[source]

Install the filtering_0160 repository.

test_0035_verify_installation_order()[source]

Verify that convert_chars_0160 and column_maker_0160 were installed before filtering_0160.

test_0040_deactivate_all_repositories()[source]

Uninstall convert_chars_0160, column_maker_0160, and filtering_0160.

test_0045_reactivate_filter_repository()[source]

Reinstall the filtering_0160 repository.

test_0050_verify_reinstallation_order()[source]

Verify that convert_chars_0160 and column_maker_0160 were reinstalled before filtering_0160.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1190_complex_prior_installation_required module

tool_shed.test.functional.test_1190_complex_prior_installation_required.category_description = 'Test 0170 Prior Installation Complex Dependencies'
  1. Create and populate repositories package_matplotlib_1_2_0170 and package_numpy_1_7_0170.

  2. Create a complex repository dependency on package_numpy_1_7_0170, and upload this to package_matplotlib_1_2_0170.

  3. Verify that package_matplotlib_1_2_0170 now depends on package_numpy_1_7_0170, and that the inherited tool dependency displays correctly.

  4. Install package_matplotlib_1_2_0170 with repository dependencies.

  5. Verify that the prior_installation_required attribute resulted in package_numpy_1_7_0170 being installed first.

class tool_shed.test.functional.test_1190_complex_prior_installation_required.TestComplexPriorInstallation[source]

Bases: ShedTwillTestCase

Test features related to datatype converters.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_matplotlib_repository()[source]

Create and populate the package_matplotlib_1_2_0170 repository.

This is step 1 - Create and populate repositories package_matplotlib_1_2_0170 and package_numpy_1_7_0170.

test_0010_create_numpy_repository()[source]

Create and populate the package_numpy_1_7_0170 repository.

This is step 1 - Create and populate repositories package_matplotlib_1_2_0170 and package_numpy_1_7_0170.

test_0015_create_complex_repository_dependency()[source]

Create a dependency on package_numpy_1_7_0170.

This is step 2 - Create a complex repository dependency on package_numpy_1_7_0170, and upload this to package_matplotlib_1_2_0170. package_matplotlib_1_2_0170 should depend on package_numpy_1_7_0170, with prior_installation_required set to True. When matplotlib is selected for installation, the result should be that numpy is compiled and installed first.

test_0020_verify_generated_dependency()[source]

Verify that matplotlib now has a package tool dependency and a complex repository dependency.

This is step 3 - Verify that package_matplotlib_1_2_0170 now depends on package_numpy_1_7_0170, and that the inherited tool dependency displays correctly. ‘Inherited’ in this case means that matplotlib should show a package tool dependency on numpy version 1.7, and a repository dependency on the latest revision of package_numpy_1_7_0170.

test_0025_install_matplotlib_repository()[source]

Install the package_matplotlib_1_2_0170 repository.

This is step 4 - Install package_matplotlib_1_2_0170 with repository dependencies.

test_0030_verify_installation_order()[source]

Verify that the numpy repository was installed before the matplotlib repository.

This is step 5 - Verify that the prior_installation_required attribute resulted in package_numpy_1_7_0170 being installed first. In the previous step, package_matplotlib_1_2_0170 was selected for installation, but package_numpy_1_7_0170 had the prior_installation_required attribute set. Confirm that this resulted in package_numpy_1_7_0170 being installed before package_matplotlib_1_2_0170.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1200_uninstall_and_reinstall_basic_repository module

class tool_shed.test.functional.test_1200_uninstall_and_reinstall_basic_repository.TestUninstallingAndReinstallingRepositories[source]

Bases: ShedTwillTestCase

Test uninstalling and reinstalling a basic repository.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_ensure_repositories_and_categories_exist()[source]

Create the 0000 category and upload the filtering repository to the tool shed, if necessary.

test_0010_install_filtering_repository()[source]

Install the filtering repository into the Galaxy instance.

test_0015_uninstall_filtering_repository()[source]

Uninstall the filtering repository.

test_0020_reinstall_filtering_repository()[source]

Reinstall the filtering repository.

test_0025_deactivate_filtering_repository()[source]

Deactivate the filtering repository without removing it from disk.

test_0030_reactivate_filtering_repository()[source]

Reactivate the filtering repository and verify that it now shows up in the list of installed repositories.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1210_uninstall_reinstall_repository_with_tool_dependencies module

class tool_shed.test.functional.test_1210_uninstall_reinstall_repository_with_tool_dependencies.TestUninstallingAndReinstallingRepositories[source]

Bases: ShedTwillTestCase

Test uninstalling and reinstalling a repository with tool dependencies.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_ensure_repositories_and_categories_exist()[source]

Create the 0010 category and upload the freebayes repository to the tool shed, if necessary.

test_0010_install_freebayes_repository()[source]

Install the freebayes repository into the Galaxy instance.

test_0015_uninstall_freebayes_repository()[source]

Uninstall the freebayes repository.

test_0020_reinstall_freebayes_repository()[source]

Reinstall the freebayes repository.

test_0025_deactivate_freebayes_repository()[source]

Deactivate the freebayes repository without removing it from disk.

test_0030_reactivate_freebayes_repository()[source]

Reactivate the freebayes repository and verify that it now shows up in the list of installed repositories.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1220_uninstall_reinstall_repository_with_repository_dependencies module

tool_shed.test.functional.test_1230_uninstall_reinstall_repository_with_dependency_revisions module

class tool_shed.test.functional.test_1230_uninstall_reinstall_repository_with_dependency_revisions.TestUninstallingAndReinstallingRepositories[source]

Bases: ShedTwillTestCase

Test uninstalling and reinstalling a repository with repository dependency revisions.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_ensure_repositories_and_categories_exist()[source]

Create the 0030 category and upload the emboss repository to the tool shed, if necessary.

test_0010_install_emboss_repository()[source]

Install the emboss repository into the Galaxy instance.

test_0015_uninstall_emboss_repository()[source]

Uninstall the emboss repository.

test_0020_reinstall_emboss_repository()[source]

Reinstall the emboss repository.

test_0025_deactivate_emboss_repository()[source]

Deactivate the emboss repository without removing it from disk.

test_0030_reactivate_emboss_repository()[source]

Reactivate the emboss repository and verify that it now shows up in the list of installed repositories.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1300_reset_all_metadata module

tool_shed.test.functional.test_1300_reset_all_metadata.category_0060_name = 'Test 0060 Workflow Features'

This script will run in one of two possible ways:

  1. Directly, by calling sh run_functional_tests.sh -toolshed test/tool_shed/functional/test_1300_reset_all_metadata.py. -or-

  2. After the previous test scripts have completed.

In the first case, it is desirable to have the Galaxy database in a state that is as close as possible to the state it would be in following the second case. This means explicitly installing whatever repositories would be in an installed state following the previous test scripts.

class tool_shed.test.functional.test_1300_reset_all_metadata.TestResetInstalledRepositoryMetadata[source]

Bases: ShedTwillTestCase

Verify that the “Reset selected metadata” feature works.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_categories()[source]

Create the categories for the repositories in this test script.

test_0010_create_repositories_from_0000_series()[source]

Create repository filtering_0000 if necessary.

test_0015_create_repositories_from_0010_series()[source]

Create repository freebayes_0010.

test_0020_create_repositories_from_0020_series()[source]

Create repositories emboss_0020 and column_maker_0020 if necessary.

test_0025_create_repositories_from_0030_series()[source]

Create repositories emboss_0030, emboss_5_0030, emboss_6_0030, and emboss_datatypes_0030.

test_0030_create_repositories_from_0040_series()[source]

Create repositories freebayes_0040 and filtering_0040.

test_0035_create_repositories_from_0050_series()[source]

Create repositories emboss_0050, emboss_datatypes_0050, filtering_0050, freebayes_0050.

test_9900_install_all_missing_repositories()[source]

Call the install_repository method to ensure that all required repositories are installed.

test_9905_reset_metadata_on_all_repositories()[source]

Reset metadata on all repositories, then verify that it has not changed.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1410_update_manager module

tool_shed.test.functional.test_1410_update_manager.category_description = 'Functional test suite to test the update manager.'
  1. Create and populate the filtering_1410 repository.

  2. Install filtering_1410 to Galaxy.

  3. Upload a readme file.

  4. Verify that the browse page now shows an update available.

class tool_shed.test.functional.test_1410_update_manager.TestUpdateManager[source]

Bases: ShedTwillTestCase

Test the Galaxy update manager.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts and login as an admin user.

Create all the user accounts that are needed for this test script to run independently of other tests. Previously created accounts will not be re-created.

test_0005_create_filtering_repository()[source]

Create and populate the filtering_1410 repository.

We are at step 1 - Create and populate the filtering_1410 repository. Create filtering_1410 and upload the tool tarball to it.

test_0010_install_filtering_repository()[source]

Install the filtering_1410 repository.

We are at step 2 - Install filtering_1410 to Galaxy. Install the filtering repository to Galaxy.

test_0015_upload_readme_file()[source]

Upload readme.txt to filtering_1410.

We are at step 3 - Upload a readme file. Upload readme.txt. This will have the effect of making the installed changeset revision not be the most recent downloadable revision, but without generating a second downloadable revision. Then sleep for 3 seconds to make sure the update manager picks up the new revision.

test_0020_check_for_displayed_update()[source]

Browse installed repositories and verify update.

We are at step 4 - Verify that the browse page now shows an update available. The browse page should now show filtering_1410 as installed, but with a yellow box indicating that there is an update available.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1430_repair_installed_repository module

tool_shed.test.functional.test_1430_repair_installed_repository.column_repository_long_description = 'column_1430: Add a value as a new column'

In the Tool Shed:

  1. Create and populate the filter_1430 repository

  2. Create and populate the column_1430 repository

  3. Upload a repository_dependencies.xml file to the column_1430 repository that creates a repository dependency on the filter_1430 repository.

In Galaxy:

  1. Install the column_1430 repository, making sure to check the checkbox to Handle repository dependencies so that the filter repository is also installed. Make sure to install the repositories in a specified section of the tool panel.

  2. Uninstall the filter_1430 repository.

class tool_shed.test.functional.test_1430_repair_installed_repository.TestRepairRepository[source]

Bases: ShedTwillTestCase

Test repairing an installed repository.

requires_galaxy: bool = True
test_0000_initiate_users_and_category()[source]

Create necessary user accounts and login as an admin user.

test_0005_create_filter_repository()[source]

Create and populate the filter_1430 repository.

This is step 1 - Create and populate the filter_1430 repository.

This repository will be depended on by the column_1430 repository.

test_0010_create_column_repository()[source]

Create and populate the column_1430 repository.

This is step 2 - Create and populate the column_1430 repository.

This repository will depend on the filter_1430 repository.

test_0015_create_repository_dependency()[source]

Create a dependency on filter_1430.

This is step 3 - Upload a repository_dependencies.xml file to the column_1430 repository that creates a repository dependency on the filter_1430 repository.

test_0020_install_column_repository()[source]

Install the column_1430 repository into Galaxy.

This is step 1 (galaxy side) - Install the column_1430 repository, making sure to check the checkbox to handle repository dependencies so that the filter_1430 repository is also installed. Make sure to install the repositories in a specified section of the tool panel.

test_0025_uninstall_filter_repository()[source]

Uninstall the filter_1430 repository from Galaxy.

This is step 2 - Uninstall the filter_1430 repository.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1450_installing_datatypes_sniffers module

tool_shed.test.functional.test_1460_data_managers module

tool_shed.test.functional.test_1460_data_managers.data_manager_tar_file = '1460_files/data_manager_files/test_data_manager.tar'
  1. Add a Data Manager to toolshed

  2. install Data Manager

  3. Check that Data Manager tool

class tool_shed.test.functional.test_1460_data_managers.TestDataManagers[source]

Bases: ShedTwillTestCase

Test installing a repository containing a Data Manager.

requires_galaxy: bool = True
test_0000_initiate_users_and_category()[source]

Create necessary user accounts and login as an admin user.

test_0010_create_data_manager_repository()[source]

Create and populate data_manager_1460.

This is step 1 - Create repository data_manager_1460.

Create and populate a repository that contains a Data manager.

test_0020_install_data_manager_repository()[source]

Install the data_manager_1460 repository to galaxy.

This is step 3 - Attempt to install the repository into a galaxy instance, verify that it is installed.

test_0030_verify_data_manager_tool()[source]

Verify that the data_manager_1460 repository is installed and Data Manager tool appears in list in Galaxy.

test_0040_verify_data_manager_data_table()[source]

Verify that the installed repository populated shed_tool_data_table.xml and the sample files.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver

tool_shed.test.functional.test_1470_updating_installed_repositories module

tool_shed.test.functional.test_1470_updating_installed_repositories.category_description = 'Functional test suite to ensure that updating installed repositories does not create white ghosts.'
  1. Install a repository into Galaxy.

  2. In the Tool Shed, update the repository from Step 1.

  3. In Galaxy, get updates to the repository.

  4. In Galaxy, uninstall the repository.

  5. In Galaxy, reinstall the repository.

  6. Make sure step 5 created no white ghosts.

class tool_shed.test.functional.test_1470_updating_installed_repositories.TestUpdateInstalledRepository[source]

Bases: ShedTwillTestCase

Verify that the code correctly handles updating an installed repository, then uninstalling and reinstalling.

requires_galaxy: bool = True
test_0000_initiate_users()[source]

Create necessary user accounts.

test_0005_create_filtering_repository()[source]

Create and populate the filtering_0530 repository.

test_0010_install_filtering_to_galaxy()[source]

Install the filtering_1470 repository to galaxy.

This is step 1 - Install a repository into Galaxy.

test_0015_update_repository()[source]

Upload a readme file to the filtering_1470 repository.

This is step 2 - In the Tool Shed, update the repository from Step 1.

Importantly, this update should not create a new installable changeset revision, because that would eliminate the process we’re testing in this script. So, we upload a readme file.

test_0020_get_repository_updates()[source]

Get updates to the installed repository.

This is step 3 - In Galaxy, get updates to the repository.

test_0025_uninstall_repository()[source]

Uninstall the filtering_1470 repository.

This is step 4 - In Galaxy, uninstall the repository.

test_0030_reinstall_repository()[source]

Reinstall the filtering_1470 repository.

This is step 5 - In Galaxy, reinstall the repository.

test_0035_verify_absence_of_ghosts()[source]

Check the count of repositories in the database named filtering_1470 and owned by user1.

This is step 6 - Make sure step 5 created no white ghosts.

host: str
port: str | None
url: str
keepOutdir: str
test_data_resolver: TestDataResolver