[ARVADOS] updated: b0e88b9708dc008ad552f1c4f23badb360e9169a

git at public.curoverse.com git at public.curoverse.com
Thu Nov 26 17:32:25 EST 2015


Summary of changes:
 apps/workbench/test/integration_helper.rb | 34 ++++++++++++++++++-------------
 1 file changed, 20 insertions(+), 14 deletions(-)

  discards  86ac7a774a81b1e081dc68e44826ad0615e3c3ed (commit)
       via  b0e88b9708dc008ad552f1c4f23badb360e9169a (commit)
       via  8d7f3c9ae0648719781174946ea89c3505aabd22 (commit)

This update added new revisions after undoing existing revisions.  That is
to say, the old revision is not a strict subset of the new revision.  This
situation occurs when you --force push a change and generate a repository
containing something like this:

 * -- * -- B -- O -- O -- O (86ac7a774a81b1e081dc68e44826ad0615e3c3ed)
            \
             N -- N -- N (b0e88b9708dc008ad552f1c4f23badb360e9169a)

When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit b0e88b9708dc008ad552f1c4f23badb360e9169a
Author: Tom Clegg <tom at curoverse.com>
Date:   Thu Nov 26 17:42:00 2015 -0500

    7851: Use a random port (100..499) for Xvfb, instead of always 99.

diff --git a/apps/workbench/test/integration_helper.rb b/apps/workbench/test/integration_helper.rb
index c0e930a..74072ca 100644
--- a/apps/workbench/test/integration_helper.rb
+++ b/apps/workbench/test/integration_helper.rb
@@ -86,8 +86,10 @@ end
 
 module HeadlessHelper
   class HeadlessSingleton
+    @display = ENV['ARVADOS_TEST_HEADLESS_DISPLAY'] || rand(400)+100
+    STDERR.puts "Using display :#{@display} for headless tests"
     def self.get
-      @headless ||= Headless.new reuse: false
+      @headless ||= Headless.new reuse: false, display: @display
     end
   end
 

commit 8d7f3c9ae0648719781174946ea89c3505aabd22
Author: Tom Clegg <tom at curoverse.com>
Date:   Thu Nov 26 16:41:49 2015 -0500

    7851: Choose available ports for selenium and poltergeist.
    
    Also, display the chosen port numbers at startup.
    
    Without this the Selenium driver defaults to 7055, which causes
    interference between concurrent test runs.

diff --git a/apps/workbench/test/integration_helper.rb b/apps/workbench/test/integration_helper.rb
index 207ddd1..c0e930a 100644
--- a/apps/workbench/test/integration_helper.rb
+++ b/apps/workbench/test/integration_helper.rb
@@ -4,19 +4,43 @@ require 'capybara/poltergeist'
 require 'uri'
 require 'yaml'
 
-POLTERGEIST_OPTS = {
-  window_size: [1200, 800],
-  phantomjs_options: ['--ignore-ssl-errors=true'],
-  inspector: true,
-}
+def available_port for_what
+  Addrinfo.tcp("0.0.0.0", 0).listen do |srv|
+    port = srv.connect_address.ip_port
+    STDERR.puts "Using port #{port} for #{for_what}"
+    return port
+  end
+end
+
+def selenium_opts
+  {
+    port: available_port('selenium'),
+  }
+end
+
+def poltergeist_opts
+  {
+    phantomjs_options: ['--ignore-ssl-errors=true'],
+    port: available_port('poltergeist'),
+    window_size: [1200, 800],
+  }
+end
 
 Capybara.register_driver :poltergeist do |app|
-  Capybara::Poltergeist::Driver.new app, POLTERGEIST_OPTS
+  Capybara::Poltergeist::Driver.new app, poltergeist_opts
+end
+
+Capybara.register_driver :poltergeist_debug do |app|
+  Capybara::Poltergeist::Driver.new app, poltergeist_opts.merge(inspector: true)
 end
 
 Capybara.register_driver :poltergeist_without_file_api do |app|
   js = File.expand_path '../support/remove_file_api.js', __FILE__
-  Capybara::Poltergeist::Driver.new app, POLTERGEIST_OPTS.merge(extensions: [js])
+  Capybara::Poltergeist::Driver.new app, poltergeist_opts.merge(extensions: [js])
+end
+
+Capybara.register_driver :selenium do |app|
+  Capybara::Selenium::Driver.new app, selenium_opts
 end
 
 Capybara.register_driver :selenium_with_download do |app|
@@ -28,7 +52,7 @@ Capybara.register_driver :selenium_with_download do |app|
   profile['browser.download.manager.showWhenStarting'] = false
   profile['browser.helperApps.alwaysAsk.force'] = false
   profile['browser.helperApps.neverAsk.saveToDisk'] = 'text/plain,application/octet-stream'
-  Capybara::Selenium::Driver.new app, profile: profile
+  Capybara::Selenium::Driver.new app, selenium_opts.merge(profile: profile)
 end
 
 module WaitForAjax

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list