diff options
author | BonfaceKilz | 2021-05-17 14:34:25 +0300 |
---|---|---|
committer | zsloan | 2021-06-18 22:08:04 +0000 |
commit | c73c4d4edf88d2af5636962f1e4710be17516ea1 (patch) | |
tree | b6e9ab7d6a7a7d1b26936ba34d2b04cc47b858ef | |
parent | c5488d5c4556e84397a36c3dbc27dab377749bb3 (diff) | |
download | genenetwork3-c73c4d4edf88d2af5636962f1e4710be17516ea1.tar.gz |
tests: test_phenotypes: New test cases for loading phenotypes
-rw-r--r-- | tests/unit/db/test_phenotypes.py | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/unit/db/test_phenotypes.py b/tests/unit/db/test_phenotypes.py new file mode 100644 index 0000000..8b810fe --- /dev/null +++ b/tests/unit/db/test_phenotypes.py @@ -0,0 +1,41 @@ +"""Tests for db/phenotypes.py""" +from unittest import TestCase +from unittest import mock + +from gn3.db.phenotypes import Phenotype +from gn3.db.phenotypes import update_phenotype + + +class TestPhenotypes(TestCase): + """Test cases for fetching chromosomes""" + def test_update_phenotype_with_no_data(self): + """ + Test that a phenotype is updated correctly if an empty Phenotype dataclass + is provided + """ + db_mock = mock.MagicMock() + self.assertEqual(update_phenotype( + db_mock, data=Phenotype(), where=Phenotype()), None) + + def test_update_phenotype_with_data(self): + """ + Test that a phenotype is updated correctly if some + data is provided + """ + db_mock = mock.MagicMock() + with db_mock.cursor() as cursor: + type(cursor).rowcount = 1 + self.assertEqual(update_phenotype( + db_mock, data=Phenotype( + pre_pub_description="Test Pre Pub", + submitter="Rob", + post_pub_description="Test Post Pub"), + where=Phenotype(id_=1)), 1) + cursor.execute.assert_called_once_with( + "UPDATE Phenotype SET " + "Pre_publication_description = " + "'Test Pre Pub', " + "Post_publication_description = " + "'Test Post Pub', Submitter = 'Rob' " + "WHERE id = '1'" + ) |