about summary refs log tree commit diff
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