Compare commits

...

4 commits

Author SHA1 Message Date
b5e9642b21 Add bundler-audit gem to fix CI
All checks were successful
Ruby CI / test (pull_request) Successful in 23s
Rails 8.1 generates bin/bundler-audit but doesn't include the gem by default.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-06 00:12:42 -04:00
9f36dbe87d Merge branch 'main' into update-dependencies-20250605 2025-06-06 00:04:26 -04:00
8ed6eabdb2 Use cuprite to drive Chrome (#60)
headless tests started to fail due to elements not being present in time
or not being found period.  CBA to fix so just switch to this other
driver for now.

Reviewed-on: #60
2025-06-06 00:00:54 -04:00
3eb819ab68 Update brakeman to pass CI (#61)
Reviewed-on: #61
2025-06-05 23:58:53 -04:00
3 changed files with 21 additions and 14 deletions

View file

@ -51,6 +51,9 @@ group :development, :test do
# Omakase Ruby styling [https://github.com/rails/rubocop-rails-omakase/]
gem "rubocop-rails-omakase", require: false
# Audit bundle for known vulnerabilities
gem "bundler-audit", require: false
end
group :development do
@ -61,7 +64,7 @@ end
group :test do
# Use system testing [https://guides.rubyonrails.org/testing.html#system-testing]
gem "capybara"
gem "selenium-webdriver"
gem "cuprite"
end
gem "tailwindcss-rails", "~> 3.3.1"

View file

@ -116,6 +116,9 @@ GEM
brakeman (7.0.2)
racc
builder (3.3.0)
bundler-audit (0.9.2)
bundler (>= 1.2.0, < 3)
thor (~> 1.0)
capybara (3.40.0)
addressable
matrix
@ -128,6 +131,9 @@ GEM
concurrent-ruby (1.3.5)
connection_pool (2.5.3)
crass (1.0.6)
cuprite (0.17)
capybara (~> 3.0)
ferrum (~> 0.17.0)
date (3.4.1)
debug (1.10.0)
irb (~> 1.10)
@ -137,6 +143,12 @@ GEM
erubi (1.13.1)
et-orbi (1.2.11)
tzinfo
ferrum (0.17.1)
addressable (~> 2.5)
base64 (~> 0.2)
concurrent-ruby (~> 1.1)
webrick (~> 1.7)
websocket-driver (~> 0.7)
fugit (1.11.1)
et-orbi (~> 1, >= 1.2.11)
raabro (~> 1.4)
@ -233,7 +245,6 @@ GEM
regexp_parser (2.10.0)
reline (0.6.1)
io-console (~> 0.5)
rexml (3.4.1)
rubocop (1.76.0)
json (~> 2.3)
language_server-protocol (~> 3.17.0.2)
@ -263,14 +274,7 @@ GEM
rubocop-performance (>= 1.24)
rubocop-rails (>= 2.30)
ruby-progressbar (1.13.0)
rubyzip (2.4.1)
securerandom (0.4.1)
selenium-webdriver (4.33.0)
base64 (~> 0.2)
logger (~> 1.4)
rexml (~> 3.2, >= 3.2.5)
rubyzip (>= 1.2.2, < 3.0)
websocket (~> 1.0)
solid_cable (3.0.8)
actioncable (>= 7.2)
activejob (>= 7.2)
@ -316,7 +320,7 @@ GEM
activemodel (>= 6.0.0)
bindex (>= 0.4.0)
railties (>= 6.0.0)
websocket (1.2.11)
webrick (1.9.1)
websocket-driver (0.8.0)
base64
websocket-extensions (>= 0.1.0)
@ -335,7 +339,9 @@ DEPENDENCIES
bcrypt
bootsnap
brakeman
bundler-audit
capybara
cuprite
debug
importmap-rails
jbuilder
@ -343,7 +349,6 @@ DEPENDENCIES
puma (>= 5.0)
rails!
rubocop-rails-omakase
selenium-webdriver
solid_cable
solid_cache
solid_queue

View file

@ -1,9 +1,8 @@
require "test_helper"
require "capybara/cuprite"
class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
driven_by :selenium,
using: ENV["VISIBLE_SYSTEM_TESTS"].present? ? :chrome : :headless_chrome,
screen_size: [ 1400, 1400 ]
driven_by :cuprite, options: { headless: ENV["VISIBLE_SYSTEM_TESTS"].blank? }
def login(email, password = "secret")
visit new_session_url