1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
require_relative 'spec_helper'
load_extension("tracepoint")
describe "CApiTracePointSpecs" do
before :each do
@s = CApiTracePointSpecs.new
end
after :each do
@trace.disable if @trace and @trace.enabled?
end
describe "rb_tracepoint_new" do
it "returns a tracepoint object" do
@trace = @s.rb_tracepoint_new(7)
@trace.should be_an_instance_of(TracePoint)
@trace.should_not.enabled?
end
it "traces lines when given RUBY_EVENT_LINE" do
@trace = @s.rb_tracepoint_new(8)
@trace.enable
@s.callback_called?.should == 8
end
end
describe "rb_tracepoint_disable" do
it "disables an enabled TracePoint" do
@trace = @s.rb_tracepoint_new(9)
@trace.should_not.enabled?
@trace.enable
@trace.should.enabled?
@s.rb_tracepoint_disable(@trace).should == false
@trace.should_not.enabled?
end
end
describe "rb_tracepoint_enable" do
it "enables a disabled TracePoint" do
@trace = @s.rb_tracepoint_new(10)
@trace.should_not.enabled?
@s.rb_tracepoint_enable(@trace).should == true
@trace.should.enabled?
end
end
describe "rb_tracepoint_enabled_p" do
it "returns correct enabled status" do
@trace = @s.rb_tracepoint_new(11)
@s.rb_tracepoint_enabled_p(@trace).should == false
@trace.enable
@s.rb_tracepoint_enabled_p(@trace).should == true
end
end
end
|