Mercurial > repos > jpayne > bioproject2srr
annotate tests.py @ 0:79fa4330f2c9 draft default tip
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
| author | jpayne |
|---|---|
| date | Mon, 08 Dec 2025 20:18:03 +0000 |
| parents | |
| children |
| rev | line source |
|---|---|
|
0
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
1 import pytest |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
2 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
3 from bio2srr import * |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
4 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
5 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
6 def test_element_tree_xpath(): |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
7 from xml.etree import ElementTree as xml |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
8 root = xml.fromstring(biosample_example) |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
9 assert root.find(".//Id[@db='BioSample']") is not None |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
10 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
11 def test_flatten_biosample_xml(): |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
12 d = flatten_biosample_xml(biosample_example) |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
13 assert d['biosample_accession'] == 'SAMN17131268' |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
14 assert d['organism'] == 'Campylobacter jejuni' |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
15 assert d['isolate'] == 'CFSAN091032' |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
16 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
17 def test_flatten_runs(): |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
18 d = list(flatten_runs(runs_example)) |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
19 assert len(d) == 2 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
20 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
21 def test_header_sort_override_consistency(): |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
22 import random |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
23 L = ["C", "B", "A", "taxid", "bioproject"] |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
24 L.sort(key=hso) |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
25 # assert L[0] == "bioproject" |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
26 A = L.copy() |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
27 assert A == L |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
28 R = [] |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
29 for _ in range(100): |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
30 random.shuffle(A) |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
31 A.sort(key=hso) |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
32 R.append(A == L) |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
33 assert all(R) |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
34 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
35 def test_hso_override(): |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
36 assert header_sort_override("bioproject", "taxid") < 0 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
37 assert header_sort_override("taxid", "bioproject") > 0 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
38 assert header_sort_override("taxid", "taxid") == 0 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
39 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
40 def test_hso_regular(): |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
41 assert header_sort_override("A", "B") < 0 |
|
79fa4330f2c9
planemo upload commit 27af5cba48986d508a67a5024a3bd35dd47bee15-dirty
jpayne
parents:
diff
changeset
|
42 assert header_sort_override("B", "A") > 0 |
