Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: jruby/jruby
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 355f943da6da
Choose a base ref
...
head repository: jruby/jruby
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: a8d3ceb374d9
Choose a head ref
  • 2 commits
  • 3 files changed
  • 1 contributor

Commits on Dec 1, 2017

  1. Squashed 'spec/ruby/' changes from bacedc5..e2d0d1e

    e2d0d1e add final newline character
    468a953 Remove unused variable
    1b3b1d6 Simplify TracePoint#disable spec to avoid running too much in the handler
    ef53914 Make sure to disable every TracePoint when leaving a spec
    
    git-subtree-dir: spec/ruby
    git-subtree-split: e2d0d1e1cfa6ac33ccc270117584849b244dc27f
    eregon committed Dec 1, 2017
    Copy the full SHA
    fd9c503 View commit details
  2. Copy the full SHA
    a8d3ceb View commit details
Showing with 54 additions and 35 deletions.
  1. +26 −17 spec/ruby/core/tracepoint/disable_spec.rb
  2. +27 −17 spec/ruby/core/tracepoint/enable_spec.rb
  3. +1 −1 spec/ruby/language/fixtures/begin_file.rb
43 changes: 26 additions & 17 deletions spec/ruby/core/tracepoint/disable_spec.rb
Original file line number Diff line number Diff line change
@@ -3,18 +3,18 @@
describe 'TracePoint#disable' do
def test; end
it 'returns true if trace was enabled' do
event_name, method_name = nil
called = false
trace = TracePoint.new(:call) do |tp|
event_name = tp.event
method_name = tp.method_id
called = true
end

trace.enable
trace.disable.should be_true
event_name, method_name = nil

# Check the TracePoint is disabled
called = false
test
method_name.equal?(:test).should be_false
event_name.should equal(nil)
called.should == false
end

it 'returns false if trace was disabled' do
@@ -35,30 +35,39 @@ def test; end
enabled = nil
trace = TracePoint.new(:line) {}
trace.enable
trace.disable { enabled = trace.enabled? }
enabled.should be_false
trace.enabled?.should be_true
trace.disable
begin
trace.disable { enabled = trace.enabled? }
enabled.should be_false
trace.enabled?.should be_true
ensure
trace.disable
end
end

it 'is disabled within a block & also returns false when its called with a block' do
trace = TracePoint.new(:line) {}
trace.enable
trace.disable { trace.enabled? }.should == false
trace.enabled?.should equal(true)
trace.disable
begin
trace.disable { trace.enabled? }.should == false
trace.enabled?.should equal(true)
ensure
trace.disable
end
end

ruby_bug "#14057", "2.0"..."2.5" do
it 'can accept param within a block but it should not yield arguments' do
event_name = nil
trace = TracePoint.new(:line) {}
trace.enable
trace.disable do |*args|
args.should == []
begin
trace.disable do |*args|
args.should == []
end
trace.enabled?.should be_true
ensure
trace.disable
end
trace.enabled?.should be_true
trace.disable
end
end
end
44 changes: 27 additions & 17 deletions spec/ruby/core/tracepoint/enable_spec.rb
Original file line number Diff line number Diff line change
@@ -5,20 +5,21 @@ def test; end

describe 'without a block' do
it 'returns true if trace was enabled' do
event_name, method_name = nil, nil
method_name = []
event_name = nil
trace = TracePoint.new(:call) do |tp|
event_name = tp.event
method_name << tp.method_id
end

test
event_name.should == nil

trace.enable
test
event_name.should equal(:call)
trace.disable
begin
test
event_name.should equal(:call)
ensure
trace.disable
end
end

it 'returns false if trace was disabled' do
@@ -29,21 +30,27 @@ def test; end
end

trace.enable.should be_false
event_name.should equal(:call)
test
method_name.equal?(:test).should be_true
begin
event_name.should equal(:call)
test
method_name.equal?(:test).should be_true
ensure
trace.disable
end

trace.disable
event_name, method_name = nil
test
method_name.equal?(:test).should be_false
event_name.should equal(nil)

trace.enable.should be_false
event_name.should equal(:call)
test
method_name.equal?(:test).should be_true
trace.disable
begin
event_name.should equal(:call)
test
method_name.equal?(:test).should be_true
ensure
trace.disable
end
end
end

@@ -71,9 +78,12 @@ def test; end
enabled = nil
trace = TracePoint.new(:line) {}
trace.enable
trace.enable { enabled = trace.enabled? }
enabled.should == true
trace.disable
begin
trace.enable { enabled = trace.enabled? }
enabled.should == true
ensure
trace.disable
end
end

it 'returns value returned by the block' do
2 changes: 1 addition & 1 deletion spec/ruby/language/fixtures/begin_file.rb
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
BEGIN {
puts __FILE__
}
}