<div><div>Trying to spec the following but don't know if I'm using the right matcher.</div><div>How do I spec? Plz, sugar on tops.</div><div><br class="webkit-block-placeholder"></div><div>Audience.stats</div><div>
- should have a stats of 80 when passed a flux of 10</div><div>- should return an error when passed a string (ERROR - 1)</div><div><br class="webkit-block-placeholder"></div><div>1)</div><div>TypeError in 'Audience.stats should return an error when passed a string'</div>
<div>String can't be coerced into Fixnum</div><div>./audience.rb:11:in `*'</div><div>./audience.rb:11:in `stats='</div><div>./audience_spec.rb:29:</div><div><br class="webkit-block-placeholder"></div><div>Finished in 0.006333 seconds</div>
<div><br class="webkit-block-placeholder"></div><div>2 examples, 1 failure</div><div>monsterbox:spec andrew_wc_brown$ </div><div><br class="webkit-block-placeholder"></div></div><div><br class="webkit-block-placeholder"></div>
<div><br class="webkit-block-placeholder"></div><div>class Audience</div><div> </div><div> attr_accessor :stats</div><div> </div><div> def initialize(name = nil,value = nil) </div><div> @name ||= 'all'</div>
<div> @value ||= value</div><div> end</div><div> </div><div> def stats=(flux)</div><div> @stats = @value * flux / 0.025</div><div> end</div><div><br class="webkit-block-placeholder"></div><div> def market_share</div>
<div> "The Market share is for #{@name} at a high of #{@stats}"</div><div> end</div><div> </div><div>end</div><div><br class="webkit-block-placeholder"></div><div>describe "Audience.stats" do</div>
<div> </div><div>before :all do</div><div> @audience = Audience.new(nil,20)</div><div>end</div><div> </div><div> it "should have a stats of 80 when passed a flux of 10" do</div><div> @audience.stats = 10</div>
<div> @audience.stats.should == 8000</div><div> end</div><div> </div><div> it "should return an error when passed a string" do</div><div> @audience.stats = 'Market Goblin'</div><div> @audience.stats.should raise_error</div>
<div> end</div><div>end</div>