[rspec-users] Strange issue with the 'its' construct
David Chelimsky
dchelimsky at gmail.com
Thu May 20 13:56:31 EDT 2010
On May 20, 2010, at 11:49 AM, Tom Ten Thij wrote:
> The 'its' construct seems to not be working for me. I have narrowed it
> down to a basic example that I think should be working. Note that when I
> use a normal 'it' block with a subject in it, that works fine.
>
> Any insights would be welcome: http://gist.github.com/407789
>
> Cheers, Tom.
>
> == Below is just a copy of the content of the gist ==
>
>> : cat spec/controllers/simple_spec.rb
> require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
>
> describe HomeController do
> context "looking at an email" do
> subject do
> mail = TMail::Mail.new
> mail.from = "origin at example.com"
> mail
> end
>
> # This passes as expected.
> it "should have the correct from address" do
> subject.from.should == ['origin at example.com']
> end
>
> # I don't understand why this fails.
> its(:from) { should == ['origin at example.com'] }
> end
> end
>
>> : ./script/spec spec/controllers/simple_spec.rb -b
Please file a bug at https://rspec.lighthouseapp.com/projects/5645-rspec if there's not one already.
Thanks,
David
> .F
>
> 1)
> NoMethodError in 'HomeController looking at an email from should ==
> ["origin at example.com"]'
> undefined method `from' for #<HomeController:0x102bd7c40>
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/example/subject.rb:25:in
> `send'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/example/subject.rb:25:in
> `subject'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/example/subject.rb:91:in
> `should'
> ./spec/controllers/simple_spec.rb:14:
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/example/example_methods.rb:40:in
> `instance_eval'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/example/example_methods.rb:40:in
> `execute'
> /Users/tomtt/.rvm/rubies/ruby-1.8.7-p249/lib/ruby/1.8/timeout.rb:53:in
> `timeout'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/example/example_methods.rb:37:in
> `execute'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/example/example_group_methods.rb:214:in
> `run_examples'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/example/example_group_methods.rb:212:in
> `each'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/example/example_group_methods.rb:212:in
> `run_examples'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/example/example_group_methods.rb:103:in
> `run'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/runner/example_group_runner.rb:23:in
> `run'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/runner/example_group_runner.rb:22:in
> `each'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/runner/example_group_runner.rb:22:in
> `run'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/runner/options.rb:152:in
> `run_examples'
> /my/project/vendor/gems/rspec-1.3.0/lib/spec/runner/command_line.rb:9:in
> `run'
> ./script/spec:10:
>
> Finished in 0.031435 seconds
>
> 2 examples, 1 failure
>
> Attachments:
> http://www.ruby-forum.com/attachment/4745/simple_spec.rb
>
> --
> Posted via http://www.ruby-forum.com/.
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users
More information about the rspec-users
mailing list