diff --git a/Gemfile b/Gemfile index 8b799101eb..57d7b27b4b 100644 --- a/Gemfile +++ b/Gemfile @@ -70,6 +70,7 @@ group :development, :test do gem 'dotenv-rails', '~> 3.1' gem 'parallel_tests', '~> 4.7' gem 'rspec-rails', '~> 6.1' + gem 'turbo_tests', '~> 2.2' end group :test do diff --git a/Gemfile.lock b/Gemfile.lock index 746920c70d..ddf6ed4afc 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -560,6 +560,9 @@ GEM actionpack (>= 6.0.0) activejob (>= 6.0.0) railties (>= 6.0.0) + turbo_tests (2.2.4) + parallel_tests (>= 3.3.0, < 5) + rspec (>= 3.10) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.5.0) @@ -663,6 +666,7 @@ DEPENDENCIES stackprof (~> 0.2) stimulus-rails (~> 1.3) turbo-rails (~> 2.0) + turbo_tests (~> 2.2) vcr (~> 6.2) view_component (~> 3.12) web-console (~> 4.2) diff --git a/bin/ci_spec b/bin/ci_spec index ca5648aa98..acf9880dbf 100755 --- a/bin/ci_spec +++ b/bin/ci_spec @@ -12,4 +12,4 @@ groups = "#{node_index * CI_RUNNER_PROCESS_COUNT + parallel_tests_is_one_indexed total_parallelism = CI_RUNNER_PROCESS_COUNT * ENV['CI_NODE_TOTAL'].to_i -exec "bundle exec parallel_test ./spec -t rspec -n #{total_parallelism} --only-group #{groups}" +exec "bundle exec turbo_tests ./spec -t rspec -n #{total_parallelism} --only-group #{groups}" diff --git a/spec/support/precompile_assets.rb b/spec/support/precompile_assets.rb index fddbbb38bb..d46143e15a 100644 --- a/spec/support/precompile_assets.rb +++ b/spec/support/precompile_assets.rb @@ -8,6 +8,10 @@ next end + unless ParallelTests.first_process? + next + end + if has_no_system_tests $stdout.puts "\n🚀️️ No system test selected. Skip assets compilation.\n" next