about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--wqflask/tests/wqflask/marker_regression/test_gemma_mapping.py8
-rw-r--r--wqflask/tests/wqflask/marker_regression/test_plink_mapping.py4
-rw-r--r--wqflask/tests/wqflask/marker_regression/test_qtlreaper_mapping.py3
-rw-r--r--wqflask/tests/wqflask/marker_regression/test_rqtl_mapping.py13
-rw-r--r--wqflask/tests/wqflask/marker_regression/test_run_mapping.py153
5 files changed, 93 insertions, 88 deletions
diff --git a/wqflask/tests/wqflask/marker_regression/test_gemma_mapping.py b/wqflask/tests/wqflask/marker_regression/test_gemma_mapping.py
index ed72cb33..e47c8335 100644
--- a/wqflask/tests/wqflask/marker_regression/test_gemma_mapping.py
+++ b/wqflask/tests/wqflask/marker_regression/test_gemma_mapping.py
@@ -24,6 +24,7 @@ class TestGemmaMapping(unittest.TestCase):
 
     @mock.patch("wqflask.marker_regression.gemma_mapping.parse_loco_output")
     def test_run_gemma_first_run_loco_set_false(self, mock_parse_loco):
+        """add tests for gemma function where  first run is set to false"""
         dataset = AttributeSetter(
             {"group": AttributeSetter({"genofile": "genofile.geno"})})
 
@@ -50,6 +51,7 @@ class TestGemmaMapping(unittest.TestCase):
     @mock.patch("wqflask.marker_regression.gemma_mapping.os")
     @mock.patch("wqflask.marker_regression.gemma_mapping.gen_pheno_txt_file")
     def test_run_gemma_first_run_set_true(self, mock_gen_pheno_txt, mock_os, mock_choice, mock_gen_covar, mock_flat_files, mock_logger, mock_parse_loco):
+        """add tests for run_gemma where first run is set to true"""
         chromosomes = []
         for i in range(1, 5):
             chromosomes.append(AttributeSetter({"name": f"CH{i}"}))
@@ -81,6 +83,7 @@ class TestGemmaMapping(unittest.TestCase):
 
     @mock.patch("wqflask.marker_regression.gemma_mapping.TEMPDIR", "/home/user/data")
     def test_gen_pheno_txt_file(self):
+        """add tests for generating pheno txt file"""
         with mock.patch("builtins.open", mock.mock_open())as mock_open:
             gen_pheno_txt_file(this_dataset={}, genofile_name="", vals=[
                                "x", "w", "q", "we", "R"], trait_filename="fitr.re")
@@ -97,6 +100,7 @@ class TestGemmaMapping(unittest.TestCase):
     @mock.patch("wqflask.marker_regression.gemma_mapping.create_trait")
     @mock.patch("wqflask.marker_regression.gemma_mapping.create_dataset")
     def test_gen_covariates_file(self, create_dataset, create_trait, flat_files):
+        """add tests for generating covariates files"""
         covariates = "X1:X2,Y1:Y2,M1:M3,V1:V2"
         samplelist = ["X1", "X2", "X3", "X4"]
         create_dataset_side_effect = []
@@ -138,6 +142,7 @@ class TestGemmaMapping(unittest.TestCase):
 
     @mock.patch("wqflask.marker_regression.gemma_mapping.webqtlConfig.GENERATED_IMAGE_DIR", "/home/user/img/")
     def test_parse_gemma_output_obj_returned(self):
+        """add test for generating gemma output with obj returned"""
         file = """X/Y\t gn2\t21\tQ\tE\tA\tP\tMMB\tCDE\t0.5
 X/Y\tgn2\t21322\tQ\tE\tA\tP\tMMB\tCDE\t0.5
 chr\tgn1\t12312\tQ\tE\tA\tP\tMMB\tCDE\t0.7
@@ -154,6 +159,7 @@ X\tgn7\t2324424\tQ\tE\tA\tP\tMMB\tCDE\t0.4
 
     @mock.patch("wqflask.marker_regression.gemma_mapping.webqtlConfig.GENERATED_IMAGE_DIR", "/home/user/img")
     def test_parse_gemma_output_empty_return(self):
+        """add tests for parse gemma output where nothing returned"""
         output_file_results = """chr\t today"""
         with mock.patch("builtins.open", mock.mock_open(read_data=output_file_results)) as mock_open:
             results = parse_gemma_output(genofile_name="gema_file")
@@ -162,6 +168,7 @@ X\tgn7\t2324424\tQ\tE\tA\tP\tMMB\tCDE\t0.4
     @mock.patch("wqflask.marker_regression.gemma_mapping.TEMPDIR", "/home/tmp")
     @mock.patch("wqflask.marker_regression.gemma_mapping.os")
     def test_parse_loco_output_file_found(self, mock_os):
+        """add tests for parse loco output file found"""
         mock_os.path.isfile.return_value = True
         file_to_write = """{"files":["file_1","file_2"]}"""
         pass
@@ -169,6 +176,7 @@ X\tgn7\t2324424\tQ\tE\tA\tP\tMMB\tCDE\t0.4
     @mock.patch("wqflask.marker_regression.gemma_mapping.TEMPDIR", "/home/tmp")
     @mock.patch("wqflask.marker_regression.gemma_mapping.os")
     def test_parse_loco_output_file_not_found(self, mock_os):
+        """add tests for parse loco output file not found"""
 
         mock_os.path.isfile.return_value = False
         file_to_write = """{"files":["file_1","file_2"]}"""
diff --git a/wqflask/tests/wqflask/marker_regression/test_plink_mapping.py b/wqflask/tests/wqflask/marker_regression/test_plink_mapping.py
index a5fa0c04..428f45b9 100644
--- a/wqflask/tests/wqflask/marker_regression/test_plink_mapping.py
+++ b/wqflask/tests/wqflask/marker_regression/test_plink_mapping.py
@@ -15,6 +15,7 @@ class AttributeSetter:
 class TestPlinkMapping(unittest.TestCase):
 
     def test_build_line_list(self):
+        """testing for building line list"""
         line_1 = "this is line one test"
         irregular_line = "  this     is an, irregular line     "
         exp_line1 = ["this", "is", "line", "one", "test"]
@@ -26,6 +27,7 @@ class TestPlinkMapping(unittest.TestCase):
 
     @mock.patch("wqflask.marker_regression.plink_mapping.flat_files")
     def test_get_samples_from_ped_file(self, mock_flat_files):
+        """test for getting samples from ped file"""
         dataset = AttributeSetter({"group": AttributeSetter({"name": "n_1"})})
         file_sample = """Expected_1\tline test
 Expected_2\there
@@ -41,6 +43,7 @@ Expected_2\there
     @mock.patch("wqflask.marker_regression.plink_mapping.TMPDIR", "/home/user/data/")
     @mock.patch("wqflask.marker_regression.plink_mapping.get_samples_from_ped_file")
     def test_gen_pheno_txt_file_plink(self, mock_samples):
+        """test for getting gen_pheno txt file"""
         mock_samples.return_value = ["Expected_1", "Expected_2", "Expected_3"]
 
         trait = AttributeSetter({"name": "TX"})
@@ -62,6 +65,7 @@ Expected_2\there
     @mock.patch("wqflask.marker_regression.plink_mapping.TMPDIR", "/home/user/data/")
     @mock.patch("wqflask.marker_regression.plink_mapping.build_line_list")
     def test_parse_plink_output(self, mock_line_list):
+        """test for parsing plink output"""
         chromosomes = [0, 34, 110, 89, 123, 23, 2]
         species = AttributeSetter(
             {"name": "S1", "chromosomes": AttributeSetter({"chromosomes": chromosomes})})
diff --git a/wqflask/tests/wqflask/marker_regression/test_qtlreaper_mapping.py b/wqflask/tests/wqflask/marker_regression/test_qtlreaper_mapping.py
index 7ece663a..b47f877a 100644
--- a/wqflask/tests/wqflask/marker_regression/test_qtlreaper_mapping.py
+++ b/wqflask/tests/wqflask/marker_regression/test_qtlreaper_mapping.py
@@ -1,13 +1,12 @@
 import unittest
 from unittest import  mock
 from wqflask.marker_regression.qtlreaper_mapping import  gen_pheno_txt_file
-from wqflask.marker_regression.qtlreaper_mapping import  natural_sort
 
 #issues some methods in genofile object are not defined
 #modify samples should equal to vals
 class TestQtlReaperMapping(unittest.TestCase):
 	@mock.patch("wqflask.marker_regression.qtlreaper_mapping.TEMPDIR", "/home/user/data")
-	def  test_gen_pheno_txt_file(self):
+	def  test_gen_pheno_txt_file(self):                   
 		vals=["V1","x","V4","V3","x"]
 		samples=["S1","S2","S3","S4","S5"]
 		trait_filename="trait_file"
diff --git a/wqflask/tests/wqflask/marker_regression/test_rqtl_mapping.py b/wqflask/tests/wqflask/marker_regression/test_rqtl_mapping.py
index 641644cc..9fd32a30 100644
--- a/wqflask/tests/wqflask/marker_regression/test_rqtl_mapping.py
+++ b/wqflask/tests/wqflask/marker_regression/test_rqtl_mapping.py
@@ -18,23 +18,15 @@ class TestRqtlMapping(unittest.TestCase):
 	@mock.patch("wqflask.marker_regression.rqtl_mapping.g")
 	@mock.patch("wqflask.marker_regression.rqtl_mapping.logger")
 	def test_get_trait_data_type_found(self,mock_logger,mock_db):
+		"""test for getting trait data_type return True"""
 		caller_value="""SELECT value FROM TraitMetadata WHERE type='trait_data_type'"""
 		mock_db.db.execute.return_value.fetchone.return_value=["""{"type":"trait_data_type","name":"T1","traid_id":"fer434f"}"""]
 		results=get_trait_data_type("traid_id")
 		mock_db.db.execute.assert_called_with(caller_value)
 		self.assertEqual(results,"fer434f")
 
-
-	@mock.patch("wqflask.marker_regression.rqtl_mapping.g")
-	@mock.patch("wqflask.marker_regression.rqtl_mapping.logger")
-	def test_get_trait_data_type_not_found(self,mock_logger,mock_db):
-		caller_value="""SELECT value FROM TraitMetadata WHERE type='trait_data_type'"""
-		mock_db.db.execute.return_value.fetchone.return_value=["""{"type":"trait_data_type","name":"T1","traid_id":"fer434f"}"""]
-		results=get_trait_data_type("other")
-		mock_db.db.execute.assert_called_with(caller_value)
-		self.assertEqual(results,"numeric")
-
 	def test_sanitize_rqtl_phenotype(self):
+		"""test for sanitizing rqtl phenotype"""
 		vals=['f',"x","r","x","x"]
 		results=sanitize_rqtl_phenotype(vals)
 		expected_phenotype_string='c(f,NA,r,NA,NA)'
@@ -42,6 +34,7 @@ class TestRqtlMapping(unittest.TestCase):
 		self.assertEqual(results,expected_phenotype_string)
 
 	def test_sanitize_rqtl_names(self):
+		"""test for sanitzing rqtl names"""
 		vals=['f',"x","r","x","x"]
 		expected_sanitized_name="c('f',NA,'r',NA,NA)"
 		results=sanitize_rqtl_names(vals)
diff --git a/wqflask/tests/wqflask/marker_regression/test_run_mapping.py b/wqflask/tests/wqflask/marker_regression/test_run_mapping.py
index be6e6e48..2af4c3e3 100644
--- a/wqflask/tests/wqflask/marker_regression/test_run_mapping.py
+++ b/wqflask/tests/wqflask/marker_regression/test_run_mapping.py
@@ -28,24 +28,24 @@ class TestRunMapping(unittest.TestCase):
 
         self.group = MockDataSetGroup(
             {"genofile": "~/genofiles/g1_file", "name": "GP1_", "species": "Human"})
-        chromosomes={
-    	 "3":AttributeSetter({
-    	 "name":"C1",
-    	 "length":"0.04"
-    	 }),
-    	  "4":AttributeSetter({
-    	 "name":"C2",
-    	 "length":"0.03"
-    	 }),
-    	  "5":AttributeSetter({
-    	 "name":"C4",
-    	 "length":"0.01"
-    	 })
-    	}
+        chromosomes = {
+            "3": AttributeSetter({
+                "name": "C1",
+                "length": "0.04"
+            }),
+            "4": AttributeSetter({
+                "name": "C2",
+                "length": "0.03"
+            }),
+            "5": AttributeSetter({
+                "name": "C4",
+                "length": "0.01"
+            })
+        }
         self.dataset = AttributeSetter(
             {"fullname": "dataser_1", "group": self.group, "type": "ProbeSet"})
 
-        self.chromosomes=AttributeSetter({"chromosomes":chromosomes})
+        self.chromosomes = AttributeSetter({"chromosomes": chromosomes})
         self.trait = AttributeSetter(
             {"symbol": "IGFI", "chr": "X1", "mb": 123313})
 
@@ -142,6 +142,7 @@ class TestRunMapping(unittest.TestCase):
         self.assertEqual(result_2, marker_2)
 
     def test_export_mapping_results(self):
+        """test for exporting mapping results"""
         datetime_mock = mock.Mock(wraps=datetime.datetime)
         datetime_mock.now.return_value = datetime.datetime(
             2019, 9, 1, 10, 12, 12)
@@ -206,78 +207,78 @@ class TestRunMapping(unittest.TestCase):
                 filehandler = mock_open()
                 filehandler.write.assert_has_calls(write_calls)
 
-
     @mock.patch("wqflask.marker_regression.run_mapping.random.choice")
-    def test_write_input_for_browser(self,mock_choice):
-    	mock_choice.side_effect=["F","i","l","e","s","x"]
-    	with mock.patch("builtins.open",mock.mock_open()) as mock_open:
-    		expected=['GP1__Filesx_GWAS', 'GP1__Filesx_ANNOT']
-
-    		results=write_input_for_browser(this_dataset=self.dataset,gwas_results={},annotations={})
-    		self.assertEqual(results,expected)
+    def test_write_input_for_browser(self, mock_choice):
+        """test for writing input for browser"""
+        mock_choice.side_effect = ["F", "i", "l", "e", "s", "x"]
+        with mock.patch("builtins.open", mock.mock_open()) as mock_open:
+            expected = ['GP1__Filesx_GWAS', 'GP1__Filesx_ANNOT']
 
+            results = write_input_for_browser(
+                this_dataset=self.dataset, gwas_results={}, annotations={})
+            self.assertEqual(results, expected)
 
     def test_get_perm_strata(self):
-    	categorical_vars=["C1","C2","W1"]
-    	used_samples=["S1","S2"]
-    	sample_list=AttributeSetter({"sample_attribute_values":{
-    		"S1":{
-    		 "C1":"c1_value",
-    		 "C2":"c2_value",
-    		 "W1":"w1_value"
+        categorical_vars = ["C1", "C2", "W1"]
+        used_samples = ["S1", "S2"]
+        sample_list = AttributeSetter({"sample_attribute_values": {
+            "S1": {
+                "C1": "c1_value",
+                "C2": "c2_value",
+                "W1": "w1_value"
 
-    		},
-    		"S2":{
-    		"W1":"w2_value",
-    		 "W2":"w2_value"
+            },
+            "S2": {
+                "W1": "w2_value",
+                "W2": "w2_value"
 
-    		},
-    		"S3":{
+            },
+            "S3": {
 
-    		"C1":"c1_value",
-    		"C2":"c2_value"
+                "C1": "c1_value",
+                "C2": "c2_value"
 
-    		},
-    		
-    		}})
+            },
 
-    	results=get_perm_strata(this_trait={},sample_list=sample_list,categorical_vars=categorical_vars,used_samples=used_samples)
-    	self.assertEqual(results,[2,1])
+        }})
 
+        results = get_perm_strata(this_trait={}, sample_list=sample_list,
+                                  categorical_vars=categorical_vars, used_samples=used_samples)
+        self.assertEqual(results, [2, 1])
 
     def test_get_chr_length(self):
-    	chromosomes=AttributeSetter({"chromosomes":self.chromosomes})
-    	dataset=AttributeSetter({"species":chromosomes})
-    	results=get_chr_lengths(mapping_scale="physic",mapping_method="reaper",dataset=dataset,qtl_results=[])
-    	chr_lengths=[]
-    	for key,chromo in self.chromosomes.chromosomes.items():
-    		chr_lengths.append({"chr":chromo.name,"size":chromo.length})
-
-    	self.assertEqual(chr_lengths,results)
-
-    	qtl_results=[{
-    	"chr":"16",
-    	"cM":"0.2"
-    	},
-    	{
-    	"chr":"12",
-    	"cM":"0.5"
-    	},
-    	{
-    	"chr":"18",
-    	"cM":"0.1"
-    	},
-    	{
-    	"chr":"22",
-    	"cM":"0.4"
-    	},
-    	]
-
-
-
-    	result_with_other_mapping_scale=get_chr_lengths(mapping_scale="other",mapping_method="reaper",dataset=dataset,qtl_results=qtl_results)
-    	expected_value= [{'chr': '1', 'size': '0'}, {'chr': '16', 'size': '500000.0'}, {'chr': '18', 'size': '400000.0'}]
-
-    	self.assertEqual(result_with_other_mapping_scale,expected_value)    	
+        """test for getting chromosome length"""
+        chromosomes = AttributeSetter({"chromosomes": self.chromosomes})
+        dataset = AttributeSetter({"species": chromosomes})
+        results = get_chr_lengths(
+            mapping_scale="physic", mapping_method="reaper", dataset=dataset, qtl_results=[])
+        chr_lengths = []
+        for key, chromo in self.chromosomes.chromosomes.items():
+            chr_lengths.append({"chr": chromo.name, "size": chromo.length})
+
+        self.assertEqual(chr_lengths, results)
+
+        qtl_results = [{
+            "chr": "16",
+            "cM": "0.2"
+        },
+            {
+            "chr": "12",
+            "cM": "0.5"
+        },
+            {
+            "chr": "18",
+            "cM": "0.1"
+        },
+            {
+            "chr": "22",
+            "cM": "0.4"
+        },
+        ]
 
+        result_with_other_mapping_scale = get_chr_lengths(
+            mapping_scale="other", mapping_method="reaper", dataset=dataset, qtl_results=qtl_results)
+        expected_value = [{'chr': '1', 'size': '0'}, {
+            'chr': '16', 'size': '500000.0'}, {'chr': '18', 'size': '400000.0'}]
 
+        self.assertEqual(result_with_other_mapping_scale, expected_value)