Tool dependency environments with functional tests

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Tool dependency environments with functional tests

Aaron Petkau
Hello everyone,

I've been trying to get some functional tests developed for my tools and I'm trying to figure out how to properly run them.  I'm following the guide at https://wiki.galaxyproject.org/TestingInstalledTools  but when I run the functional tests against tools installed from my tool shed I get some strange error messages like:

Can't open perl script "//find-repeats.pl": No such file or directory


It can't find the script because in the tool XML file it is being run using an environment variable like

<command interpreter="perl">
  /\$VCF2PSEUDO/find-repeats.pl -l $length -p $pid $fasta > $out

The environment variable is set up in one of the dependency packages for this tool.

If I set this environment variable manually "export VCF2PSEUDO=/path/to/dir" and then run the tests with:

export GALAXY_TOOL_DEPENDENCY_DIR=tool_dependencies
sh run_functional_tests.sh -installed


Then all my tests properly work.

So, I'm wondering does the run_functional_tests.sh script setup the environment for dependency packages for each tool?  Or is there something I'm missing?

Thanks and sorry for the longing email.  I'm still new to setting up and using functional tests in Galaxy,

Aaron

___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
  http://lists.bx.psu.edu/

To search Galaxy mailing lists use the unified search at:
  http://galaxyproject.org/search/mailinglists/
Reply | Threaded
Open this post in threaded view
|

Re: Tool dependency environments with functional tests

Aaron Petkau
I was able to partially solve this by running a small command to source all my "env.sh" files before I run all the tests.  For example:

export GALAXY_TOOL_DEPENDENCY_DIR=/path/to/tool-dependencies
for i in `find $GALAXY_TOOL_DEPENDENCY_DIR -iname 'env.sh'`; do source $i; done
sh run_functional_tests.sh -installed

Not sure if it's the best way to handle things, but it works for now.

Aaron


On Fri, Jul 11, 2014 at 2:54 PM, Aaron Petkau <[hidden email]> wrote:
Hello everyone,

I've been trying to get some functional tests developed for my tools and I'm trying to figure out how to properly run them.  I'm following the guide at https://wiki.galaxyproject.org/TestingInstalledTools  but when I run the functional tests against tools installed from my tool shed I get some strange error messages like:

Can't open perl script "//find-repeats.pl": No such file or directory


It can't find the script because in the tool XML file it is being run using an environment variable like

<command interpreter="perl">
  /\$VCF2PSEUDO/find-repeats.pl -l $length -p $pid $fasta > $out

The environment variable is set up in one of the dependency packages for this tool.

If I set this environment variable manually "export VCF2PSEUDO=/path/to/dir" and then run the tests with:

export GALAXY_TOOL_DEPENDENCY_DIR=tool_dependencies
sh run_functional_tests.sh -installed


Then all my tests properly work.

So, I'm wondering does the run_functional_tests.sh script setup the environment for dependency packages for each tool?  Or is there something I'm missing?

Thanks and sorry for the longing email.  I'm still new to setting up and using functional tests in Galaxy,

Aaron


___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
  http://lists.bx.psu.edu/

To search Galaxy mailing lists use the unified search at:
  http://galaxyproject.org/search/mailinglists/