aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbin/test-website17
-rw-r--r--test/lib/NavigationTest.rb17
-rw-r--r--test/lib/link_checker.rb2
-rw-r--r--test/lib/main_web_functionality.rb13
4 files changed, 34 insertions, 15 deletions
diff --git a/bin/test-website b/bin/test-website
index aeab459b..6912b355 100755
--- a/bin/test-website
+++ b/bin/test-website
@@ -18,10 +18,20 @@ $stderr.print USAGE
require 'optparse'
-options = {}
+options = { database: :small, link_checker: false}
opts = OptionParser.new do |o|
o.banner = "Usage: #{File.basename($0)} [options] URL"
+ o.on('-d','--database', String, 'Use database (default db_webqtl_s)') do |s|
+ options[:database] =
+ case s
+ when 'xx'
+ :unknown
+ else
+ :small
+ end
+ end
+
o.on('-l','--link-checker', 'Check for dead links') do
options[:link_checker] = true
end
@@ -30,6 +40,10 @@ opts = OptionParser.new do |o|
options[:navigation_test] = true
end
+ o.on('--skip-broken', 'Skip tests that are known to be broken') do
+ options[:skip_broken] = true
+ end
+
o.separator ""
o.on_tail('-h', '--help', 'display this help and exit') do
options[:show_help] = true
@@ -43,6 +57,7 @@ if options[:show_help]
exit 1
end
+$options = options # we are using a global here
$host =
if ARGV.size>0
ARGV.shift
diff --git a/test/lib/NavigationTest.rb b/test/lib/NavigationTest.rb
index 26080d28..676ee90c 100644
--- a/test/lib/NavigationTest.rb
+++ b/test/lib/NavigationTest.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).
+
class NavigationTest
end
@@ -11,6 +12,7 @@ describe NavigationTest do
describe NavigationTest do
it "pyLMM 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')
#Navigates to http://localhost:5003/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P and clicks respective buttons.
link = page.link_with(text: 'pyLMM')
@@ -20,15 +22,14 @@ describe NavigationTest do
page = link.click
puts page.uri
probe_link.uri.to_s.must_equal "/marker_regression"
-
-
- end
- end
+ end
+ end
end
describe NavigationTest 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
@@ -37,10 +38,8 @@ describe NavigationTest do
link = page.link_with(text: 'Compute')
page = link.click
puts page.uri
- probe_link.uri.to_s.must_equal "/marker_regression"
-
-
- end
- end
+ probe_link.uri.to_s.must_equal "/marker_regression"
+ end
+end
diff --git a/test/lib/link_checker.rb b/test/lib/link_checker.rb
index fb201887..15449144 100644
--- a/test/lib/link_checker.rb
+++ b/test/lib/link_checker.rb
@@ -24,7 +24,7 @@ describe LinkChecker do
describe LinkChecker do
it "Get to trait page" do
page = @agent.get($host+'/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P')
- p page
+ # p page
# Get to trait page for 1435395_s_at
# form2 = show_trait_page.forms_with("trait_page")[0]
diff --git a/test/lib/main_web_functionality.rb b/test/lib/main_web_functionality.rb
index d0a32835..c74a601e 100644
--- a/test/lib/main_web_functionality.rb
+++ b/test/lib/main_web_functionality.rb
@@ -25,19 +25,24 @@ describe MainWebFunctionality do
probe_link = search_page.links.find { |l| l.text =~ /1435395_s_at/ }
probe_link.uri.to_s.must_equal "/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P"
show_trait_page = probe_link.click
- p show_trait_page
+ # p show_trait_page
# Get to trait page for 1435395_s_at
form2 = show_trait_page.forms_with("trait_page")[0]
- form2.fields[30].name.must_equal "variance:C57BL/6J"
+ if $options[:database] == :small
+ form2.fields[30].name.must_equal "value:DBA/2J"
+ else
+ form2.fields[30].name.must_equal "variance:C57BL/6J"
+ end
# form2.fields[30].value.must_equal "15.287"
# Test every link on the page to check if it's broken or not
+ break if not $options[:link_checker]
show_trait_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/
- # Fetch link, program will crash with exception if link is broken
- linkpage = @agent.get(link.href)
+ # 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}"
end
end