2012-05-03 75 views
5

我創建了一個simpe gem,包括一個安裝發電機,發電機工作正常,但現在我想用rspec測試它,我想這gem,並嘗試測試我的發電機,我的規範代碼是:測試軌發動機發電機與rspec

require 'genspec' 
require 'rosalie' 

describe :install_generator do 

    it "should generate model" do 
    subject.should generate("message.rb") 
    end 
end 

羅莎莉是5月的寶石的名稱,現在當我運行它,我得到了一個錯誤: /stuff/work/my_projects/rosalie/lib/rosalie/engine.rb:2:in`':未初始化常量Rosalie :: Rails(NameError)

我的engine.rb代碼是:

module Rosalie 
    class Engine < Rails::Engine 

    initializer "rosalie.models.messageable" do 
     ActiveSupport.on_load(:active_record) do 
     include Rosalie::Models::Messageable 
     end 
    end 
    end 
end 

有人可以幫我解決這個問題嗎?

回答

1

您需要在您的spec_helper.rb添加這些代碼,並要求在每個規格的spec_helper。

require File.expand_path("../dummy/config/environment", __FILE__) 
require 'rspec/rails'