commit/galaxy-central: greg: Set a repository revision as missing test components only if test components are missing for all tools in the revision.
1 new commit in galaxy-central: https://bitbucket.org/galaxy/galaxy-central/commits/9ff030d0daee/ Changeset: 9ff030d0daee User: greg Date: 2013-11-28 23:38:38 Summary: Set a repository revision as missing test components only if test components are missing for all tools in the revision. Affected #: 2 files diff -r 5aede225ebef9801748b0f2948f5d1c387368ee7 -r 9ff030d0daee11b2187d9784a8b0a57742a671c2 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 @@ -104,8 +104,7 @@ app.model.RepositoryMetadata.table.c.includes_tools == True, app.model.RepositoryMetadata.table.c.do_not_test == False, not_( app.model.RepositoryMetadata.table.c.id.in_( skip_metadata_ids ) ) ) ): - # Clear any old invalid tests for this metadata revision, since this could lead to duplication of invalid test rows, - # or tests incorrectly labeled as invalid. + # Initialize some items. missing_test_components = [] repository = repository_metadata.repository records_checked += 1 @@ -154,8 +153,7 @@ tool_version = tool_dict[ 'version' ] tool_guid = tool_dict[ 'guid' ] if verbosity >= 1: - print "# Checking tool ID '%s' in changeset revision %s of %s." % \ - ( tool_id, changeset_revision, name ) + print "# Checking tool ID '%s' in changeset revision %s of %s." % ( tool_id, changeset_revision, name ) # If there are no tests, this tool should not be tested, since the tool functional tests only report failure if the test itself fails, # not if it's missing or undefined. Filtering out those repositories at this step will reduce the number of "false negatives" the # automated functional test framework produces. @@ -282,7 +280,11 @@ print "# and it is not the latest downloadable revision." repository_metadata.do_not_test = True repository_metadata.tools_functionally_correct = False - repository_metadata.missing_test_components = True + if not testable_revision: + # Even though some tools may be missing test components, it may be possible to test other tools. Since the + # install and test framework filters out repositories marked as missing test components, we'll set it only if + # no tools can be tested. + repository_metadata.missing_test_components = True tool_test_results_dict[ 'missing_test_components' ] = missing_test_components # Store only the configured number of test runs. num_tool_test_results_saved = int( app.config.num_tool_test_results_saved ) diff -r 5aede225ebef9801748b0f2948f5d1c387368ee7 -r 9ff030d0daee11b2187d9784a8b0a57742a671c2 lib/tool_shed/util/container_util.py --- a/lib/tool_shed/util/container_util.py +++ b/lib/tool_shed/util/container_util.py @@ -1122,6 +1122,9 @@ containing_folder.folders.append( folder ) failed_test_id = 0 for failed_tests_dict in failed_tests_dicts: + # TODO: Remove this when invalid test data is eliminated. + if isinstance( failed_tests_dict, list ): + failed_tests_dict = failed_tests_dict[ 0 ] failed_test_id += 1 failed_test = FailedTest( id=failed_test_id, stderr=failed_tests_dict.get( 'stderr', '' ), 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