RSpec, Cucumber prosty przykład

Dopiero zaczynam zabawę z powyższymi, dostaje błąd dla nastepujacego scenariusza

Scenario: costam costam Then the user sign in count should be "0"
definicja kroku

Then /^the user sign in count should be "([^"]*)"$/ do |sign_in_count| @user.sign_in_count.should eq(sign_in_count) end
output:

[code] Then the user sign in count should be “0” # features/step_definitions/user_steps.rb:10

  expected "0"
       got 0
  
  (compared using ==)
   (RSpec::Expectations::ExpectationNotMetError)
  ./features/step_definitions/user_steps.rb:11:in `/^the user sign in count should be "([^"]*)"$/'
  features/user_descriptions.feature:11:in `Then the user sign in count should be "0"'[/code]

Myślałem że jako sign_in_count przekazywana jest sama wartość wewnątrz “” a tutaj wygląda że wraz z cudzysłowami ?

Tak:

Then /^the user sign in count should be "([^"]*)"$/ do |sign_in_count| @user.sign_in_count.should eq(sign_in_count.to_i) end
Lub tak:

Then /^the user sign in count should be "([^"]*)"$/ do |sign_in_count| @user.sign_in_count.to_s.should eq(sign_in_count) end
Pomoże?

dzięki, robi. czyli zawsze przy cyfrach trzeba w ten sposób testowac ?

no tak bo zawartość strony dostajesz jako String a nie jako Integer.