Неинициализированная постоянная ошибка: Factory Girl

Uninitialized constant Production::POverview (NameError)
    from /Users/simon_zhu/.rvm/gems/ruby-2.1.0/gems/factory_girl-4.4.0/lib/factory_girl/syntax/default.rb:49:in `instance_eval'
    from /Users/simon_zhu/.rvm/gems/ruby-2.1.0/gems/factory_girl-4.4.0/lib/factory_girl/syntax/default.rb:49:in `run'
    from /Users/simon_zhu/.rvm/gems/ruby-2.1.0/gems/factory_girl-4.4.0/lib/factory_girl/syntax/default.rb:7:in `define'
    from /Users/simon_zhu/Documents/original_version_carmel/carmel/spec/factories/poverview.rb:1:in `<top (required)>'
    from /Users/simon_zhu/.rvm/gems/ruby-2.1.0/gems/factory_girl-4.4.0/lib/factory_girl/find_definitions.rb:20:in `block (2 levels) in find_definitions'
    from /Users/simon_zhu/.rvm/gems/ruby-2.1.0/gems/factory_girl-4.4.0/lib/factory_girl/find_definitions.rb:19:in `each'

У меня есть следующий код:

poverview.rb (фабрика)

FactoryGirl.define do
    factory :poverview, class: Production::POverview do
        name "test"
        status ["p", "d", "m"]
    end
end

p_overview_controller_spec.rb (spec)

require 'spec_helper'

describe Production::POverviewController do
  login_user
  # GET Request to pod_info
  describe 'GET pod_info' do
    before(:each) do
        @pods = Factory(:poverview)
        get 'show', :format => :json, :name => @pods.name
        get 'show', :format => :json, :status => @pods.status
    end


  it "should return the correct company when correct id is passed" do
    body = JSON.parse(response.body)

    for(pod in body[0])
        if(pod['name'].eql? @pod.name)
            @pod.status.should.include? pod['status']
        end
    end
  end

end

Я впервые пишу интеграционный тест для Factory Girl, и у меня есть эта неинициализированная постоянная ошибка.

Любые идеи, как решить эту проблему?

1 ответ

Также ваша тестовая настройка выглядит очень странно. Похоже, вы путаете интеграцию и тестирование контроллера.

Вот пост, чтобы вы начали. Я рекомендую сделать еще несколько исследований по тестированию в рельсах. https://semaphoreapp.com/blog/2014/02/11/rails-testing-antipatterns-controllers.html

Другие вопросы по тегам