Sha256: 8a4e95cd27ae7f38407048f707f0e43a50c8d5f191f0bc8b70d4fa0e4b8f91b6

Contents?: true

Size: 1.23 KB

Versions: 3

Compression:

Stored size: 1.23 KB

Contents

require_relative 'test_helper'

describe 'Kill Command' do
  include TestDsl

  it 'must send signal to some pid' do
    Process.expects(:kill).with('USR1', Process.pid)
    enter 'kill USR1'
    debug_file('kill')
  end

  it 'must finalize interface when sending KILL signal explicitly' do
    Process.stubs(:kill).with('KILL', Process.pid)
    interface.expects(:finalize)
    enter 'kill KILL'
    debug_file('kill')
  end

  it 'must ask confirmation when sending KILL implicitly' do
    Process.expects(:kill).with('KILL', Process.pid)
    enter 'kill', 'y'
    debug_file('kill')
    check_output_includes 'Really kill? (y/n)', interface.confirm_queue
  end

  describe 'unknown signal' do
    it 'must not send the signal' do
      Process.expects(:kill).with('BLA', Process.pid).never
      enter 'kill BLA'
      debug_file('kill')
    end

    it 'must show an error' do
      enter 'kill BLA'
      debug_file('kill')
      check_output_includes \
        'signal name BLA is not a signal I know about', interface.error_queue
    end
  end

  describe 'Post Mortem' do
    it 'must work in post-mortem mode' do
      Process.expects(:kill).with('USR1', Process.pid)
      enter 'cont', 'kill USR1'
      debug_file 'post_mortem'
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
byebug-1.2.0 test/kill_test.rb
byebug-1.1.1 test/kill_test.rb
byebug-1.1.0 test/kill_test.rb