Note that there are some explanatory texts on larger screens.

plurals
  1. POWhy do I get an ArgumentError when making RSpec assertions?
    text
    copied!<p>I'm trying to do something like this:</p> <pre><code>describe 'hi' do it 'should render the home page' do visit '/' page.driver.response.status.should eql 200 page.driver.response.content_type.should eql 'text/html' doc = Nokogiri::HTML(page.driver.response.body) div = doc.css('div#nav') div.length.should_not eql 0 end end </code></pre> <p>Everything works as expected without this line:</p> <pre><code>div.length.should_not eql 0 </code></pre> <p>With that line present, I get this error:</p> <pre><code>&lt;main&gt;:659:in `method_missing': wrong number of arguments (1 for 2) (ArgumentError) from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/metadata.rb:78:in `flatten' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/metadata.rb:78:in `full_description_for' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/metadata.rb:23:in `[]' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/metadata.rb:51:in `full_description_for' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/metadata.rb:23:in `[]' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/example.rb:13:in `block (2 levels) in delegate_to_metadata' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/formatters/base_text_formatter.rb:164:in `dump_failure' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/formatters/base_text_formatter.rb:19:in `block in dump_failures' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/formatters/base_text_formatter.rb:17:in `each' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/formatters/base_text_formatter.rb:17:in `each_with_index' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/formatters/base_text_formatter.rb:17:in `dump_failures' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/reporter.rb:74:in `block in notify' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/reporter.rb:73:in `each' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/reporter.rb:73:in `notify' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/reporter.rb:23:in `finish' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/reporter.rb:14:in `report' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/command_line.rb:21:in `run' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/runner.rb:80:in `run_in_process' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/runner.rb:69:in `run' from /Users/Work/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.7.1/lib/rspec/core/runner.rb:10:in `block in autorun' </code></pre> <p>This is really weird - div.length is a fixnum. This seems like a pretty basic assertion, I don't understand what I could be doing wrong here. Anyone got any pointers?</p> <p>I'm using RSpec 2.7.1, with RSpec-expectations 2.7.0. I have Ruby 1.9.2p290.</p> <p>Edit: A quick note - I'm requiring RSpec via Capybara.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload