about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--test/requests/correlation_tests.py44
-rwxr-xr-xtest/requests/test-website.py2
-rw-r--r--wqflask/wqflask/correlation/correlation_gn3_api.py23
-rw-r--r--wqflask/wqflask/correlation/rust_correlation.py39
4 files changed, 73 insertions, 35 deletions
diff --git a/test/requests/correlation_tests.py b/test/requests/correlation_tests.py
new file mode 100644
index 00000000..b0213ff5
--- /dev/null
+++ b/test/requests/correlation_tests.py
@@ -0,0 +1,44 @@
+import requests
+from lxml.html import parse
+from link_checker import check_page
+
+def do_request(host, data):
+    return request.get(
+        f"{host}/corr_compute",
+        params={
+            **data,
+            "corr_dataset": "HC_M2_0606_P",
+            "corr_return_results": "100",
+            "corr_samples_group": "samples_primary",})
+
+def check_sample_correlations(baseurl):
+    data = {
+        "corr_type": "sample",
+        "corr_sample_method": "pearson",
+        "location_type": "gene"
+    }
+    result = do_request(host, data)
+    assert result.status == 200
+    assert (result.text.find("Values of record 1435464_at") >= 0), ""
+
+def check_tissue_correlations(baseurl):
+    data = {
+        "corr_type": "tissue"
+    }
+    result = do_request(host, data)
+    assert False, "Not implemented yet."
+
+def check_lit_correlations(baseurl):
+    data = {
+        "corr_type": "lit"
+    }
+    result = do_request(host, data)
+    assert False, "Not implemented yet."
+
+def check_correlations(args_obj, parser):
+    print("")
+    print("Checking the correlations...")
+    host = args_obj.host
+    check_sample_correlations(host)
+    check_tissue_correlations(host)
+    check_lit_correlations(host)
diff --git a/test/requests/test-website.py b/test/requests/test-website.py
index 71055fca..8062bff1 100755
--- a/test/requests/test-website.py
+++ b/test/requests/test-website.py
@@ -9,6 +9,7 @@ from link_checker import check_links
 from link_checker import check_packaged_js_files
 from mapping_tests import check_mapping
 from navigation_tests import check_navigation
+from correlation_tests import check_correlations
 from main_web_functionality import check_main_web_functionality
 import link_checker
 import sys
@@ -28,6 +29,7 @@ def run_all(args_obj, parser):
     check_links(args_obj, parser)
     check_packaged_js_files(args_obj, parser)
     check_mapping(args_obj, parser)
+    check_correlations(args_obj, parser)
     # TODO: Add other functions as they are created.
 
 
diff --git a/wqflask/wqflask/correlation/correlation_gn3_api.py b/wqflask/wqflask/correlation/correlation_gn3_api.py
index e1e2613d..6df4eafe 100644
--- a/wqflask/wqflask/correlation/correlation_gn3_api.py
+++ b/wqflask/wqflask/correlation/correlation_gn3_api.py
@@ -224,19 +224,16 @@ def compute_correlation(start_vars, method="pearson", compute_all=False):
     correlation_results = correlation_results[0:corr_return_results]
 
     if (compute_all):
-        correlation_results = compute_corr_for_top_results(start_vars,
-                                                           correlation_results,
-                                                           this_trait,
-                                                           this_dataset,
-                                                           target_dataset,
-                                                           corr_type)
-
-    correlation_data = {"correlation_results": correlation_results,
-                        "this_trait": this_trait.name,
-                        "target_dataset": start_vars['corr_dataset'],
-                        "return_results": corr_return_results}
-
-    return correlation_data
+        correlation_results = compute_corr_for_top_results(
+            start_vars, correlation_results, this_trait, this_dataset,
+            target_dataset, corr_type)
+
+    return {
+        "correlation_results": correlation_results,
+        "this_trait": this_trait.name,
+        "target_dataset": start_vars['corr_dataset'],
+        "return_results": corr_return_results
+    }
 
 
 def compute_corr_for_top_results(start_vars,
diff --git a/wqflask/wqflask/correlation/rust_correlation.py b/wqflask/wqflask/correlation/rust_correlation.py
index 8431f179..8a5021cc 100644
--- a/wqflask/wqflask/correlation/rust_correlation.py
+++ b/wqflask/wqflask/correlation/rust_correlation.py
@@ -33,8 +33,11 @@ def compute_top_n_tissue(this_dataset, this_trait, traits, method):
 
     # refactor lots of rpt
 
-    trait_symbol_dict = dict({trait_name: symbol for (
-        trait_name, symbol) in this_dataset.retrieve_genes("Symbol").items() if traits.get(trait_name)})
+    trait_symbol_dict = dict({
+        trait_name: symbol
+        for (trait_name, symbol)
+        in this_dataset.retrieve_genes("Symbol").items()
+        if traits.get(trait_name)})
 
     corr_result_tissue_vals_dict = get_trait_symbol_and_tissue_values(
         symbol_list=list(trait_symbol_dict.values()))
@@ -73,8 +76,9 @@ def merge_results(dict_a, dict_b, dict_c):
     return correlation_results
 
 
-def compute_correlation_rust(start_vars: dict, corr_type: str,
-                             method: str = "pearson", n_top: int = 500):
+def compute_correlation_rust(
+        start_vars: dict, corr_type: str, method: str = "pearson",
+        n_top: int = 500):
     """function to compute correlation"""
 
     (this_dataset, this_trait, target_dataset,
@@ -96,25 +100,15 @@ def compute_correlation_rust(start_vars: dict, corr_type: str,
             target_data.append(r)
 
 
-        results = run_correlation(target_data,
-                                  list(sample_data.values()),
-                                  method,
-                                  ",",
-                                  corr_type,
-                                  n_top)
+        results = run_correlation(
+            target_data, list(sample_data.values()), method, ",", corr_type,
+            n_top)
 
         # example compute of compute both correlation
-
-
-
         top_tissue_results = compute_top_n_tissue(this_dataset,this_trait,results,method)
-
-
         top_lit_results = compute_top_n_lit(results,this_dataset,this_trait)
 
-
         # merging the results
-
         results = merge_results(results,top_tissue_results,top_lit_results)
 
     if corr_type == "tissue":
@@ -134,8 +128,9 @@ def compute_correlation_rust(start_vars: dict, corr_type: str,
             results = run_correlation(
                 data[1], data[0], method, ",", "tissue")
 
-    return {"correlation_results": results,
-            "this_trait": this_trait.name,
-            "target_dataset": start_vars['corr_dataset'],
-            "return_results": n_top
-            }
+    return {
+        "correlation_results": results,
+        "this_trait": this_trait.name,
+        "target_dataset": start_vars['corr_dataset'],
+        "return_results": n_top
+    }