Sha256: b11f3db96547447d17aabe676ae5d9b6226c974293ed5ed73a220a6e7e433872

Contents?: true

Size: 1.04 KB

Versions: 10

Compression:

Stored size: 1.04 KB

Contents

require "spec_helper"

describe MetricFu::Reporter do

  context 'given a single formatter' do
    before do
      @formatter = double('formatter')
      @formatter.stub(:to_a).and_return([@formatter])
      @reporter = Reporter.new(@formatter)
    end

    it 'notifies the formatter' do
      @formatter.should_receive(:start)
      @formatter.should_receive(:finish)
      @reporter.start
      @reporter.finish
    end

    it 'only sends notifications when supported by formatter' do
      @formatter.stub(:respond_to?).with(:display_results).and_return(false)
      @formatter.should_not_receive(:display_results)
      @reporter.display_results
    end
  end

  context 'given multiple formatters' do
    before do
      @formatters = [double('formatter'), double('formatter')]
      @reporter = Reporter.new(@formatters)
    end

    it 'notifies all formatters' do
      @formatters.each do |formatter|
        formatter.should_receive(:start)
        formatter.should_receive(:finish)
      end
      @reporter.start
      @reporter.finish
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
metric_fu-4.6.0 spec/metric_fu/reporter_spec.rb
metric_fu-4.5.2 spec/metric_fu/reporter_spec.rb
metric_fu-4.5.1 spec/metric_fu/reporter_spec.rb
metric_fu-4.4.4 spec/metric_fu/reporter_spec.rb
metric_fu-4.4.3 spec/metric_fu/reporter_spec.rb
metric_fu-4.4.2 spec/metric_fu/reporter_spec.rb
metric_fu-4.4.1 spec/metric_fu/reporter_spec.rb
metric_fu-4.4.0 spec/metric_fu/reporter_spec.rb
metric_fu-4.3.1 spec/metric_fu/reporter_spec.rb
metric_fu-4.3.0 spec/metric_fu/reporter_spec.rb