Hi Peter, Looks like you are missing the -data_managers flag, try this: run_functional_tests.sh -data_managers -id data_manager_blast_db Let us know if you encounter more issues. Thanks, Dan On Apr 11, 2014, at 12:15 PM, Peter Cock <p.j.a.cock@googlemail.com> wrote:
Hi all,
I'm currently trying to manually install Dan's example Data Manager for the NCBI BLAST databases - but without using the Tool Shed: http://testtoolshed.g2.bx.psu.edu/view/blankenberg/data_manager_example_blas...
To be precise, I'm currently using a slightly modified version which we've moved into the Galaxy BLAST+ wrapper repository (thus far, only slight changes to folder names have been made from Dan's original): https://github.com/peterjc/galaxy_blast/tree/master/data_managers/ncbi_blast... https://github.com/peterjc/galaxy_blast/commit/21d7cff3e8dca13c4bd0f716a79a9...
My goal is to be able to run the functional tests,
$ ./run_functional_tests.sh -id data_manager_blast_db
As with any other manually installed tool, I have added this data-manager to my tool_conf.xml.sample file (and for local testing via the GUI, the tool_conf.xml file as well):
<tool file="ncbi_blastdb/blastdb.xml" />
Specific to data-managers, I have manually incorporated the additions to the central data_manager_conf.xml file (this would normally be merged at runtime if installed from the ToolShed):
$ more data_manager_conf.xml <?xml version="1.0"?> <data_managers> <data_manager tool_file="ncbi_blastdb/blastdb.xml" id="data_manager_blast_db"> <data_table name="blastdb"> <output> <column name="value" /> <column name="name" /> <column name="path" output_ref="out_file" > <move type="directory"> <target base="${GALAXY_DATA_MANAGER_DATA_PATH}">blastdb/${path}</target> </move>
<value_translation>${GALAXY_DATA_MANAGER_DATA_PATH}/blastdb/${path}/${nucleotide_alias_name}</value_translation> <value_translation type="function">abspath</value_translation> </column> </output> </data_table> </data_manager> </data_managers>
Note the tool_file setting points correctly at the relative path within the tools folder, and the tool does define a test:
$ more tools/ncbi_blastdb/blastdb.xml <tool id="data_manager_blast_db" name="Blast DB" version="0.0.2" tool_type="manage_data"> <description>Downloader</description> ... <tests> <test> <param name="blastdb_name" value="est"/> <param name="advanced_selector" value="basic"/> <output name="out_file" file="est_out.json"/> </test> </tests> ...
$ ./run_functional_tests.sh -list | grep manager data_manager_blast_db Blast DB
$ ./run_functional_tests.sh -id data_manager_blast_db ... galaxy.tools DEBUG 2014-04-11 15:59:00,780 Loaded tool id: data_manager_blast_db, version: 0.0.2 into tool panel. ... galaxy.tools.data_manager.manager DEBUG 2014-04-11 15:59:00,864 Loaded Data Manager: data_manager_blast_db ... Failure: ValueError (No such test TestForTool_data_manager_blast_db) ... ERROR
====================================================================== ERROR: Failure: ValueError (No such test TestForTool_data_manager_blast_db) ---------------------------------------------------------------------- Traceback (most recent call last): File "/mnt/galaxy/galaxy-central/eggs/nose-0.11.1-py2.6.egg/nose/failure.py", line 39, in runTest raise self.exc_class(self.exc_val) ValueError: No such test TestForTool_data_manager_blast_db
----------------------------------------------------------------------
I get the same error via TravisCI, e.g. https://travis-ci.org/peterjc/galaxy_blast/builds/22782979
(This suggests using Twill vs the API does not matter)
Am I missing something simple here?
Thanks,
Peter