Skip to content

Commit 3f449f0

Browse files
committed
update tests
1 parent ebf8d6f commit 3f449f0

File tree

3 files changed

+38
-31
lines changed

3 files changed

+38
-31
lines changed

nf-tests/.nftignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,5 @@ orthologs.tsv.gz
66
report.*
77
**/*.html
88
**/*.hogmap
9+
RootHOGsFasta/*.fa.gz
10+
OrthologousGroupsFasta/*.fa.gz

nf-tests/default.nf.test

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,19 @@ nextflow_pipeline {
4040
sorted_rows.each { row ->
4141
lines.add(header.collect { col -> row[col] ?: '' }.join('\t'))
4242
}
43-
return [name: file.name, md5: listToMD5(lines)]
43+
return [name: file.name, md5: listToMD5(lines), lineCount: lines.size()]
44+
}
45+
def fixed_line_number_files = getAllFilesFromDir(params.output_folder, include:['RootHOGs.tsv', 'OrthologousGroups.tsv', 'orthologs.tsv.gz', "FastOMA_HOGs.orthoxml", 'hogmap/*.hogmap']).collect { file ->
46+
def line_count
47+
if (file.name.endsWith('.gz')) {
48+
// Use try-with-resources for proper cleanup
49+
new java.util.zip.GZIPInputStream(file.newInputStream()).withCloseable { gzipStream ->
50+
line_count = gzipStream.readLines().size()
51+
}
52+
} else {
53+
line_count = file.readLines().size()
54+
}
55+
return [name: file.name, lineCount: line_count]
4456
}
4557

4658
assertAll(
@@ -53,7 +65,12 @@ nextflow_pipeline {
5365
// All files with stable contents
5466
stable_path,
5567
// List of all files with timestamps filtered out
56-
timestamp_files
68+
// does not yet work, as hogmap files have percision issues
69+
// and FastOMA_HOGs is not completely deterministic
70+
// timestamp_files
71+
72+
// files with fixed number of lines
73+
fixed_line_number_files
5774
).match() }
5875
)
5976
}

nf-tests/default.nf.test.snap

Lines changed: 17 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -44,56 +44,44 @@
4444
"stats"
4545
],
4646
[
47-
"OG_0000001.fa.gz:md5,0d66f05814d8ae19cfc92e9c524732ec",
48-
"OG_0000002.fa.gz:md5,ef9c8f91804962843307a71b115398ca",
49-
"OG_0000003.fa.gz:md5,a9a53b274a2ee456e8f42f29f7cdd041",
50-
"OG_0000004.fa.gz:md5,ae11efbff2957ec2fd5f26e7043f1044",
51-
"OG_0000005.fa.gz:md5,9747e7267109929d902a0cd921b9a4a9",
52-
"OG_0000006.fa.gz:md5,cc5b8cfcb48b384c870b39c36182add9",
53-
"OG_0000007.fa.gz:md5,ad8c0d95094dd8817fe510e752ae7e89",
54-
"OG_0000008.fa.gz:md5,b5de472745972a17a29bdf2f0129d8fa",
55-
"OG_0000009.fa.gz:md5,4bad2b524cb84aecdf19b0f93ea8534e",
56-
"OG_0000010.fa.gz:md5,d9b8763576656b3e747d5a87de6f74b8",
57-
"OG_0000011.fa.gz:md5,443fab9c4961ebfb8187165be27a9577",
58-
"OG_0000012.fa.gz:md5,e4b128f477155cd74ff10528d7adc09f",
59-
"HOG0000001.fa.gz:md5,0d66f05814d8ae19cfc92e9c524732ec",
60-
"HOG0000002.fa.gz:md5,ef9c8f91804962843307a71b115398ca",
61-
"HOG0000003.fa.gz:md5,a9a53b274a2ee456e8f42f29f7cdd041",
62-
"HOG0000004.fa.gz:md5,ae11efbff2957ec2fd5f26e7043f1044",
63-
"HOG0000005.fa.gz:md5,9747e7267109929d902a0cd921b9a4a9",
64-
"HOG0000006.fa.gz:md5,cc5b8cfcb48b384c870b39c36182add9",
65-
"HOG0000007.fa.gz:md5,ad8c0d95094dd8817fe510e752ae7e89",
66-
"HOG0000008.fa.gz:md5,b5de472745972a17a29bdf2f0129d8fa",
67-
"HOG0000009.fa.gz:md5,4bad2b524cb84aecdf19b0f93ea8534e",
68-
"HOG0000010.fa.gz:md5,d9b8763576656b3e747d5a87de6f74b8",
69-
"HOG0000011.fa.gz:md5,443fab9c4961ebfb8187165be27a9577",
70-
"HOG0000012.fa.gz:md5,e4b128f477155cd74ff10528d7adc09f",
7147
"phylostratigraphy.html:md5,060aafe142edbe56cd004090d695177d",
7248
"species_tree_checked.nwk:md5,4c82a2f2ffa72a595aaf2fd3deddeff7"
7349
],
7450
[
7551
{
7652
"name": "FastOMA_HOGs.orthoxml",
77-
"md5": "ac011cd1d734cae01beee5bcb5cda143"
53+
"lineCount": 162
54+
},
55+
{
56+
"name": "OrthologousGroups.tsv",
57+
"lineCount": 28
58+
},
59+
{
60+
"name": "RootHOGs.tsv",
61+
"lineCount": 28
7862
},
7963
{
8064
"name": "AQUAE.fa.hogmap",
81-
"md5": "7a8c848990c9dce91d6c50d48ae1ddd1"
65+
"lineCount": 20
8266
},
8367
{
8468
"name": "CHLTR.fa.hogmap",
85-
"md5": "f81877dc801f04e105dbedabe16c5cc0"
69+
"lineCount": 18
8670
},
8771
{
8872
"name": "MYCGE.fa.hogmap",
89-
"md5": "8715ee4eff99f751ca1d3d90b770574c"
73+
"lineCount": 14
74+
},
75+
{
76+
"name": "orthologs.tsv.gz",
77+
"lineCount": 18
9078
}
9179
]
9280
],
9381
"meta": {
9482
"nf-test": "0.9.3",
9583
"nextflow": "24.10.5"
9684
},
97-
"timestamp": "2025-10-14T16:11:27.355334"
85+
"timestamp": "2025-10-23T12:09:08.301966"
9886
}
9987
}

0 commit comments

Comments
 (0)