broadinstitute / adapt

A package for designing activity-informed nucleic acid diagnostics for viruses.
MIT License
27 stars 1 forks source link

Integration tests #36

Closed priyappillai closed 3 years ago

priyappillai commented 3 years ago

Integration tests for design.py, including testing for fasta, auto-from-args, auto-from-file, sliding-window, complete-targets, minimize-guides, maximize-activity, specific-against-fasta, and specific-against-taxa. Edits besides integration tests:

priyappillai commented 3 years ago

Besides the small comments I made, I would suggest adding tests for the silly (but probably common) cases where the user isn't using it correctly: no arguments, missing positional arguments, and anything like that. I think the check is mostly that the program outputs a help message rather than crashing (with a non-zero exit code).

I'm unfortunately finding that argparse returns with a non-zero exit code when running cases with bad/missing arguments, even when it gives a proper help message via command line. Is it alright if we skip these? I think this functionality is mostly built into argparse, and so is unlikely to be broken by us (unless we're directly editing the parser, but in that case I'm assuming we'd manually be testing it anyway and/or changing the function significantly enough to render the tests invalid)