Sha256: 4aad8d1c04cbba44a20a8d23d741c41a578c00612b61acc58530b4958084486e
Contents?: true
Size: 1.65 KB
Versions: 5
Compression:
Stored size: 1.65 KB
Contents
require 'spec_helper' describe Critique do class ExampleClass include Critique end before do Critique.disable! # Critique.logger = '/dev/null' end it "is defined" do Critique.should be_a(Module) end context "when included" do it "defines .critique on the base class" do ExampleClass.should respond_to(:critique) end it "defines #critique on the base class" do ExampleClass.new.should respond_to(:critique) end end describe ".enabled?" do context "in the default state" do it "returns false" do Critique.should_not be_enabled end end context "when enabled" do before do Critique.enable! end it "returns true" do Critique.should be_enabled end end end describe ".critique" do let(:code) { 1 + 2 } context "when disabled" do it "does not execute profiling" do dont_allow(Critique::Profiling).profile ExampleClass.critique { code } end it "executes the code block" do result = ExampleClass.critique { code } result.should == 3 end end context "when enabled" do before do Critique.enable! end it "executes profiling" do mock(Critique::Profiling).profile(ExampleClass, 2) ExampleClass.critique { code } end it "executes the code block" do ExampleClass.critique { code }.should == 3 end end context "in the default (disabled) state" do it "does not run profiling" do dont_allow(Critique::Profiling).profile ExampleClass.critique { code } end end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
critique-0.2.0 | spec/critique_spec.rb |
critique-0.1.3 | spec/critique_spec.rb |
critique-0.1.2 | spec/critique_spec.rb |
critique-0.1.1 | spec/critique_spec.rb |
critique-0.1 | spec/critique_spec.rb |