Skip to content

Commit 9559ebc

Browse files
committed
ENH fix tests.sh
1 parent 65bafb5 commit 9559ebc

File tree

6 files changed

+109
-82
lines changed

6 files changed

+109
-82
lines changed

gmsc_mapper/main.py

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,7 @@ def parse_args(args):
129129
parser.add_argument('--db', '--db',
130130
required=False,
131131
help='Path to the GMSC database file.',
132-
dest='database',
133-
default=path.join(_ROOT, 'db/targetdb.dmnd'))
132+
dest='database')
134133

135134
parser.add_argument('--habitat', '--habitat',
136135
required=False,
@@ -303,24 +302,26 @@ def download_db(args):
303302
def create_db(args):
304303
if not os.path.exists(args.output):
305304
os.makedirs(args.output)
306-
out_db = path.join(args.output,"targetdb")
305+
306+
diamond_out_db = path.join(args.output,"diamond_targetdb")
307+
mmseqs_out_db = path.join(args.output,"mmseqs_targetdb")
307308

308309
if args.quiet:
309310
diamond_cmd = ['diamond','makedb',
310311
'--in',args.target_faa,
311-
'-d',out_db,
312+
'-d',diamond_out_db,
312313
'--quiet']
313314
mmseqs_cmd = ['mmseqs','createdb',
314315
args.target_faa,
315-
out_db,
316+
mmseqs_out_db,
316317
'-v','0']
317318
else:
318319
diamond_cmd = ['diamond','makedb',
319320
'--in',args.target_faa,
320-
'-d',out_db]
321+
'-d',diamond_out_db]
321322
mmseqs_cmd = ['mmseqs','createdb',
322323
args.target_faa,
323-
out_db]
324+
mmseqs_out_db]
324325

325326
if args.mode == "diamond":
326327
logger.info('Start creating Diamond database...')
@@ -512,7 +513,7 @@ def main(args=None):
512513

513514
if args.tool == 'diamond':
514515
if args.database is None:
515-
args.database = path.join(_ROOT, 'db/targetdb.dmnd')
516+
args.database = path.join(_ROOT, 'db/diamond_targetdb.dmnd')
516517
args.sensitivity = {
517518
None: '--more-sensitive',
518519
'1': '--fast',
@@ -526,7 +527,7 @@ def main(args=None):
526527

527528
if args.tool == 'mmseqs':
528529
if args.database is None:
529-
args.database = path.join(_ROOT, 'db/targetdb')
530+
args.database = path.join(_ROOT, 'db/mmseqs_targetdb')
530531
if args.sensitivity is None:
531532
args.sensitivity = 5.7
532533

tests.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ gmsc-mapper createdb -i examples/target.faa -o examples/ -m diamond --quiet
88
gmsc-mapper createdb -i examples/target.faa -o examples/ -m mmseqs --quiet
99

1010
echo "Testing basic usage"
11-
gmsc-mapper -i ./examples/example.fa -o ./examples_output/ --db ./examples/targetdb.dmnd --habitat ./examples/ref_habitat.npy --habitat-index ./examples/ref_habitat_index.tsv --quality ./examples/ref_quality.txt --taxonomy ./examples/ref_taxonomy.npy --taxonomy-index ./examples/ref_taxonomy_index.tsv --quiet
11+
gmsc-mapper -i examples/example.fa -o examples_output/ --db examples/diamond_targetdb.dmnd --habitat examples/ref_habitat.npy --habitat-index examples/ref_habitat_index.tsv --quality examples/ref_quality.txt --taxonomy examples/ref_taxonomy.npy --taxonomy-index examples/ref_taxonomy_index.tsv --domain examples/ref_domain.txt --quiet
1212
python tests/diamond_contig.py
1313

14-
gmsc-mapper --aa-genes examples/example.faa -o examples_output/ --db examples/targetdb.dmnd --habitat ./examples/ref_habitat.npy --habitat-index ./examples/ref_habitat_index.tsv --quality examples/ref_quality.txt --taxonomy ./examples/ref_taxonomy.npy --taxonomy-index ./examples/ref_taxonomy_index.tsv --quiet
14+
gmsc-mapper --aa-genes examples/example.faa -o examples_output/ --db examples/diamond_targetdb.dmnd --habitat examples/ref_habitat.npy --habitat-index examples/ref_habitat_index.tsv --quality examples/ref_quality.txt --taxonomy examples/ref_taxonomy.npy --taxonomy-index examples/ref_taxonomy_index.tsv --domain examples/ref_domain.txt --quiet
1515
python tests/diamond_protein.py
1616

17-
gmsc-mapper --nt-genes examples/example.fna -o examples_output/ --db examples/targetdb.dmnd --habitat ./examples/ref_habitat.npy --habitat-index ./examples/ref_habitat_index.tsv --quality examples/ref_quality.txt --taxonomy ./examples/ref_taxonomy.npy --taxonomy-index ./examples/ref_taxonomy_index.tsv --quiet
17+
gmsc-mapper --nt-genes examples/example.fna -o examples_output/ --db examples/diamond_targetdb.dmnd --habitat examples/ref_habitat.npy --habitat-index examples/ref_habitat_index.tsv --quality examples/ref_quality.txt --taxonomy examples/ref_taxonomy.npy --taxonomy-index examples/ref_taxonomy_index.tsv --domain examples/ref_domain.txt --quiet
1818
python tests/diamond_gene.py
1919

2020
echo "Testing tool flag - MMSeqs"
21-
gmsc-mapper -i examples/example.fa -o examples_output/ --db examples/targetdb --habitat ./examples/ref_habitat.npy --habitat-index ./examples/ref_habitat_index.tsv --quality examples/ref_quality.txt --taxonomy ./examples/ref_taxonomy.npy --taxonomy-index ./examples/ref_taxonomy_index.tsv --tool mmseqs --quiet
21+
gmsc-mapper -i examples/example.fa -o examples_output/ --db examples/mmseqs_targetdb --habitat ./examples/ref_habitat.npy --habitat-index ./examples/ref_habitat_index.tsv --quality examples/ref_quality.txt --taxonomy ./examples/ref_taxonomy.npy --taxonomy-index ./examples/ref_taxonomy_index.tsv --domain examples/ref_domain.txt --tool mmseqs --quiet
2222
python tests/mmseqs_contig.py

tests/diamond_contig.py

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,19 @@
22
import sys
33

44
def checkf(f):
5-
return filecmp.cmp(f"./tests/diamond_contig/${f}",
6-
f"./examples_output/${f}")
5+
return filecmp.cmp(f"./tests/diamond_contig/{f}",
6+
f"./examples_output/{f}")
77

88
ok = True
99

10-
if not checkf("alignment.out.smorfs.tsv"):
11-
ok = False
12-
print('\nContig input of Diamond mode alignment results have something wrong.\n')
13-
1410
if not checkf("predicted.filterd.smorf.faa"):
1511
ok = False
1612
print('\nContig input of Diamond mode predicted fasta results have something wrong.\n')
1713

14+
if not checkf("alignment.out.smorfs.tsv"):
15+
ok = False
16+
print('\nContig input of Diamond mode alignment results have something wrong.\n')
17+
1818
if not checkf("mapped.smorfs.faa"):
1919
ok = False
2020
print('\nContig input of Diamond mode mapped fasta results have something wrong.\n')
@@ -31,13 +31,15 @@ def checkf(f):
3131
ok = False
3232
print('\nContig input of Diamond mode quality results have something wrong.\n')
3333

34+
if not checkf("domain.out.smorfs.tsv"):
35+
ok = False
36+
print('\nContig input of Diamond mode domain results have something wrong.\n')
37+
3438
if not checkf("summary.txt"):
3539
ok = False
3640
print('\nContig input of Diamond mode summary results have something wrong.\n')
3741

3842
if ok:
3943
print('\nContig input of Diamond mode checking has passed.\n')
4044
else:
41-
sys.exit(1)
42-
43-
45+
sys.exit(1)

tests/diamond_gene.py

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,37 @@
11
import filecmp
22
import sys
33

4-
alignment_flag = filecmp.cmp("./tests/diamond_gene/alignment.out.smorfs.tsv", "./examples_output/alignment.out.smorfs.tsv")
4+
def checkf(f):
5+
return filecmp.cmp(f"./tests/diamond_gene/{f}",
6+
f"./examples_output/{f}")
7+
58
ok = True
6-
if not alignment_flag:
9+
10+
if not checkf("alignment.out.smorfs.tsv"):
711
ok = False
812
print('\nGene input of Diamond mode alignment results have something wrong.\n')
913

10-
fasta_flag = filecmp.cmp("./tests/diamond_gene/mapped.smorfs.faa", "./examples_output/mapped.smorfs.faa")
11-
if not fasta_flag:
14+
if not checkf("mapped.smorfs.faa"):
1215
ok = False
1316
print('\nGene input of Diamond mode mapped fasta results have something wrong.\n')
1417

15-
habitat_flag = filecmp.cmp("./tests/diamond_gene/habitat.out.smorfs.tsv", "./examples_output/habitat.out.smorfs.tsv")
16-
if not habitat_flag:
18+
if not checkf("habitat.out.smorfs.tsv"):
1719
ok = False
1820
print('\nGene input of Diamond mode habitat results have something wrong.\n')
1921

20-
taxonomy_flag = filecmp.cmp("./tests/diamond_gene/taxonomy.out.smorfs.tsv", "./examples_output/taxonomy.out.smorfs.tsv")
21-
if not taxonomy_flag:
22+
if not checkf("taxonomy.out.smorfs.tsv"):
2223
ok = False
2324
print('\nGene input of Diamond mode taxonomy results have something wrong.\n')
2425

25-
quality_flag = filecmp.cmp("./tests/diamond_gene/quality.out.smorfs.tsv", "./examples_output/quality.out.smorfs.tsv")
26-
if not quality_flag:
26+
if not checkf("quality.out.smorfs.tsv"):
2727
ok = False
2828
print('\nGene input of Diamond mode quality results have something wrong.\n')
2929

30-
summary_flag = filecmp.cmp("./tests/diamond_gene/summary.txt", "./examples_output/summary.txt")
31-
if not summary_flag:
30+
if not checkf("domain.out.smorfs.tsv"):
31+
ok = False
32+
print('\nGene input of Diamond mode domain results have something wrong.\n')
33+
34+
if not checkf("summary.txt"):
3235
ok = False
3336
print('\nGene input of Diamond mode summary results have something wrong.\n')
3437

tests/diamond_protein.py

Lines changed: 33 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,42 @@
1-
def diamond_protein_test():
2-
import filecmp
1+
import filecmp
2+
import sys
33

4-
alignment_flag = filecmp.cmp("./tests/diamond_protein/alignment.out.smorfs.tsv", "./examples_output/alignment.out.smorfs.tsv")
5-
if not alignment_flag:
6-
print('\nProtein input of Diamond mode alignment results have something wrong.\n')
4+
def checkf(f):
5+
return filecmp.cmp(f"./tests/diamond_protein/{f}",
6+
f"./examples_output/{f}")
77

8-
fasta_flag = filecmp.cmp("./tests/diamond_protein/mapped.smorfs.faa", "./examples_output/mapped.smorfs.faa")
9-
if not fasta_flag:
10-
print('\nProtein input of Diamond mode mapped fasta results have something wrong.\n')
8+
ok = True
119

12-
habitat_flag = filecmp.cmp("./tests/diamond_protein/habitat.out.smorfs.tsv", "./examples_output/habitat.out.smorfs.tsv")
13-
if not habitat_flag:
14-
print('\nProtein input of Diamond mode habitat results have something wrong.\n')
10+
if not checkf("alignment.out.smorfs.tsv"):
11+
ok = False
12+
print('\nProtein input of Diamond mode alignment results have something wrong.\n')
1513

16-
taxonomy_flag = filecmp.cmp("./tests/diamond_protein/taxonomy.out.smorfs.tsv", "./examples_output/taxonomy.out.smorfs.tsv")
17-
if not taxonomy_flag:
18-
print('\nProtein input of Diamond mode taxonomy results have something wrong.\n')
14+
if not checkf("mapped.smorfs.faa"):
15+
ok = False
16+
print('\nProtein input of Diamond mode mapped fasta results have something wrong.\n')
1917

20-
quality_flag = filecmp.cmp("./tests/diamond_protein/quality.out.smorfs.tsv", "./examples_output/quality.out.smorfs.tsv")
21-
if not quality_flag:
22-
print('\nProtein input of Diamond mode quality results have something wrong.\n')
18+
if not checkf("habitat.out.smorfs.tsv"):
19+
ok = False
20+
print('\nProtein input of Diamond mode habitat results have something wrong.\n')
2321

24-
summary_flag = filecmp.cmp("./tests/diamond_protein/summary.txt", "./examples_output/summary.txt")
25-
if not summary_flag:
26-
print('\nProtein input of Diamond mode summary results have something wrong.\n')
22+
if not checkf("taxonomy.out.smorfs.tsv"):
23+
ok = False
24+
print('\nProtein input of Diamond mode taxonomy results have something wrong.\n')
2725

28-
if alignment_flag and fasta_flag and habitat_flag and taxonomy_flag and quality_flag and summary_flag:
29-
print('\nProtein input of Diamond mode checking has passed.\n')
26+
if not checkf("quality.out.smorfs.tsv"):
27+
ok = False
28+
print('\nProtein input of Diamond mode quality results have something wrong.\n')
3029

31-
return(alignment_flag,fasta_flag,habitat_flag,taxonomy_flag,quality_flag,summary_flag)
30+
if not checkf("domain.out.smorfs.tsv"):
31+
ok = False
32+
print('\nProtein input of Diamond mode quality results have something wrong.\n')
33+
34+
if not checkf("summary.txt"):
35+
ok = False
36+
print('\nProtein input of Diamond mode summary results have something wrong.\n')
37+
38+
if ok:
39+
print('\nGene input of Diamond mode checking has passed.\n')
40+
else:
41+
sys.exit(1)
3242

33-
diamond_protein_test()

tests/mmseqs_contig.py

Lines changed: 36 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,45 @@
1-
def mmseqs_contig_test():
2-
import filecmp
1+
import filecmp
2+
import sys
33

4-
predict_flag = filecmp.cmp("./tests/mmseqs_contig/predicted.filterd.smorf.faa", "./examples_output/predicted.filterd.smorf.faa")
5-
if not predict_flag:
6-
print('\nContig input of MMseqs2 mode predicted fasta results have something wrong.\n')
4+
def checkf(f):
5+
return filecmp.cmp(f"./tests/mmseqs_contig/{f}",
6+
f"./examples_output/{f}")
77

8-
fasta_flag = filecmp.cmp("./tests/mmseqs_contig/mapped.smorfs.faa", "./examples_output/mapped.smorfs.faa")
9-
if not fasta_flag:
10-
print('\nContig input of MMseqs2 mode mapped fasta results have something wrong.\n')
8+
ok = True
119

12-
habitat_flag = filecmp.cmp("./tests/mmseqs_contig/habitat.out.smorfs.tsv", "./examples_output/habitat.out.smorfs.tsv")
13-
if not habitat_flag:
14-
print('\nContig input of MMseqs2 mode habitat results have something wrong.\n')
10+
if not checkf("predicted.filterd.smorf.faa"):
11+
ok = False
12+
print('\nContig input of MMseqs2 mode predicted fasta results have something wrong.\n')
1513

16-
taxonomy_flag = filecmp.cmp("./tests/mmseqs_contig/taxonomy.out.smorfs.tsv", "./examples_output/taxonomy.out.smorfs.tsv")
17-
if not taxonomy_flag:
18-
print('\nContig input of MMseqs2 mode taxonomy results have something wrong.\n')
14+
if not checkf("alignment.out.smorfs.tsv"):
15+
ok = False
16+
print('\nContig input of MMseqs2 mode alignment results have something wrong.\n')
1917

20-
quality_flag = filecmp.cmp("./tests/mmseqs_contig/quality.out.smorfs.tsv", "./examples_output/quality.out.smorfs.tsv")
21-
if not quality_flag:
22-
print('\nContig input of MMseqs2 mode quality results have something wrong.\n')
18+
if not checkf("mapped.smorfs.faa"):
19+
ok = False
20+
print('\nContig input of MMseqs2 mode mapped fasta results have something wrong.\n')
2321

24-
summary_flag = filecmp.cmp("./tests/mmseqs_contig/summary.txt", "./examples_output/summary.txt")
25-
if not summary_flag:
26-
print('\nContig input of MMseqs2 mode summary results have something wrong.\n')
22+
if not checkf("habitat.out.smorfs.tsv"):
23+
ok = False
24+
print('\nContig input of MMseqs2 mode habitat results have something wrong.\n')
2725

28-
if predict_flag and fasta_flag and habitat_flag and taxonomy_flag and quality_flag and summary_flag:
29-
print('\nContig input of MMseqs2 mode checking has passed.\n')
26+
if not checkf("taxonomy.out.smorfs.tsv"):
27+
ok = False
28+
print('\nContig input of MMseqs2 mode taxonomy results have something wrong.\n')
3029

31-
return(predict_flag,fasta_flag,habitat_flag,taxonomy_flag,quality_flag,summary_flag)
30+
if not checkf("quality.out.smorfs.tsv"):
31+
ok = False
32+
print('\nContig input of MMseqs2 mode quality results have something wrong.\n')
3233

33-
mmseqs_contig_test()
34+
if not checkf("domain.out.smorfs.tsv"):
35+
ok = False
36+
print('\nContig input of MMseqs2 mode domain results have something wrong.\n')
37+
38+
if not checkf("summary.txt"):
39+
ok = False
40+
print('\nContig input of MMseqs2 mode summary results have something wrong.\n')
41+
42+
if ok:
43+
print('\nContig input of Diamond mode checking has passed.\n')
44+
else:
45+
sys.exit(1)

0 commit comments

Comments
 (0)