Maki
Maki

Reputation: 913

testing rails engine generator with rspec

I create a simpe gem wich include a install generator, generator works fine but now I want to test it using rspec, I foud this gem, and try to test my generator, my spec code is:

require 'genspec'
require 'rosalie'

describe :install_generator do

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

rosalie is the name of may gem, now when I run it I got an error: /stuff/work/my_projects/rosalie/lib/rosalie/engine.rb:2:in `': uninitialized constant Rosalie::Rails (NameError)

my engine.rb code is:

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

anybody can help me with this problem?

Upvotes: 5

Views: 1298

Answers (2)

why
why

Reputation: 24851

You need add these code in your spec_helper.rb, and require the spec_helper in each spec.

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

Upvotes: 1

apneadiving
apneadiving

Reputation: 115511

You have to load your code before you include it somewhere.

Either require or autoload your main file.

Here is an example from my gem.

Upvotes: 2

Related Questions