使用rspec测试rails引擎生成器

Mak*_*aki 5 rubygems rspec ruby-on-rails

我创建了一个简单的宝石,包括一个安装生成器,生成器工作正常,但现在我想用rspec测试它,我发现这个 宝石,并尝试测试我的生成器,我的规范代码是:

require 'genspec'
require 'rosalie'

describe :install_generator do

  it "should generate model" do
    subject.should generate("message.rb")
  end
end
Run Code Online (Sandbox Code Playgroud)

rosalie是may gem的名字,现在当我运行它时出现错误:/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
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我解决这个问题?

apn*_*ing 2

您必须先加载代码,然后才能将其包含在某处。

需要或自动加载您的主文件。

这是我的宝石中的一个例子。