From: Tom Hughes Date: Sun, 16 Mar 2025 15:29:40 +0000 (+0000) Subject: Merge remote-tracking branch 'upstream/pull/5796' X-Git-Tag: live~184 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/9983a16ae984a6af99fa94ff5af99ba87a7ce956?hp=9bd29748be8e6770e276e93e54bb99c69d464498 Merge remote-tracking branch 'upstream/pull/5796' --- diff --git a/config/initializers/selenium.rb b/config/initializers/selenium.rb new file mode 100644 index 000000000..5e683d8b2 --- /dev/null +++ b/config/initializers/selenium.rb @@ -0,0 +1,35 @@ +if Rails.env.test? + require "active_support/testing/parallelization" + + module OpenStreetMap + module Selenium + module BidiPort + module ClassMethods + attr_accessor :websocket_port + end + + def self.prepended(base) + class << base + prepend ClassMethods + end + + base.websocket_port = 10000 + + ActiveSupport::Testing::Parallelization.after_fork_hook do |worker| + base.websocket_port = 10000 + worker + end + end + + def initialize(config) + super + + @extra_args = Array(@extra_args) << "--websocket-port=#{self.class.websocket_port}" + + self.class.websocket_port += 256 + end + end + end + end + + Selenium::WebDriver::ServiceManager.prepend(OpenStreetMap::Selenium::BidiPort) +end