Sha256: 09129603e51432dc933888f1e2db7ca43eba42477fc5a3eb626dc18893e19b69

Contents?: true

Size: 1.15 KB

Versions: 1

Compression:

Stored size: 1.15 KB

Contents

class FinishExample
  def a
    b
  end
  def b
    c
    2
  end
  def c
    d
    3
  end
  def d
    5
  end
end

class TestFinish < TestDsl::TestCase
  before { enter "break #{__FILE__}:14", 'cont' }

  it 'must stop after current frame is finished when without arguments' do
    enter 'finish'
    debug_file('finish') { state.line.must_equal 11 }
  end

  it 'must stop before current frame finishes if 0 specified as argument' do
    enter 'finish 0'
    debug_file('finish') { state.line.must_equal 15 }
  end

  it 'must stop after current frame is finished if 1 specified as argument' do
    enter 'finish 1'
    debug_file('finish') { state.line.must_equal 11 }
  end

  it 'must behave consistenly even if current frame has been changed' do
    enter 'up', 'finish'
    debug_file('finish') { state.line.must_equal 7 }
  end

  describe 'not a number is specified for frame' do
    before { enter 'finish foo' }

    it 'must show an error' do
      debug_file('finish')
      check_output_includes '"finish" argument "foo" needs to be a number.'
    end

    it 'must be on the same line' do
      debug_file('finish') { state.line.must_equal 14 }
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
byebug-3.0.0 test/finish_test.rb