Class: RSpec::Core::Bisect::ShellRunner

Inherits:
Object
  • Object
show all
Defined in:
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/bisect/shell_runner.rb

Overview

Provides an API to run the suite for a set of locations, using the given bisect server to capture the results.

Sets of specs are run by shelling out.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(server, shell_command) ⇒ ShellRunner

Returns a new instance of ShellRunner.



23
24
25
26
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/bisect/shell_runner.rb', line 23

def initialize(server, shell_command)
  @server        = server
  @shell_command = shell_command
end

Class Method Details

.nameObject



19
20
21
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/bisect/shell_runner.rb', line 19

def self.name
  :shell
end

.start(shell_command, _spec_runner) ⇒ Object



13
14
15
16
17
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/bisect/shell_runner.rb', line 13

def self.start(shell_command, _spec_runner)
  Server.run do |server|
    yield new(server, shell_command)
  end
end

Instance Method Details

#original_resultsObject



32
33
34
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/bisect/shell_runner.rb', line 32

def original_results
  @original_results ||= run_locations(@shell_command.original_locations)
end

#run(locations) ⇒ Object



28
29
30
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/bisect/shell_runner.rb', line 28

def run(locations)
  run_locations(locations, original_results.failed_example_ids)
end