mirror of
https://github.com/opf/openproject.git
synced 2026-06-14 03:30:14 +00:00
Revert "Merge pull request #13190 from opf/remove-webdrivers"
This reverts commit0f0088375e, reversing changes made to0b8441e154.
This commit is contained in:
@@ -30,11 +30,11 @@ source 'https://rubygems.org'
|
||||
|
||||
ruby '~> 3.2.1'
|
||||
|
||||
gem 'ox'
|
||||
gem 'actionpack-xml_parser', '~> 2.0.0'
|
||||
gem 'activemodel-serializers-xml', '~> 1.0.1'
|
||||
gem 'activerecord-import', '~> 1.4.0'
|
||||
gem 'activerecord-session_store', '~> 2.0.0'
|
||||
gem 'ox'
|
||||
gem 'rails', '~> 7.0', '>= 7.0.3.1'
|
||||
gem 'responders', '~> 3.0'
|
||||
|
||||
@@ -155,8 +155,8 @@ gem 'structured_warnings', '~> 0.4.0'
|
||||
# don't require by default, instead load on-demand when actually configured
|
||||
gem 'airbrake', '~> 13.0.0', require: false
|
||||
|
||||
gem 'md_to_pdf', git: 'https://github.com/opf/md-to-pdf', ref: '76945d45c14b841e2312f992422e2631a4524114'
|
||||
gem 'prawn', '~> 2.2'
|
||||
gem 'md_to_pdf', git: 'https://github.com/opf/md-to-pdf', ref: '76945d45c14b841e2312f992422e2631a4524114'
|
||||
# prawn implicitly depends on matrix gem no longer in ruby core with 3.1
|
||||
gem 'matrix', '~> 0.4.2'
|
||||
|
||||
@@ -244,6 +244,7 @@ group :test do
|
||||
gem 'capybara-screenshot', '~> 1.0.17'
|
||||
gem 'cuprite', '~> 0.14.3'
|
||||
gem 'selenium-webdriver', '~> 4.0'
|
||||
gem 'webdrivers', '~> 5.2.0'
|
||||
|
||||
gem 'fuubar', '~> 2.5.0'
|
||||
gem 'timecop', '~> 0.9.0'
|
||||
|
||||
@@ -947,6 +947,10 @@ GEM
|
||||
rack (>= 2.0.9)
|
||||
warden-basic_auth (0.2.1)
|
||||
warden (~> 1.2)
|
||||
webdrivers (5.2.0)
|
||||
nokogiri (~> 1.6)
|
||||
rubyzip (>= 1.3.0)
|
||||
selenium-webdriver (~> 4.0)
|
||||
webfinger (2.1.2)
|
||||
activesupport
|
||||
faraday (~> 2.0)
|
||||
@@ -1146,6 +1150,7 @@ DEPENDENCIES
|
||||
view_component
|
||||
warden (~> 1.2)
|
||||
warden-basic_auth (~> 0.2.1)
|
||||
webdrivers (~> 5.2.0)
|
||||
webmock (~> 3.12)
|
||||
will_paginate (~> 4.0.0)
|
||||
with_advisory_lock (~> 4.6.0)
|
||||
|
||||
@@ -96,4 +96,8 @@ OpenProject::Application.configure do
|
||||
|
||||
# Speed up tests by lowering BCrypt's cost function
|
||||
BCrypt::Engine.cost = BCrypt::Engine::MIN_COST
|
||||
|
||||
# Pin Chromedriver version to last version that was released the "old way"
|
||||
# See https://github.com/titusfortner/webdrivers/issues/247
|
||||
Webdrivers::Chromedriver.required_version = "114.0.5735.90"
|
||||
end
|
||||
|
||||
@@ -68,7 +68,7 @@ setup_tests() {
|
||||
fi
|
||||
|
||||
# create test database "app" and dump schema because db/structure.sql is not checked in
|
||||
execute_quiet "time bundle exec rails db:migrate db:schema:dump zeitwerk:check"
|
||||
execute_quiet "time bundle exec rails db:migrate db:schema:dump zeitwerk:check webdrivers:chromedriver:update[114.0.5735.90] webdrivers:geckodriver:update"
|
||||
}
|
||||
|
||||
run_units() {
|
||||
|
||||
@@ -126,13 +126,11 @@ RSpec.describe 'Status action board', js: true, with_ee: %i[board_view] do
|
||||
filters.expect_filter_by('Type', 'is (OR)', [type_task.name, type_bug.name])
|
||||
|
||||
# Wait a bit before saving the page to ensure both values are processed
|
||||
sleep 1
|
||||
sleep 2
|
||||
|
||||
board_page.expect_changed
|
||||
board_page.save
|
||||
|
||||
sleep 1
|
||||
|
||||
# Move task to closed
|
||||
board_page.move_card(0, from: 'Open', to: 'Closed')
|
||||
board_page.expect_card('Open', 'Open task item', present: false)
|
||||
@@ -143,7 +141,7 @@ RSpec.describe 'Status action board', js: true, with_ee: %i[board_view] do
|
||||
board_page.card_for(bug_wp).expect_type 'Bug'
|
||||
|
||||
# Wait a bit before moving the items too fast
|
||||
sleep 1
|
||||
sleep 2
|
||||
|
||||
# Move bug to open
|
||||
board_page.move_card(0, from: 'Closed', to: 'Open')
|
||||
|
||||
@@ -37,7 +37,7 @@ run() {
|
||||
eval $2;
|
||||
}
|
||||
|
||||
run "bundle exec rake db:create db:migrate"
|
||||
run "bundle exec rake db:create db:migrate webdrivers:chromedriver:update[114.0.5735.90] webdrivers:geckodriver:update"
|
||||
|
||||
run "cd frontend; npm install ; cd -"
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
# Force the latest version of chromedriver using the webdriver gem
|
||||
require 'webdrivers/chromedriver'
|
||||
|
||||
# rubocop:disable Metrics/PerceivedComplexity
|
||||
def register_chrome(language, name: :"chrome_#{language}", override_time_zone: nil)
|
||||
Capybara.register_driver name do |app|
|
||||
@@ -50,7 +53,13 @@ def register_chrome(language, name: :"chrome_#{language}", override_time_zone: n
|
||||
if is_grid
|
||||
driver_opts[:url] = ENV.fetch('SELENIUM_GRID_URL', nil)
|
||||
else
|
||||
if Webdrivers::ChromeFinder.location == '/snap/bin/chromium'
|
||||
# make chromium snap install work out-of-the-box
|
||||
# See https://stackoverflow.com/a/65121582/177665
|
||||
chromedriver_path = '/snap/bin/chromium.chromedriver'
|
||||
end
|
||||
driver_opts[:service] = Selenium::WebDriver::Service.chrome(
|
||||
path: chromedriver_path,
|
||||
args: ['--verbose', '--log-path=/tmp/chromedriver.log']
|
||||
)
|
||||
end
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
# Force the latest version of geckodriver using the webdriver gem
|
||||
require 'webdrivers/geckodriver'
|
||||
require 'socket'
|
||||
|
||||
def register_firefox(language, name: :"firefox_#{language}")
|
||||
@@ -41,7 +42,7 @@ def register_firefox(language, name: :"firefox_#{language}")
|
||||
browser: is_grid ? :remote : :firefox,
|
||||
url: ENV.fetch('SELENIUM_GRID_URL', nil),
|
||||
http_client: client,
|
||||
options:
|
||||
capabilities: options
|
||||
}
|
||||
|
||||
if is_grid
|
||||
|
||||
Reference in New Issue
Block a user