commit/galaxy-central: Dave Bouvier: When checking tool shed repositories for functional tests and test data, explicitly filter out metadata records that have been specified not to be tested by the repository owner.
1 new commit in galaxy-central: https://bitbucket.org/galaxy/galaxy-central/commits/5ad8db7ff748/ Changeset: 5ad8db7ff748 User: Dave Bouvier Date: 2013-07-29 19:50:55 Summary: When checking tool shed repositories for functional tests and test data, explicitly filter out metadata records that have been specified not to be tested by the repository owner. Affected #: 1 file diff -r fe04978dadac9974ab1954ab2091539e58caf3e4 -r 5ad8db7ff74881f13420f9e0b6f171d4f2acfd99 lib/tool_shed/scripts/check_repositories_for_functional_tests.py --- a/lib/tool_shed/scripts/check_repositories_for_functional_tests.py +++ b/lib/tool_shed/scripts/check_repositories_for_functional_tests.py @@ -24,7 +24,7 @@ import galaxy.webapps.tool_shed.config as tool_shed_config import galaxy.webapps.tool_shed.model.mapping import sqlalchemy as sa -from galaxy.model.orm import and_, not_ +from galaxy.model.orm import and_, not_, select from galaxy.util.json import from_json_string, to_json_string from galaxy.web import url_for from galaxy.tools import parameters @@ -200,6 +200,7 @@ } ''' start = time.time() + skip_metadata_ids = [] checked_repository_ids = [] tool_count = 0 has_tests = 0 @@ -208,13 +209,16 @@ valid_revisions = 0 invalid_revisions = 0 records_checked = 0 + # Do not check metadata records that have an entry in the skip_tool_tests table, since they won't be tested anyway. + skip_metadata_ids = select( [ app.model.SkipToolTest.table.c.repository_metadata_id ] ) # Get the list of metadata records to check for functional tests and test data. Limit this to records that have not been flagged do_not_test, # since there's no need to check them again if they won't be tested anyway. Also filter out changeset revisions that are not downloadable, # because it's redundant to test a revision that a user can't install. for metadata_record in app.sa_session.query( app.model.RepositoryMetadata ) \ .filter( and_( app.model.RepositoryMetadata.table.c.downloadable == True, app.model.RepositoryMetadata.table.c.includes_tools == True, - app.model.RepositoryMetadata.table.c.do_not_test == False ) ): + app.model.RepositoryMetadata.table.c.do_not_test == False, + not_( app.model.RepositoryMetadata.table.c.id.in_( skip_metadata_ids ) ) ) ): records_checked += 1 # Initialize the repository_status dict with the test environment, but leave the test_errors empty. repository_status = {} Repository URL: https://bitbucket.org/galaxy/galaxy-central/ -- This is a commit notification from bitbucket.org. You are receiving this because you have the service enabled, addressing the recipient of this email.
participants (1)
-
commits-noreply@bitbucket.org