about summary refs log tree commit diff
path: root/test/requests/main_web_functionality.py
diff options
context:
space:
mode:
authorMuriithi Frederick Muriuki2018-03-14 02:16:59 +0300
committerPjotr Prins2018-03-26 09:29:29 +0000
commit8ff3dbd9bd5737b6cd0df8d279a70073c40786ec (patch)
treea901eef0aa6903305baf6317267946827ae6fa6b /test/requests/main_web_functionality.py
parentdd5ec1d3080b74fa065620f6915eeacf2cca8a2d (diff)
downloadgenenetwork2-8ff3dbd9bd5737b6cd0df8d279a70073c40786ec.tar.gz
Add tests for main web functionality
Diffstat (limited to 'test/requests/main_web_functionality.py')
-rw-r--r--test/requests/main_web_functionality.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/test/requests/main_web_functionality.py b/test/requests/main_web_functionality.py
new file mode 100644
index 00000000..f6b32340
--- /dev/null
+++ b/test/requests/main_web_functionality.py
@@ -0,0 +1,40 @@
+from __future__ import print_function
+import re
+import requests
+from lxml.html import parse
+from requests.exceptions import ConnectionError
+
+def check_home(url):
+    doc = parse(url).getroot()
+    search_button = doc.cssselect("#btsearch")
+    assert(search_button[0].value == "Search")
+    print("OK")
+
+def check_search_page(host):
+    data = dict(
+        species="mouse"
+        , group="BXD"
+        , type="Hippocampus mRNA"
+        , dataset="HC_M2_0606_P"
+        , search_terms_or=""
+        , search_terms_and="MEAN=(15 16) LRS=(23 46)")
+    result = requests.get(host+"/search", params=data)
+    found = result.text.find("/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P")
+    assert(found >= 0)
+    print("OK")
+    check_traits_page(host, "/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P")
+
+def check_traits_page(host, traits_url):
+    from link_checker import check_page
+    doc = parse(host+traits_url).getroot()
+    traits_form = doc.forms[1]
+    assert(traits_form.fields["corr_dataset"] == "HC_M2_0606_P")
+    print("OK")
+    check_page(host, host+traits_url)
+
+def check_main_web_functionality(args_obj, parser):
+    print("")
+    print("Checking main web functionality...")
+    host = args_obj.host
+    check_home(host)
+    check_search_page(host)