aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPjotr Prins2016-09-26 08:30:07 +0000
committerPjotr Prins2016-09-26 08:30:07 +0000
commit50a571110b6557e2b7dbc536893d3928f0a93bd2 (patch)
tree16d8798264d6864ea1cc1de89b840eefe1310b9c
parentade0969bdc784d71d67d8422c6fd1238ed3ca391 (diff)
downloadgenenetwork2-50a571110b6557e2b7dbc536893d3928f0a93bd2.tar.gz
Mechanical Rob: make it possible to run single tests
-rwxr-xr-xbin/test-website6
-rw-r--r--test/lib/gntest.rb5
-rw-r--r--test/lib/mapping.rb40
3 files changed, 15 insertions, 36 deletions
diff --git a/bin/test-website b/bin/test-website
index 18994cc5..1d6481f4 100755
--- a/bin/test-website
+++ b/bin/test-website
@@ -4,7 +4,7 @@
USAGE = <<EOT
This is Mechanical-Rob - an automated web server tester for
Genenetwork.org that uses the brilliant
- mechanize gem.
+ mechanize gem with minitest.
To use this software you need to install mechanize. Run it from
the root of the genenetwork2 source tree as, for example,
@@ -15,6 +15,10 @@ If you are using the small deployment database you can use
./bin/test-website --skip -n
+To run individual tests on localhost you can do
+
+ ruby -Itest -Itest/lib test/lib/mapping.rb --name="/Mapping/"
+
For more information see http://genenetwork.org/
EOT
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/mapping.rb b/test/lib/mapping.rb
index 2678b127..47c4875b 100644
--- a/test/lib/mapping.rb
+++ b/test/lib/mapping.rb
@@ -1,18 +1,19 @@
# 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
describe MappingTest do
before do
+ @agent = Mechanize.new
+ @agent.agent.http.ca_file = '/etc/ssl/certs/ca-certificates.crt'
end
describe MappingTest do
- it "pyLMM mapping tool selection" do
+ it "R/qtl mapping tool selection" do
url = $host+'/marker_regression' # ?trait_id=1435395_s_at&dataset=HC_M2_0606_P'
- @agent = Mechanize.new
- @agent.agent.http.ca_file = '/etc/ssl/certs/ca-certificates.crt'
- # @agent.idle_timeout = 0.01
json = JSON::load(File.read('test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json'))
# p json
@@ -20,38 +21,7 @@ describe MappingTest do
json,
({'Content-Type' => 'application/x-www-form-urlencoded'}))
p page
- # 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"
end
end
end
-
-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"
- end
-end