Class: RSpec::Core::Runner
Class Method Summary collapse
- .autorun ⇒ Object
- .autorun_disabled? ⇒ Boolean
- .disable_autorun! ⇒ Object
- .installed_at_exit? ⇒ Boolean
- .run(args, err, out) ⇒ Object
- .run_in_process(options, err, out) ⇒ Object
- .run_over_drb(options, err, out) ⇒ Object
- .running_in_drb? ⇒ Boolean
- .trap_interrupt ⇒ Object
Class Method Details
.autorun ⇒ Object
7 8 9 10 11 |
# File 'lib/rspec/core/runner.rb', line 7 def self.autorun return if autorun_disabled? || installed_at_exit? || running_in_drb? @installed_at_exit = true at_exit { run(ARGV, $stderr, $stdout) ? exit(0) : exit(1) } end |
.autorun_disabled? ⇒ Boolean
13 14 15 |
# File 'lib/rspec/core/runner.rb', line 13 def self.autorun_disabled? @autorun_disabled ||= false end |
.disable_autorun! ⇒ Object
17 18 19 |
# File 'lib/rspec/core/runner.rb', line 17 def self.disable_autorun! @autorun_disabled = true end |
.installed_at_exit? ⇒ Boolean
21 22 23 |
# File 'lib/rspec/core/runner.rb', line 21 def self.installed_at_exit? @installed_at_exit ||= false end |
.run(args, err, out) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/rspec/core/runner.rb', line 38 def self.run(args, err, out) trap_interrupt = ConfigurationOptions.new(args) . if .[:drb] run_over_drb(, err, out) || run_in_process(, err, out) else run_in_process(, err, out) end end |
.run_in_process(options, err, out) ⇒ Object
54 55 56 |
# File 'lib/rspec/core/runner.rb', line 54 def self.run_in_process(, err, out) CommandLine.new(, RSpec::configuration, RSpec::world).run(err, out) end |
.run_over_drb(options, err, out) ⇒ Object
50 51 52 |
# File 'lib/rspec/core/runner.rb', line 50 def self.run_over_drb(, err, out) DRbCommandLine.new().run(err, out) end |
.running_in_drb? ⇒ Boolean
25 26 27 28 |
# File 'lib/rspec/core/runner.rb', line 25 def self.running_in_drb? (DRb.current_server rescue false) && DRb.current_server.uri =~ /druby\:\/\/127.0.0.1\:/ end |
.trap_interrupt ⇒ Object
30 31 32 33 34 35 36 |
# File 'lib/rspec/core/runner.rb', line 30 def self.trap_interrupt trap('INT') do exit!(1) if RSpec.wants_to_quit RSpec.wants_to_quit = true STDERR.puts "\nExiting... Interrupt again to exit immediately." end end |