aboutsummaryrefslogtreecommitdiff
path: root/wqflask/tests
diff options
context:
space:
mode:
authorzsloan2022-09-06 13:32:28 -0500
committerGitHub2022-09-06 13:32:28 -0500
commitd8bc7067b717e0b680d98b7cfcbc26c758a109bf (patch)
tree571677761b3bb464b55bc19f208f135214321ad2 /wqflask/tests
parente0626f40d8fe4fa83daba52b82c1b459b34b1849 (diff)
parent363237f11b9eb14f52c4f0c43a931c99c827c496 (diff)
downloadgenenetwork2-d8bc7067b717e0b680d98b7cfcbc26c758a109bf.tar.gz
Merge branch 'testing' into feature/generalize_tables
Diffstat (limited to 'wqflask/tests')
-rw-r--r--wqflask/tests/unit/wqflask/api/test_mapping.py13
-rw-r--r--wqflask/tests/unit/wqflask/marker_regression/test_gemma_mapping.py8
-rw-r--r--wqflask/tests/unit/wqflask/show_trait/test_export_trait_data.py140
3 files changed, 52 insertions, 109 deletions
diff --git a/wqflask/tests/unit/wqflask/api/test_mapping.py b/wqflask/tests/unit/wqflask/api/test_mapping.py
index 159c982b..006e9826 100644
--- a/wqflask/tests/unit/wqflask/api/test_mapping.py
+++ b/wqflask/tests/unit/wqflask/api/test_mapping.py
@@ -25,7 +25,9 @@ class TestMapping(unittest.TestCase):
"maf": 0.01,
"use_loco": True,
"num_perm": 0,
- "perm_check": False
+ "perm_check": False,
+ "transform": False,
+ "genofile": False
}
results = initialize_parameters(
@@ -40,8 +42,9 @@ class TestMapping(unittest.TestCase):
"pair_scan": "true",
"interval_mapping": "true",
"use_loco": "true",
- "num_perm": "14"
-
+ "num_perm": "14",
+ "transform": "qnorm",
+ "genofile": "BXD.8.geno"
}
results_2 = initialize_parameters(
@@ -53,7 +56,9 @@ class TestMapping(unittest.TestCase):
"maf": 0.01,
"use_loco": True,
"num_perm": 14,
- "perm_check": "ON"
+ "perm_check": "ON",
+ "transform": "qnorm",
+ "genofile": "BXD.8.geno"
}
self.assertEqual(results_2, expected_results)
diff --git a/wqflask/tests/unit/wqflask/marker_regression/test_gemma_mapping.py b/wqflask/tests/unit/wqflask/marker_regression/test_gemma_mapping.py
index 611c0d70..53d96d7f 100644
--- a/wqflask/tests/unit/wqflask/marker_regression/test_gemma_mapping.py
+++ b/wqflask/tests/unit/wqflask/marker_regression/test_gemma_mapping.py
@@ -165,12 +165,12 @@ X\tM5\t12\tQ\tE\tMMB\tR\t21.1\tW\t0.65\t0.6"""
this_dataset={}, gwa_output_filename=".xw/")
expected_results = [
{'name': 'M1', 'chr': 'X/Y', 'Mb': 2.8457155e-05, 'p_value': 0.85,
- 'additive': -23.3, 'lod_score': 0.07058107428570727},
+ 'additive': -11.65, 'lod_score': 0.07058107428570727},
{'name': 'M2', 'chr': 4, 'Mb': 1.2e-05, 'p_value': 0.5,
- 'additive': -24.0, 'lod_score': 0.3010299956639812},
+ 'additive': -12.0, 'lod_score': 0.3010299956639812},
{'name': 'M4', 'chr': 'Y', 'Mb': 1.2e-05, 'p_value': 0.7,
- 'additive': -11.6, 'lod_score': 0.1549019599857432},
- {'name': 'M5', 'chr': 'X', 'Mb': 1.2e-05, 'p_value': 0.6, 'additive': -21.1, 'lod_score': 0.22184874961635637}]
+ 'additive': -5.8, 'lod_score': 0.1549019599857432},
+ {'name': 'M5', 'chr': 'X', 'Mb': 1.2e-05, 'p_value': 0.6, 'additive': -10.55, 'lod_score': 0.22184874961635637}]
self.assertEqual(expected_results, results)
@mock.patch("wqflask.marker_regression.gemma_mapping.TEMPDIR", "/home/tmp")
diff --git a/wqflask/tests/unit/wqflask/show_trait/test_export_trait_data.py b/wqflask/tests/unit/wqflask/show_trait/test_export_trait_data.py
index 41761944..fbe39f13 100644
--- a/wqflask/tests/unit/wqflask/show_trait/test_export_trait_data.py
+++ b/wqflask/tests/unit/wqflask/show_trait/test_export_trait_data.py
@@ -1,3 +1,4 @@
+import datetime
import unittest
from unittest import mock
from wqflask.show_trait.export_trait_data import dict_to_sorted_list
@@ -13,116 +14,53 @@ class AttributesSetter:
class TestExportTraits(unittest.TestCase):
- """Test methods related to converting dict to sortedlist"""
- @mock.patch("wqflask.show_trait.export_trait_data.create_trait")
- @mock.patch("wqflask.show_trait.export_trait_data.data_set")
- def test_get_export_metadata_no_publish(self, mock_dataset, mock_trait):
- """test for exporting metadata with no publish"""
- mock_dataset_attributes = AttributesSetter(
- {"type": "no_publish", "dataset_name": "Temp", "name": "Temp"})
-
- mock_nested_attributes = AttributesSetter({"name": "name"})
- mock_dataset_attributes.group = mock_nested_attributes
- mock_dataset.create_dataset.return_value = mock_dataset_attributes
- mock_trait.return_value = AttributesSetter({"symbol": "", "description_display": "Description",
- "title": "research1", "journal": "", "authors": ""})
-
- results = get_export_metadata("random_id", "Temp")
- expected = [["Record ID: random_id"],
- ["Trait URL: http://genenetwork.org/show_trait?trait_id=random_id&dataset=Temp"],
- ["Dataset: Temp"],
- ["Group: name"], []]
-
- mock_dataset.create_dataset.assert_called_with("Temp")
- mock_trait.assert_called_with(
- dataset=mock_dataset_attributes, name="random_id", cellid=None, get_qtl_info=False)
- self.assertEqual(results, expected)
+ """Test methods for exporting traits and metadata"""
+ @mock.patch("wqflask.show_trait.export_trait_data.datetime")
@mock.patch("wqflask.show_trait.export_trait_data.create_trait")
@mock.patch("wqflask.show_trait.export_trait_data.data_set")
- def test_get_export_metadata_with_publish(self, data_mock, trait_mock):
+ def test_get_export_metadata(self, data_mock, trait_mock, date_mock):
"""test for exporting metadata with dataset.type=Publish"""
- mock_dataset_attributes = AttributesSetter({"type": "Publish", "dataset_name": "Temp",
- "name": "Temp", "description_display": "Description goes here"})
-
- mock_nested_attributes = AttributesSetter({"name": "name"})
- mock_dataset_attributes.group = mock_nested_attributes
- data_mock.create_dataset.return_value = mock_dataset_attributes
- trait_instance = AttributesSetter({"symbol": "", "description_display": "Description",
- "title": "research1", "journal": "", "authors": ""})
- trait_mock.return_value = trait_instance
+ mock_dataset = AttributesSetter({"type": "Publish",
+ "name": "HC_M2_0606_P",
+ "dataset_name": "HC_M2_0606_P"})
- results = get_export_metadata(
- "29ae0615-0d77-4814-97c7-c9e91f6bfd7b", "Temp")
+ mock_dataset.group = AttributesSetter({"name": "C"})
+ data_mock.create_dataset.return_value = mock_dataset
- expected = [['Phenotype ID: 29ae0615-0d77-4814-97c7-c9e91f6bfd7b'],
- ['Phenotype URL: http://genenetwork.org/show_trait?trait_id=29ae0615-0d77-4814-97c7-c9e91f6bfd7b&dataset=Temp'], [
- 'Group: name'], ['Phenotype: Description'],
- ['Authors: N/A'], ['Title: research1'],
- ['Journal: N/A'], ['Dataset Link: http://gn1.genenetwork.org/webqtl/main.py?FormID=sharinginfo&InfoPageName=Temp'], []]
+ trait_data = {
+ "symbol": "Nr3c1",
+ "description_display": "nuclear receptor subfamily 3,group C, member 1 (glucocorticoid receptor); distal 3' UTR",
+ "title": "Trait_1 title",
- self.assertEqual(results, expected)
+ "authors": "XL_1",
+ "journal": ""
- @mock.patch("wqflask.show_trait.export_trait_data.dict_to_sorted_list")
- @mock.patch("wqflask.show_trait.export_trait_data.get_export_metadata")
- def test_export_sample_table(self, exp_metadata, dict_list):
- """test for exporting sample table"""
- targs_obj = {
- "export_data": """{
- "primary_samples": [
- {
- "other": "germanotta",
- "name": "Sauroniops",
- "se":{
- "name":"S2"
- },
- "num_cases":{
- "k1":"value"
-
- }
- }
- ],
- "other_samples": [
- {
- "se": 1,
- "num_cases": 4,
- "value": 6,
- "name": 3
- }
- ]
- }""",
- "trait_display_name": "Hair_color",
- "trait_id": "23177fdc-312e-4084-ad0c-f3eae785fff5",
- "dataset": {
- }
}
- exp_metadata.return_value = [
- ["Phenotype ID:0a2be192-57f5-400b-bbbd-0cf50135995f"], ['Group:gp1'],
- ["Phenotype:p1"], [
- "Authors:N/A"],
- ["Title:research1"],
- ["Journal:N/A"],
- ["Dataset Link: http://gn1.genenetwork.org/webqtl/main.py?FormID=sharinginfo&InfoPageName=name1"], []]
- expected = ('Hair_color',
- [['Phenotype ID:0a2be192-57f5-400b-bbbd-0cf50135995f'],
- ['Group:gp1'],
- ['Phenotype:p1'],
- ['Authors:N/A'],
- ['Title:research1'],
- ['Journal:N/A'],
- ['Dataset Link: '
- 'http://gn1.genenetwork.org/webqtl/main.py?FormID=sharinginfo&InfoPageName=name1'],
- [],
- ['Name', 'Value', 'SE', 'N'],
- ['Sauroniops', 'germanotta'],
- [3, 6, 1, 4]])
-
- dict_list.side_effect = [['Sauroniops', 'germanotta'], [3, 6, 1, 4]]
-
- self.assertEqual(export_sample_table(targs_obj), expected)
- exp_metadata.assert_called_with(
- "23177fdc-312e-4084-ad0c-f3eae785fff5", {})
- self.assertEqual(dict_list.call_count, 2)
+
+ date_mock.datetime.now.return_value = datetime.datetime(
+ 2022, 8, 8, 19, 2, 31, 628813)
+ trait_mock.return_value = AttributesSetter(trait_data)
+
+ results = get_export_metadata({
+ "trait_id": "1460303_at",
+ "trait_display_name": "1460303_at",
+ "dataset": "HC_M2_0606_P"
+ })
+
+ expected = [["Phenotype ID:", "1460303_at"],
+ ["Phenotype URL: ", "http://genenetwork.org/show_trait?trait_id=1460303_at&dataset=HC_M2_0606_P"],
+ ["Group: ", "C"],
+ ["Phenotype: ",
+ 'nuclear receptor subfamily 3","group C"," member 1 (glucocorticoid receptor); distal 3\' UTR'],
+ ["Authors: ", "XL_1"],
+ ["Title: ", "Trait_1 title"],
+ ["Journal: ", "N/A"],
+ ["Dataset Link: ", "http://gn1.genenetwork.org/webqtl/main.py?FormID=sharinginfo&InfoPageName=HC_M2_0606_P"],
+ ["Export Date: ", "August 08, 2022"],
+ ["Export Time: ", "19:02 GMT"]]
+
+ self.assertEqual(results, expected)
def test_dict_to_sortedlist(self):
"""test for conversion of dict to sorted list"""