Sha256: f71099525d4b314193e72cb1aec93f3041886d11fbe56d2e6db9039f61b69990

Contents?: true

Size: 1.45 KB

Versions: 28

Compression:

Stored size: 1.45 KB

Contents

#!/usr/bin/env rspec

require 'spec_helper'
require 'mcollective/aggregate/average'

module MCollective
  class Aggregate
    describe Average do
      describe "#startup_hook" do
        it "should set the correct result hash" do
          result = Average.new(:test, [], "%d", :test_action)
          result.result.should == {:value => 0, :type => :numeric, :output => :test}
          result.aggregate_format.should == "%d"
        end

        it "should set a defauly aggregate_format if one isn't defined" do
          result = Average.new(:test, [], nil, :test_action)
          result.aggregate_format.should == "Average of test: %f"
        end
      end

      describe "#process_result" do
        it "should add the reply value to the result hash" do
          average = Average.new([:test], [], "%d", :test_action)
          average.process_result(1, {:test => 1})
          average.result[:value].should == 1
        end
      end

      describe "#summarize" do
        it "should calculate the average and return a result class" do
          result_obj = mock
          result_obj.stubs(:new).returns(:success)

          average = Average.new([:test], [], "%d", :test_action)
          average.process_result(10, {:test => 10})
          average.process_result(20, {:test => 20})
          average.stubs(:result_class).returns(result_obj)
          average.summarize.should == :success
          average.result[:value].should == 15
        end
      end
    end
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
mcollective-client-2.12.5 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.12.4 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.12.3 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.12.1 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.12.0 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.10.6 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.11.4 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.11.3 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.11.2 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.11.1 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.11.0 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.10.4 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.10.3 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.10.2 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.10.1 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.10.0 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.8.7 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.8.5 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.8.8 spec/unit/mcollective/aggregate/average_spec.rb
mcollective-client-2.8.6 spec/unit/mcollective/aggregate/average_spec.rb