Sha256: 765cb384d557ccaf019addc98f4b7bbbba59cef32d37e6ea08761a3b981e3b85

Contents?: true

Size: 1.13 KB

Versions: 1

Compression:

Stored size: 1.13 KB

Contents

require File.dirname(__FILE__) + '/../spec_helper.rb'

require 'reek/smells/smell_detector'
require 'reek/report'
require 'reek/source'
require 'reek/smells/feature_envy'

include Reek

describe Report, " when empty" do
  before(:each) do
    @rpt = Report.new(Sniffer.new)
  end

  it 'should have zero length' do
    @rpt.length.should == 0
  end

  it 'should claim to be empty' do
    @rpt.should be_empty
  end

  it 'has an empty quiet_report' do
    @rpt.quiet_report.should == ''
  end
end

describe Report, "smell_list" do
  before(:each) do
    rpt = 'def simple(a) a[3] end'.sniff.report
    @report = rpt.smell_list.split("\n")
  end

  it 'should mention every smell name' do
    @report.should have_at_least(2).lines
    @report[0].should match(/[Utility Function]/)
    @report[1].should match(/[Feature Envy]/)
  end
end

describe Report, " as a SortedSet" do
  it 'should only add a smell once' do
    rpt = Report.new(Sniffer.new)
    rpt << SmellWarning.new(Smells::FeatureEnvy.new, "self", 'too many!')
    rpt.length.should == 1
    rpt << SmellWarning.new(Smells::FeatureEnvy.new, "self", 'too many!')
    rpt.length.should == 1
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
kevinrutherford-reek-1.1.3.10 spec/reek/report_spec.rb