Closed priyappillai closed 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)
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
, andspecific-against-taxa
. Edits besides integration tests:Exception
>FileNotFoundError
when MAFFT can't be found to make it easier to catch specificallyprint_analysis
insliding-windows
to be based on if the logging level was verbose or not.