diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json | 245 | ||||
-rw-r--r-- | test/lib/gntest.rb | 5 | ||||
-rw-r--r-- | test/lib/link_checker.rb | 6 | ||||
-rw-r--r-- | test/lib/mapping.rb | 70 |
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 |