Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Samtools (htslib) integration testing #1120

Closed
jpdna opened this issue Aug 19, 2016 · 3 comments
Closed

Samtools (htslib) integration testing #1120

jpdna opened this issue Aug 19, 2016 · 3 comments
Assignees

Comments

@jpdna
Copy link
Member

@jpdna jpdna commented Aug 19, 2016

Need to add SAM/BAM/VCF round trip integration tests (htslib) to complement existing htsjdk based unit tests. As motivated by #1104

@jpdna jpdna changed the title Samtools integration testing Samtools (htslib) integration testing Aug 19, 2016
@jpdna jpdna self-assigned this Aug 19, 2016
@jpdna
Copy link
Member Author

@jpdna jpdna commented Aug 19, 2016

Wanted to see if anyone has suggestions on three aspects of this before I get going on it:

1) How should we inform the test suite of where it can find samtools executable?
We could ask that a "SAMTOOLS_HOME" env variable be set and if test suite finds a working samtools there then those tests run, otherwise skipped with a warning output? Or - the test itself could download a samtools docker container, but then docker is needed. Method we use needs to work with Jenkins.

  1. Where should the intregration test code should go? One idea: test/scala/org/bdgenomics/adam/rdd/read/SamtoolsSuite.scala for the sam/bam

  2. Is it an ok approach to extend ADAMFunSuite for these samtools intergration tests just as we do for all the unit test suites?

@fnothaft
Copy link
Member

@fnothaft fnothaft commented Aug 19, 2016

Going out of order:

  1. Is it an ok approach to extend ADAMFunSuite for these samtools intergration tests just as we do for all the unit test suites?

That sounds good to me!

  1. How should we inform the test suite of where it can find samtools executable?

We could ask that a "SAMTOOLS_HOME" env variable be set and if test suite finds a working samtools there then those tests run, otherwise skipped with a warning output? Or - the test itself could download a samtools docker container, but then docker is needed. Method we use needs to work with Jenkins.

We'll want to tag all of these tests with some sort of an integration test tag. That said, I think that requiring Docker for the integration tests is A-OK. We'll be the main consumers of the integration test suite.

We'll also need to create a repo with integration test files, because these should be real life sized inputs.

  1. Where should the intregration test code should go? One idea: test/scala/org/bdgenomics/adam/rdd/read/SamtoolsSuite.scala for the sam/bam

I would probably put them in an org.bdgenomics.adam.integration package. This one would probably fit best in org.bdgenomics.adam.cli.integration, actually.

@fnothaft
Copy link
Member

@fnothaft fnothaft commented Mar 3, 2017

Closing this in favor of #1407.

@fnothaft fnothaft closed this Mar 3, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
You can’t perform that action at this time.