aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json245
-rw-r--r--test/lib/gntest.rb5
-rw-r--r--test/lib/link_checker.rb6
-rw-r--r--test/lib/mapping.rb70
4 files changed, 292 insertions, 34 deletions
diff --git a/test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json b/test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json
new file mode 100644
index 00000000..195c16e4
--- /dev/null
+++ b/test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json
@@ -0,0 +1,245 @@
+{
+ "temp_uuid" : "unknown",
+ "control_marker": "NES13033186",
+ "dataset": "HC_M2_0606_P",
+ "do_control": "false",
+ "maf": "0.01",
+ "manhattan_plot": "False",
+ "mapmethod_rqtl_geno": "em",
+ "mapmodel_rqtl_geno": "normal",
+ "method": "rqtl_geno",
+ "num_bootstrap": "2000",
+ "num_perm": "",
+ "pair_scan": "false",
+ "suggestive": "0",
+ "trait_id": "1435395_s_at",
+ "value:129S1/SvImJ": "15.468",
+ "value:A/J": "15.230",
+ "value:AKR/J": "15.798",
+ "value:B6D2F1": "15.575",
+ "value:BALB/cByJ": "15.138",
+ "value:BALB/cJ": "15.222",
+ "value:BXD1": "15.034",
+ "value:BXD100": "x",
+ "value:BXD101": "x",
+ "value:BXD102": "x",
+ "value:BXD104": "x",
+ "value:BXD105": "x",
+ "value:BXD106": "x",
+ "value:BXD107": "x",
+ "value:BXD108": "x",
+ "value:BXD109": "x",
+ "value:BXD11": "15.364",
+ "value:BXD110": "x",
+ "value:BXD111": "x",
+ "value:BXD112": "x",
+ "value:BXD113": "x",
+ "value:BXD114": "x",
+ "value:BXD115": "x",
+ "value:BXD116": "x",
+ "value:BXD117": "x",
+ "value:BXD119": "x",
+ "value:BXD12": "14.992",
+ "value:BXD120": "x",
+ "value:BXD121": "x",
+ "value:BXD122": "x",
+ "value:BXD123": "x",
+ "value:BXD124": "x",
+ "value:BXD125": "x",
+ "value:BXD126": "x",
+ "value:BXD127": "x",
+ "value:BXD128": "x",
+ "value:BXD128a": "x",
+ "value:BXD13": "15.290",
+ "value:BXD130": "x",
+ "value:BXD131": "x",
+ "value:BXD132": "x",
+ "value:BXD133": "x",
+ "value:BXD134": "x",
+ "value:BXD135": "x",
+ "value:BXD136": "x",
+ "value:BXD137": "x",
+ "value:BXD138": "x",
+ "value:BXD139": "x",
+ "value:BXD14": "x",
+ "value:BXD141": "x",
+ "value:BXD142": "x",
+ "value:BXD144": "x",
+ "value:BXD145": "x",
+ "value:BXD146": "x",
+ "value:BXD147": "x",
+ "value:BXD148": "x",
+ "value:BXD149": "x",
+ "value:BXD15": "15.188",
+ "value:BXD150": "x",
+ "value:BXD151": "x",
+ "value:BXD152": "x",
+ "value:BXD153": "x",
+ "value:BXD154": "x",
+ "value:BXD155": "x",
+ "value:BXD156": "x",
+ "value:BXD157": "x",
+ "value:BXD16": "15.340",
+ "value:BXD160": "x",
+ "value:BXD161": "x",
+ "value:BXD162": "x",
+ "value:BXD165": "x",
+ "value:BXD168": "x",
+ "value:BXD169": "x",
+ "value:BXD170": "x",
+ "value:BXD171": "x",
+ "value:BXD172": "x",
+ "value:BXD173": "x",
+ "value:BXD174": "x",
+ "value:BXD175": "x",
+ "value:BXD176": "x",
+ "value:BXD177": "x",
+ "value:BXD178": "x",
+ "value:BXD18": "x",
+ "value:BXD180": "x",
+ "value:BXD181": "x",
+ "value:BXD183": "x",
+ "value:BXD184": "x",
+ "value:BXD186": "x",
+ "value:BXD187": "x",
+ "value:BXD188": "x",
+ "value:BXD189": "x",
+ "value:BXD19": "15.144",
+ "value:BXD190": "x",
+ "value:BXD191": "x",
+ "value:BXD192": "x",
+ "value:BXD193": "x",
+ "value:BXD194": "x",
+ "value:BXD195": "x",
+ "value:BXD196": "x",
+ "value:BXD197": "x",
+ "value:BXD198": "x",
+ "value:BXD199": "x",
+ "value:BXD2": "15.538",
+ "value:BXD20": "15.194",
+ "value:BXD200": "x",
+ "value:BXD201": "x",
+ "value:BXD202": "x",
+ "value:BXD203": "x",
+ "value:BXD204": "x",
+ "value:BXD205": "x",
+ "value:BXD206": "x",
+ "value:BXD207": "x",
+ "value:BXD208": "x",
+ "value:BXD209": "x",
+ "value:BXD21": "15.088",
+ "value:BXD210": "x",
+ "value:BXD211": "x",
+ "value:BXD212": "x",
+ "value:BXD213": "x",
+ "value:BXD214": "x",
+ "value:BXD215": "x",
+ "value:BXD216": "x",
+ "value:BXD217": "x",
+ "value:BXD218": "x",
+ "value:BXD219": "x",
+ "value:BXD22": "15.499",
+ "value:BXD220": "x",
+ "value:BXD23": "14.988",
+ "value:BXD24": "15.562",
+ "value:BXD24a": "x",
+ "value:BXD25": "x",
+ "value:BXD27": "15.598",
+ "value:BXD28": "15.510",
+ "value:BXD29": "15.041",
+ "value:BXD30": "x",
+ "value:BXD31": "14.834",
+ "value:BXD32": "15.245",
+ "value:BXD33": "15.466",
+ "value:BXD34": "15.302",
+ "value:BXD35": "x",
+ "value:BXD36": "x",
+ "value:BXD37": "x",
+ "value:BXD38": "15.131",
+ "value:BXD39": "15.430",
+ "value:BXD40": "15.488",
+ "value:BXD41": "x",
+ "value:BXD42": "14.878",
+ "value:BXD43": "15.542",
+ "value:BXD44": "15.417",
+ "value:BXD45": "14.910",
+ "value:BXD48": "15.487",
+ "value:BXD48a": "15.328",
+ "value:BXD49": "x",
+ "value:BXD5": "15.622",
+ "value:BXD50": "15.435",
+ "value:BXD51": "15.183",
+ "value:BXD52": "x",
+ "value:BXD53": "x",
+ "value:BXD54": "x",
+ "value:BXD55": "14.928",
+ "value:BXD56": "x",
+ "value:BXD59": "x",
+ "value:BXD6": "15.366",
+ "value:BXD60": "15.502",
+ "value:BXD61": "15.622",
+ "value:BXD62": "15.198",
+ "value:BXD63": "15.238",
+ "value:BXD64": "15.572",
+ "value:BXD65": "15.485",
+ "value:BXD65a": "15.284",
+ "value:BXD65b": "15.318",
+ "value:BXD66": "15.406",
+ "value:BXD67": "15.509",
+ "value:BXD68": "15.552",
+ "value:BXD69": "15.667",
+ "value:BXD70": "15.104",
+ "value:BXD71": "x",
+ "value:BXD72": "x",
+ "value:BXD73": "15.210",
+ "value:BXD73a": "15.223",
+ "value:BXD73b": "x",
+ "value:BXD74": "15.666",
+ "value:BXD75": "15.554",
+ "value:BXD76": "15.234",
+ "value:BXD77": "15.613",
+ "value:BXD78": "x",
+ "value:BXD79": "15.124",
+ "value:BXD8": "15.548",
+ "value:BXD81": "x",
+ "value:BXD83": "15.512",
+ "value:BXD84": "15.426",
+ "value:BXD85": "15.252",
+ "value:BXD86": "15.457",
+ "value:BXD87": "15.320",
+ "value:BXD88": "x",
+ "value:BXD89": "15.316",
+ "value:BXD9": "15.669",
+ "value:BXD90": "15.348",
+ "value:BXD91": "x",
+ "value:BXD93": "15.602",
+ "value:BXD94": "15.360",
+ "value:BXD95": "x",
+ "value:BXD98": "15.421",
+ "value:BXD99": "15.534",
+ "value:C3H/HeJ": "15.398",
+ "value:C57BL/6ByJ": "15.702",
+ "value:C57BL/6J": "15.281",
+ "value:CAST/EiJ": "15.890",
+ "value:CXB1": "15.774",
+ "value:CXB10": "15.518",
+ "value:CXB11": "15.922",
+ "value:CXB12": "15.753",
+ "value:CXB13": "15.608",
+ "value:CXB2": "15.320",
+ "value:CXB3": "15.492",
+ "value:CXB4": "15.541",
+ "value:CXB5": "15.353",
+ "value:CXB6": "15.454",
+ "value:CXB7": "15.547",
+ "value:CXB8": "15.496",
+ "value:CXB9": "15.880",
+ "value:D2B6F1": "15.265",
+ "value:DBA/2J": "15.287",
+ "value:KK/HlJ": "15.303",
+ "value:LG/J": "15.285",
+ "value:NOD/ShiLtJ": "15.348",
+ "value:NZO/HlLtJ": "15.028",
+ "value:PWD/PhJ": "15.535",
+ "value:PWK/PhJ": "15.382",
+ "value:WSB/EiJ": "15.424"}
diff --git a/test/lib/gntest.rb b/test/lib/gntest.rb
new file mode 100644
index 00000000..865ef51d
--- /dev/null
+++ b/test/lib/gntest.rb
@@ -0,0 +1,5 @@
+require 'minitest/autorun'
+require 'mechanize'
+
+# ---- Use some default parameters if not set
+$host = "http://localhost:5003" if !$host
diff --git a/test/lib/link_checker.rb b/test/lib/link_checker.rb
index 15449144..36cb36c8 100644
--- a/test/lib/link_checker.rb
+++ b/test/lib/link_checker.rb
@@ -1,4 +1,6 @@
+SKIP = "mailto:"
+
class LinkChecker
end
@@ -12,7 +14,7 @@ describe LinkChecker do
page = @agent.get($host)
page.links.each do |link|
puts link.href
- if link.href !~ /static\/dbdoc\/Hippocampus/ and link.href !~ /glossary.html|sample_r|grits.eecs.utk.edu|correlationAnnotation.html/
+ if link.href !~ /#{SKIP}/ # /static\/dbdoc\/Hippocampus/ and link.href !~ /mailto:|glossary.html|sample_r|grits.eecs.utk.edu|correlationAnnotation.html/
# Fetch link, program will crash with exception if link is broken
linkpage = @agent.get(link.href)
puts "Link to #{link.href} is valid, response code #{linkpage.code}"
@@ -34,7 +36,7 @@ describe LinkChecker do
# Test every link on the page to check if it's broken or not
page.links.each do |link|
puts link.href
- if link.href !~ /static\/dbdoc\/Hippocampus/ and link.href !~ /glossary.html|sample_r|grits.eecs.utk.edu|correlationAnnotation.html/
+ if link.href !~ /#{SKIP}/ # /static\/dbdoc\/Hippocampus/ and link.href !~ /mailto:|glossary.html|sample_r|grits.eecs.utk.edu|correlationAnnotation.html/
# Fetch link, program will crash with exception if link is broken
linkpage = @agent.get(link.href)
puts "Link to #{link.href} is valid, response code #{linkpage.code}"
diff --git a/test/lib/mapping.rb b/test/lib/mapping.rb
index 08b6b5da..d6a3cd7b 100644
--- a/test/lib/mapping.rb
+++ b/test/lib/mapping.rb
@@ -1,5 +1,6 @@
# In these tests we navigate from the main page to a specific trait then hit the different mapping tool buttons (In this case pylMM and r/qtl) followed by computing the results (marker regressions).
+require 'gntest'
class MappingTest
end
@@ -11,41 +12,46 @@ describe MappingTest do
end
describe MappingTest do
- it "pyLMM mapping tool selection" do
- url = $host+'/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P'
- page = @agent.get(url)
- # get the form
- # form = @agent.page.form_with(:name => "my-form")
- # get the button you want from the form
- # page.forms.each do |form|
- # p form
- # end
- # button = page.button_with(:value => "pylmm_compute")
- # submit the form using that button
- # agent.submit(form, button)
- # link = page.link_with(text: 'pyLMM')
- # page = link.click
- # puts page.uri
- # link = page.link_with(text: 'Compute')
- # page = link.click
- # puts page.uri
- # probe_link.uri.to_s.must_equal "/marker_regression"
+ it "pylmm mapping tool selection" do
+ url = $host+'/marker_regression'
+
+ json = JSON::load(File.read('test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json'))
+ json["method"] = "pylmm"
+ # p json
+ page = @agent.post(URI.encode(url), json)
+ # Unpacking the page is slow - somehow - but the run is enough as a test
+ # form = page.forms_with("marker_regression")[0]
+ # form.fields.select { |fld| fld.name == 'dataset' }.first.value.must_equal 'HC_M2_0606_P'
+ # form.fields.select { |fld| fld.name == 'value:BXD1' }.first.value.must_equal '6.749'
end
end
-end
-
-describe MappingTest do
+ describe MappingTest do
it "R/qtl mapping tool selection" do
- break if $options[:skip_broken]
- page = @agent.get($host+'/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P')
- link = page.link_with(text: 'R/qtl')
- page = link.click
- puts page.uri
- form.field_with(:name => 'Methods').options[2].select
- link = page.link_with(text: 'Compute')
- page = link.click
- puts page.uri
- probe_link.uri.to_s.must_equal "/marker_regression"
+ url = $host+'/marker_regression' # ?trait_id=1435395_s_at&dataset=HC_M2_0606_P'
+
+ json = JSON::load(File.read('test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json'))
+ # p json
+ page = @agent.post(URI.encode(url),
+ json,
+ ({'Content-Type' => 'application/x-www-form-urlencoded'}))
+ form = page.forms_with("marker_regression")[0]
+ form.fields.select { |fld| fld.name == 'dataset' }.first.value.must_equal 'HC_M2_0606_P'
+ form.fields.select { |fld| fld.name == 'value:BXD1' }.first.value.must_equal "15.034"
end
+ end
+
+ describe MappingTest do
+ it "CIM mapping tool selection (using reaper)" do
+ url = $host+'/marker_regression'
+
+ json = JSON::load(File.read('test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json'))
+ json["method"] = "reaper"
+ page = @agent.post(URI.encode(url), json)
+ form = page.forms_with("marker_regression")[0]
+ form.fields.select { |fld| fld.name == 'dataset' }.first.value.must_equal 'HC_M2_0606_P'
+ form.fields.select { |fld| fld.name == 'value:BXD1' }.first.value.must_equal "15.034"
+ end
+ end
+
end