在Rails中创建和测试默认记录

时间:2009-09-23 19:21:06

标签: ruby-on-rails testing migration

我正在为我的网站创建用户身份验证系统。我想添加一个默认用户,这样如果我创建一个新站点,或者重置数据库,我仍然可以登录(并更改默认用户详细信息)。

我在迁移中有以下代码。所有这些似乎都适用于开发数据库,​​但是当测试默认用户时,我添加的内容将被删除,并且加载来自fixture的数据。有没有办法为此添加单元测试?

class CreateUsers < ActiveRecord::Migration
  def self.up
    create_table :users do |t|
      t.string :name
      t.string :hashed_password
      t.string :salt

      t.timestamps
    end

    User.add_user("mike", "password")
  end

  def self.down
    drop_table :users
  end
end

1 个答案:

答案 0 :(得分:2)

我强烈建议在custom rake task内部进行此类“种子数据”,并在正常的单元测试装置中使用不同的数据。