2011-11-16 1 views
0

私は古いRails 2.3.8に取り組んでいます。これには何のテストもなく、rspecを使用していくつかのテストを追加しようとしています。Rails 2.3.8機械工の未定義のメソッドは?

私はrspec 1.3.0 & 1.3.2をインストールし、ジェネレータスクリプトを実行しました。

私は上の指示に従っ:次は私が「

require 'machinist/active_record' 
require 'sham' 

そして

require File.expand_path(File.dirname(__FILE__) + "/blueprints") 

をspec_helper.rbに次の行を/spec/blueprints.rbするために追加 https://github.com/notahat/machinist/tree/1.0-maintenance

私のユーザーのための青写真を作成し、私は 'User.make!' (loginメソッド内で)私のスペックヘルパーに私はこのエラーを取得する:

NoMethodError in 'CategoriesController As a logged in user#index should render index' 
undefined method `make!' for #<Class:0x7f42b9deea10> 

は、ここに私のspec_helper方法である:

def login_user 
    user = User.make! 
    @request.session[:user_id] = user.id 
    @current_user ||= User.find_by_id(user.id) 
end 

私はRailsの2.xのアプリを触ってきましたので、それはしばらくしていますだから多分私はここで何かを逃している。

答えて

0

解決済み:

私はmakeを使用しないでください!機械工

のこの古いバージョンではすなわち、私はそれが私の青写真をロードするかどうかを確認するために機械工のために少しのテストを書いてしまったと私はそれほど複雑であるモデルを選択:1回の検証ではない10.

describe "machinist" do 
    it "should create a category" do 
    category = Category.make 
    category.name.should == "General" 
    end 
end 

これはうまくいきました。そのため、検証と小さな構文ミスが主な原因でした。

関連する問題