diff options
author | Pjotr Prins | 2016-10-07 10:34:32 +0000 |
---|---|---|
committer | Pjotr Prins | 2016-10-07 10:34:32 +0000 |
commit | 420fd69ceda63871e9f6755112769c5615ed45f6 (patch) | |
tree | d834a125aaf99dcd04868a8907b097445f576b4b /test/lib | |
parent | 0f602fd058934feaaa37eb72d055bfcfcfc9ef8f (diff) | |
parent | 28da8f4304f406b4eff5ad68757735a0cb524e94 (diff) | |
download | genenetwork2-420fd69ceda63871e9f6755112769c5615ed45f6.tar.gz |
Merge branch 'master' into chfi
Diffstat (limited to 'test/lib')
-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 |
3 files changed, 47 insertions, 34 deletions
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 |