aboutsummaryrefslogtreecommitdiff
path: root/tests/unit
diff options
context:
space:
mode:
authorMuriithi Frederick Muriuki2021-09-01 06:18:20 +0300
committerMuriithi Frederick Muriuki2021-09-01 06:42:51 +0300
commit221c773daea839ecf0e50c196484bb91e3a6db33 (patch)
tree50e139dd0bbed18e1771fcfcd3dd0195ec78efe7 /tests/unit
parentb5e1d1176f1bf4f7c0b68b27beb15e99418f1650 (diff)
downloadgenenetwork3-221c773daea839ecf0e50c196484bb91e3a6db33.tar.gz
Implement parsing of genotype labels
Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * gn3/db/genotypes.py: parse genotype labels * tests/unit/db/test_genotypes.py: test that genotype labels are parsed correctly As part of parsing the genotype files into usable python data structures, this commit adds a function to parse the label lines (beginning with "@") into the appropriate values.
Diffstat (limited to 'tests/unit')
-rw-r--r--tests/unit/db/test_genotypes.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/unit/db/test_genotypes.py b/tests/unit/db/test_genotypes.py
new file mode 100644
index 0000000..0264764
--- /dev/null
+++ b/tests/unit/db/test_genotypes.py
@@ -0,0 +1,17 @@
+"""Tests gn3.db.genotypes"""
+from unittest import TestCase
+from gn3.db.genotypes import parse_genotype_labels
+
+class TestGenotypes(TestCase):
+ """Tests for functions in `gn3.db.genotypes`."""
+
+ def test_parse_genotype_labels(self):
+ self.assertEqual(
+ parse_genotype_labels([
+ "@name: test_group\t", "@filler: test_filler ",
+ "@type:test_type", "@mat:test_mat \t", "@pat:test_pat ",
+ "@het: test_het ", "@unk: test_unk", "@other: test_other",
+ "@brrr: test_brrr "]),
+ (("group", "test_group"), ("filler", "test_filler"),
+ ("type", "test_type"), ("mat", "test_mat"), ("pat", "test_pat"),
+ ("het", "test_het"), ("unk", "test_unk")))