Are you looking for something like this
lambda { @audience.stats = 'Market Goblin' }.should raise_error
On 30/01/2008, at 1:48 PM, Andrew WC Brown wrote:
Trying to spec the following but don't know if I'm using the right
matcher.
How do I spec? Plz, sugar on tops.
Audience.stats
- should have a stats of 80 when passed a flux of 10
- should return an error when passed a string (ERROR - 1)
1)
TypeError in 'Audience.stats should return an error when passed a
string'
String can't be coerced into Fixnum
./audience.rb:11:in `*'
./audience.rb:11:in `stats='
./audience_spec.rb:29:
Finished in 0.006333 seconds
2 examples, 1 failure
monsterbox:spec andrew_wc_brown$
class Audience
attr_accessor :stats
def initialize(name = nil,value = nil)
@name ||= 'all'
@value ||= value
end
def stats=(flux)
@stats = @value * flux / 0.025
end
def market_share
"The Market share is for [EMAIL PROTECTED] at a high of [EMAIL PROTECTED]"
end
end
describe "Audience.stats" do
before :all do
@audience = Audience.new(nil,20)
end
it "should have a stats of 80 when passed a flux of 10" do
@audience.stats = 10
@audience.stats.should == 8000
end
it "should return an error when passed a string" do
@audience.stats = 'Market Goblin'
@audience.stats.should raise_error
end
end
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users