On Wed, Jan 14, 2009 at 7:46 PM, James Byrne <[email protected]> wrote:
> Rails 2.2.2 > Cucumber 0.1.15 > SQLite3 > > I have this migration for the User model: > > class CreateUsers < ActiveRecord::Migration > def self.up > create_table :users do |t| > ... > t.string :sms_address > t.boolean :user_administrator, :default => false, > :null => false > t.string :username, :null => false > ... > > I see this in the DB schema: > > CREATE TABLE "users" ( > "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, > ... > "sms_address" varchar(255), > "user_administrator" boolean DEFAULT 'f' NOT NULL, > "username" varchar(255) NOT NULL, > ... > > And in the console I see this: > > >> myuser=User.new > => #<User id: nil, crypted_password: nil, current_login_at: nil, > current_login_ip: nil, email: nil, last_login_at: nil, last_login_ip: > nil, last_request_at: nil, login_count: nil, name_last: nil, name_first: > nil, name_middle: nil, openid_identifier: nil, password_salt: nil, > perishable_token: nil, persistence_token: nil, single_access_token: nil, > sms_address: nil, user_administrator: false, username: nil, created_at: > nil, updated_at: nil> > ?> > >> y myuser.attributes.sort > --- > ... > - > - - sms_address > - > - - updated_at > - > - - user_administrator > - false > - - username > - > => nil > > So, as far as I can see user_administrator is an attribute of users. > > However, when I have this step defintion: > > When /user named "(.*)" is an administrator/ do |name| > my_user = User.find_by_username!(name) > my_user.user_administrator > end > > Then I see this error: > > And the user named "newuser" is an administrator # > features/app/models/users/step_definitions/user_steps.rb:24 > undefined method `user_administrator' for #<User:0x2ac26fa83e80> > (NoMethodError) > > > /usr/lib64/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/attribute_methods.rb:260:in > `method_missing' > ./features/app/models/users/step_definitions/user_steps.rb:26:in > `And /user named "(.*)" is an administrator/' > features/app/models/users/user.feature:29:in `And the user named > "newuser" is an administrator' > > > Have I misspelled something somewhere and just cannot see it? what is > causing this? Did you migrate your test db? rake features does that for you, but plain cucumber doesn't Aslak > > -- > Posted via http://www.ruby-forum.com/. > _______________________________________________ > rspec-users mailing list > [email protected] > http://rubyforge.org/mailman/listinfo/rspec-users >
_______________________________________________ rspec-users mailing list [email protected] http://rubyforge.org/mailman/listinfo/rspec-users
