diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index cf183290d..dcaa83fe1 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -26,14 +26,8 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - ruby: ["3.1", "3.2", "jruby-9.4", "3.3", "3.4"] - appraisal: [cucumber_8, cucumber_9, cucumber_10, rspec_4] - include: - - ruby: "3.0" - appraisal: cucumber_8 - exclude: - - ruby: "3.4" - appraisal: cucumber_8 + ruby: ["3.3"] + appraisal: [cucumber_10] env: BUNDLE_GEMFILE: gemfiles/${{ matrix.appraisal }}.gemfile @@ -53,7 +47,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: ["3.0", "3.1", "3.2", "3.3", "3.4"] + ruby: ["3.3"] runs-on: macos-latest steps: - uses: actions/checkout@v6 @@ -71,7 +65,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: ["3.0", "3.1", "3.2", "3.3", "3.4"] + ruby: ["3.3"] runs-on: windows-latest steps: - name: git config autocrlf @@ -82,12 +76,14 @@ jobs: with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - - name: Run specs - run: bundle exec rake spec - - name: Run cukes (1) - run: bundle exec cucumber features/01_getting_started_with_aruba/ + # - name: Run specs + # run: bundle exec rake spec + # - name: Run cukes (1) + # run: bundle exec cucumber features/01_getting_started_with_aruba/ # - name: Run cukes (2) # run: bundle exec cucumber features/02_configure_aruba/ + - name: Run cukes - focus! + run: bundle exec cucumber features/02_configure_aruba/basics.feature # - name: Run cukes (3) # run: bundle exec cucumber features/03_testing_frameworks/ # - name: Run cukes (4) diff --git a/config/.gitignore b/config/.gitignore deleted file mode 100644 index 53c4367db..000000000 --- a/config/.gitignore +++ /dev/null @@ -1 +0,0 @@ -aruba-rvm.yml \ No newline at end of file diff --git a/config/cucumber.yml b/config/cucumber.yml new file mode 100644 index 000000000..c89316b81 --- /dev/null +++ b/config/cucumber.yml @@ -0,0 +1 @@ +default: --tags 'not @wip' diff --git a/features/02_configure_aruba/activate_announcer_on_command_failure.feature b/features/02_configure_aruba/activate_announcer_on_command_failure.feature index 61285e131..0bd344ca5 100644 --- a/features/02_configure_aruba/activate_announcer_on_command_failure.feature +++ b/features/02_configure_aruba/activate_announcer_on_command_failure.feature @@ -8,7 +8,7 @@ Feature: Configure announcer activation on command failure Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| puts %(The default value is "#{config.activate_announcer_on_command_failure.inspect}") @@ -21,7 +21,7 @@ Feature: Configure announcer activation on command failure """ Scenario: Modify value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| config.activate_announcer_on_command_failure = [:foo, :bar] diff --git a/features/02_configure_aruba/basics.feature b/features/02_configure_aruba/basics.feature index a95bca709..50cab8eb1 100644 --- a/features/02_configure_aruba/basics.feature +++ b/features/02_configure_aruba/basics.feature @@ -14,17 +14,16 @@ Feature: Usage of configuration Background: Given I use a fixture named "cli-app" And an executable named "bin/aruba-test-cli" with: - """bash - #!/bin/bash - trap "exit 128" SIGTERM SIGINT - sleep $* + """ruby + #!/usr/bin/env ruby + sleep ARGV[0].to_f """ Scenario: Setting default values for option for RSpec Given a file named "spec/support/aruba_config.rb" with: """ruby Aruba.configure do |config| - config.exit_timeout = 0.7 + config.exit_timeout = 1.0 end """ And a file named "spec/usage_configuration_spec.rb" with: @@ -34,12 +33,12 @@ Feature: Usage of configuration RSpec.describe 'Run command', :type => :aruba do context 'when fast command' do before { run_command('aruba-test-cli 0') } - it { expect(last_command_started).to be_successfully_executed } + it { expect(last_command_started).to have_finished_in_time } end context 'when slow command' do before { run_command('aruba-test-cli 1') } - it { expect(last_command_started).not_to be_successfully_executed } + it { expect(last_command_started).not_to have_finished_in_time } end end """ @@ -55,7 +54,7 @@ Feature: Usage of configuration Given a file named "spec/support/aruba_config.rb" with: """ruby Aruba.configure do |config| - config.exit_timeout = 0.5 + config.exit_timeout = 1.0 end """ And a file named "spec/support/hooks.rb" with: @@ -64,7 +63,7 @@ Feature: Usage of configuration config.before :each do |example| next unless example.metadata.key? :slow_command - aruba.config.exit_timeout = 1.5 + aruba.config.exit_timeout = 2.5 end end """ @@ -75,17 +74,17 @@ Feature: Usage of configuration RSpec.describe 'Run command', :type => :aruba do context 'when fast command' do before { run_command('aruba-test-cli 0') } - it { expect(last_command_started).to be_successfully_executed } + it { expect(last_command_started).to have_finished_in_time } end context 'when slow command and this is known by the developer', :slow_command => true do - before { run_command('aruba-test-cli 1') } - it { expect(last_command_started).to be_successfully_executed } + before { run_command('aruba-test-cli 1.1') } + it { expect(last_command_started).to have_finished_in_time } end context 'when slow command, but this might be a failure' do - before { run_command('aruba-test-cli 1') } - it { expect(last_command_started).not_to be_successfully_executed } + before { run_command('aruba-test-cli 1.1') } + it { expect(last_command_started).not_to have_finished_in_time } end end """ @@ -93,10 +92,20 @@ Feature: Usage of configuration Then the specs should all pass Scenario: Setting default values for option for Cucumber - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| - config.exit_timeout = 0.5 + config.exit_timeout = 1.0 + end + """ + And a file named "features/step_definitions/timeout_steps.rb" with: + """ruby + Then 'the command should finish in time' do + expect(last_command_started).to have_finished_in_time + end + + Then 'the command should time out' do + expect(last_command_started).to run_too_long end """ And a file named "features/run.feature" with: @@ -104,11 +113,11 @@ Feature: Usage of configuration Feature: Run it Scenario: Fast command When I run `aruba-test-cli 0` - Then the exit status should be 0 + Then the command should finish in time Scenario: Slow command When I run `aruba-test-cli 1.0` - Then the exit status should be 128 + Then the command should time out """ When I run `cucumber` Then the features should all pass @@ -119,16 +128,26 @@ Feature: Usage of configuration want to set the default timeout for all commands to the maximum value only to prevent those commands from failing. - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| - config.exit_timeout = 0.2 + config.exit_timeout = 0.5 end """ And a file named "features/support/hooks.rb" with: """ruby Before '@slow-command' do - aruba.config.exit_timeout = 1.5 + aruba.config.exit_timeout = 2.5 + end + """ + And a file named "features/step_definitions/timeout_steps.rb" with: + """ruby + Then 'the command should finish in time' do + expect(last_command_started).to have_finished_in_time + end + + Then 'the command should time out' do + expect(last_command_started).to run_too_long end """ And a file named "features/usage_configuration.feature" with: @@ -136,16 +155,16 @@ Feature: Usage of configuration Feature: Run it Scenario: Fast command When I run `aruba-test-cli 0` - Then the exit status should be 0 + Then the command should finish in time @slow-command - Scenario: Slow command known by the developer - When I run `aruba-test-cli 0.5` - Then the exit status should be 0 + Scenario: Slow command finishes when given more time + When I run `aruba-test-cli 1.1` + Then the command should finish in time - Scenario: Slow command which might be a failure - When I run `aruba-test-cli 0.5` - Then the exit status should be 128 + Scenario: Slow command fails + When I run `aruba-test-cli 1.1` + Then the command should time out """ When I run `cucumber` Then the features should all pass diff --git a/features/02_configure_aruba/console_history_file.feature b/features/02_configure_aruba/console_history_file.feature index 683f2bbdd..d385ef114 100644 --- a/features/02_configure_aruba/console_history_file.feature +++ b/features/02_configure_aruba/console_history_file.feature @@ -8,7 +8,7 @@ Feature: Configure the aruba console history file Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ Aruba.configure do |config| puts %(The default value is "#{config.console_history_file}") @@ -21,7 +21,7 @@ Feature: Configure the aruba console history file """ Scenario: Set some value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ Aruba.configure do |config| config.console_history_file = '~/.config/aruba/history.txt' diff --git a/features/02_configure_aruba/exit_timeout.feature b/features/02_configure_aruba/exit_timeout.feature index a023bf57b..3cc5db19f 100644 --- a/features/02_configure_aruba/exit_timeout.feature +++ b/features/02_configure_aruba/exit_timeout.feature @@ -4,17 +4,26 @@ Feature: Configure timeout for command execution I want to configure the timeout when executing a command In order to support some longer running commands + Note that on Windows, you must check for timeouts explicitly and cannot rely + on a nonzero exit status: Killing the process from Ruby when the timeout + occurs will set the exit status to 0. + Background: Given I use the fixture "cli-app" And an executable named "bin/aruba-test-cli" with: - """bash - #!/bin/bash - trap "exit 128" SIGTERM SIGINT - sleep $* + """ruby + #!/usr/bin/env ruby + sleep ARGV[0].to_f + """ + And a file named "features/step_definitions/timeout_steps.rb" with: + """ruby + Then 'the command should finish in time' do + expect(last_command_started).to have_finished_in_time + end """ Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| puts %(The default value is "#{config.exit_timeout}") @@ -27,7 +36,7 @@ Feature: Configure timeout for command execution """ Scenario: Modify value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| config.exit_timeout = 1.0 @@ -37,13 +46,13 @@ Feature: Configure timeout for command execution """ Feature: Run it Scenario: Fast command - When I run `aruba-test-cli 0.5` - Then the exit status should be 0 + When I run `aruba-test-cli 0.1` + Then the command should finish in time """ Then I successfully run `cucumber` Scenario: Fails if takes longer - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| config.exit_timeout = 0.5 @@ -54,7 +63,7 @@ Feature: Configure timeout for command execution Feature: Run it Scenario: Fast command When I run `aruba-test-cli 2.5` - Then the exit status should be 0 + Then the command should finish in time """ Then I run `cucumber` And the exit status should be 1 diff --git a/features/02_configure_aruba/fixtures_directories.feature b/features/02_configure_aruba/fixtures_directories.feature index 121d746bd..055c76540 100644 --- a/features/02_configure_aruba/fixtures_directories.feature +++ b/features/02_configure_aruba/fixtures_directories.feature @@ -8,7 +8,7 @@ Feature: Configure directory where to look for fixtures Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| puts %(The default value is "%w(#{config.fixtures_directories.join(" ")})") @@ -21,7 +21,7 @@ Feature: Configure directory where to look for fixtures """ Scenario: Modify value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| config.fixtures_directories = %w(spec/fixtures) diff --git a/features/02_configure_aruba/fixtures_path_prefix.feature b/features/02_configure_aruba/fixtures_path_prefix.feature index b16cc0dac..e2aa6c54c 100644 --- a/features/02_configure_aruba/fixtures_path_prefix.feature +++ b/features/02_configure_aruba/fixtures_path_prefix.feature @@ -8,7 +8,7 @@ Feature: Use fixtures path prefix of aruba Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| puts "The prefix is \"#{config.fixtures_path_prefix}\"." diff --git a/features/02_configure_aruba/home_directory.feature b/features/02_configure_aruba/home_directory.feature index 065be0eb6..4d57c60e7 100644 --- a/features/02_configure_aruba/home_directory.feature +++ b/features/02_configure_aruba/home_directory.feature @@ -13,7 +13,7 @@ Feature: Configure the home directory to be used with aruba Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| puts %(The default value is "#{config.home_directory}") @@ -22,11 +22,11 @@ Feature: Configure the home directory to be used with aruba When I successfully run `cucumber` Then the output should match: """ - The default value is "/.*/tmp/aruba" + The default value is ".*/tmp/aruba" """ Scenario: Set to current working directory - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| # use current working directory @@ -44,7 +44,7 @@ Feature: Configure the home directory to be used with aruba """ Scenario: Set a path inside aruba's working directory - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| # Use aruba working directory @@ -60,11 +60,11 @@ Feature: Configure the home directory to be used with aruba Then I successfully run `cucumber` Then the output should match: """ - The value is "/.*/tmp/aruba/home" + The value is ".*/tmp/aruba/home" """ Scenario: Set to some other path (deprecated) - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| # use current working directory diff --git a/features/02_configure_aruba/io_timeout.feature b/features/02_configure_aruba/io_timeout.feature index f71bad70b..b89d79805 100644 --- a/features/02_configure_aruba/io_timeout.feature +++ b/features/02_configure_aruba/io_timeout.feature @@ -8,7 +8,7 @@ Feature: Configure timeout for io of commands Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| puts %(The default value is "#{config.io_wait_timeout}") @@ -21,7 +21,7 @@ Feature: Configure timeout for io of commands """ Scenario: Modify value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| config.io_wait_timeout = 2 diff --git a/features/02_configure_aruba/log_level.feature b/features/02_configure_aruba/log_level.feature index 7bb35556e..a7a2436d0 100644 --- a/features/02_configure_aruba/log_level.feature +++ b/features/02_configure_aruba/log_level.feature @@ -8,7 +8,7 @@ Feature: Configure Log level of aruba logger Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| puts %(The default value is "#{config.log_level}") @@ -21,7 +21,7 @@ Feature: Configure Log level of aruba logger """ Scenario: Modify value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| config.log_level = :warn diff --git a/features/02_configure_aruba/physical_block_size.feature b/features/02_configure_aruba/physical_block_size.feature index 4d665485c..ccf3d5f88 100644 --- a/features/02_configure_aruba/physical_block_size.feature +++ b/features/02_configure_aruba/physical_block_size.feature @@ -8,7 +8,7 @@ Feature: Configure the physical block size of disk Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| puts %(The default value is "#{config.physical_block_size}") @@ -21,7 +21,7 @@ Feature: Configure the physical block size of disk """ Scenario: Set the block size to something else which is a power of two - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| # use current working directory @@ -39,7 +39,7 @@ Feature: Configure the physical block size of disk """ Scenario: The value needs to be a power of two, otherwise it will fail - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| config.physical_block_size = 3 diff --git a/features/02_configure_aruba/remove_ansi_escape_sequences.feature b/features/02_configure_aruba/remove_ansi_escape_sequences.feature index d8ff1b882..ee665f508 100644 --- a/features/02_configure_aruba/remove_ansi_escape_sequences.feature +++ b/features/02_configure_aruba/remove_ansi_escape_sequences.feature @@ -8,7 +8,7 @@ Feature: Configure if ansi color codes should be stripped off from command outpu Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ Aruba.configure do |config| puts %(The default value is "#{config.remove_ansi_escape_sequences}") @@ -21,7 +21,7 @@ Feature: Configure if ansi color codes should be stripped off from command outpu """ Scenario: Modify value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ Aruba.configure do |config| config.remove_ansi_escape_sequences = false diff --git a/features/02_configure_aruba/root_directory.feature b/features/02_configure_aruba/root_directory.feature index 492fe3891..e6b273528 100644 --- a/features/02_configure_aruba/root_directory.feature +++ b/features/02_configure_aruba/root_directory.feature @@ -8,7 +8,7 @@ Feature: Use root directory of aruba Given I use the fixture "cli-app" Scenario: Default configuration - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ Aruba.configure do |config| puts config.root_directory diff --git a/features/02_configure_aruba/startup_wait_time.feature b/features/02_configure_aruba/startup_wait_time.feature index 5a104e86b..fd13e9ca2 100644 --- a/features/02_configure_aruba/startup_wait_time.feature +++ b/features/02_configure_aruba/startup_wait_time.feature @@ -18,7 +18,7 @@ Feature: Set time to wait after spawning command Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| puts %(The default value is "#{config.startup_wait_time}") @@ -31,7 +31,7 @@ Feature: Set time to wait after spawning command """ Scenario: Modify value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ruby Aruba.configure do |config| config.startup_wait_time = 2 diff --git a/features/02_configure_aruba/working_directory.feature b/features/02_configure_aruba/working_directory.feature index 23edbcdb3..313c10c91 100644 --- a/features/02_configure_aruba/working_directory.feature +++ b/features/02_configure_aruba/working_directory.feature @@ -8,7 +8,7 @@ Feature: Configure working directory of aruba Given I use the fixture "cli-app" Scenario: Default value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ Aruba.configure do |config| puts %(The default value is "#{config.working_directory}") @@ -21,7 +21,7 @@ Feature: Configure working directory of aruba """ Scenario: Modify value - Given a file named "features/support/aruba_config.rb" with: + Given a file named "features/support/aruba.rb" with: """ Aruba.configure do |config| config.working_directory = 'tmp/cucumber' diff --git a/features/03_testing_frameworks/cucumber/hooks/define_after_hook_for_commands.feature b/features/03_testing_frameworks/cucumber/hooks/define_after_hook_for_commands.feature index e7b15b3ba..cd312990f 100644 --- a/features/03_testing_frameworks/cucumber/hooks/define_after_hook_for_commands.feature +++ b/features/03_testing_frameworks/cucumber/hooks/define_after_hook_for_commands.feature @@ -6,8 +6,6 @@ Feature: After command hooks You can hook into Aruba's lifecycle just before it runs a command and after it has run the command: ```ruby - require 'aruba' - Aruba.configure do |config| config.after :command do |cmd| puts "After the run of '#{cmd}'" @@ -19,10 +17,8 @@ Feature: After command hooks Given I use a fixture named "cli-app" Scenario: Run a simple command with an "after(:command)"-hook - Given a file named "features/support/hooks.rb" with: + Given a file named "features/support/aruba.rb" with: """ - require_relative 'aruba' - Aruba.configure do |config| config.after :command do |cmd| puts "after the run of `#{cmd.commandline}`" diff --git a/features/03_testing_frameworks/cucumber/hooks/define_before_hook_for_commands.feature b/features/03_testing_frameworks/cucumber/hooks/define_before_hook_for_commands.feature index 3e6eba456..8b5d187c1 100644 --- a/features/03_testing_frameworks/cucumber/hooks/define_before_hook_for_commands.feature +++ b/features/03_testing_frameworks/cucumber/hooks/define_before_hook_for_commands.feature @@ -8,8 +8,6 @@ Feature: before_cmd hooks You can hook into Aruba's lifecycle just before it runs a command and after it has run the command: ```ruby - require_relative 'aruba' - Aruba.configure do |config| config.before :command do |cmd| puts "About to run '#{cmd}'" @@ -21,10 +19,8 @@ Feature: before_cmd hooks Given I use a fixture named "cli-app" Scenario: Run a simple command with an "after(:command)"-hook - Given a file named "features/support/hooks.rb" with: + Given a file named "features/support/aruba.rb" with: """ - require_relative 'aruba' - Aruba.configure do |config| config.before :command do |cmd| puts "before the run of `#{cmd.commandline}`" diff --git a/fixtures/cli-app/features/support/aruba.rb b/fixtures/cli-app/features/support/aruba.rb deleted file mode 100644 index 751674fc0..000000000 --- a/fixtures/cli-app/features/support/aruba.rb +++ /dev/null @@ -1,3 +0,0 @@ -# frozen_string_literal: true - -require 'aruba/cucumber' diff --git a/fixtures/cli-app/features/support/env.rb b/fixtures/cli-app/features/support/env.rb index bcc12c29d..751674fc0 100644 --- a/fixtures/cli-app/features/support/env.rb +++ b/fixtures/cli-app/features/support/env.rb @@ -1,3 +1,3 @@ # frozen_string_literal: true -require_relative 'aruba' +require 'aruba/cucumber' diff --git a/lib/aruba/cucumber/testing_frameworks.rb b/lib/aruba/cucumber/testing_frameworks.rb index 5016893f9..4355fb610 100644 --- a/lib/aruba/cucumber/testing_frameworks.rb +++ b/lib/aruba/cucumber/testing_frameworks.rb @@ -52,8 +52,11 @@ # RSpec Then(/^the spec(?:s)? should all pass$/) do - step 'the output should contain "0 failures"' - step 'the exit status should be 0' + aggregate_failures do + expect(last_command_stopped) + .to have_output an_output_string_matching('examples?, 0 failures') + expect(last_command_stopped).to have_exit_status 0 + end end # RSpec diff --git a/spec/support/helpers/reporting.rb b/spec/support/helpers/reporting.rb index 23d57c118..3dba8bc37 100644 --- a/spec/support/helpers/reporting.rb +++ b/spec/support/helpers/reporting.rb @@ -1,5 +1,6 @@ # frozen_string_literal: true +# TODO: Isn't this provided by RSpec itself? module SpecHelpers module Reporting # Captures the given stream and returns it: