Ive sta seguendo this introduttivo al test di Rails e Ive si imbattono in un problema a cui non riesco a trovare la soluzione. Ho molta familiarità con Rails ma questa è la mia prima incursione nei test.Rails 3.2, RSpec, Factory Girl: NameError: costante non inizializzata Factory
In ogni caso, ho un test del modello molto semplice, nemmeno completamente implementato e quando provo a eseguire rspec spec/models/admin_spec.rb
. Ottengo il seguente errore nel Admin has a valid factory
riga (codice completo di seguito)
Admin has a valid factory
Failure/Error: Factory.create(:admin).should be_valid
NameError:
uninitialized constant Factory
# ./spec/models/admin_spec.rb:6:in `block (2 levels) in <top (required)>'
presumo factorygirl isnt di essere caricati per qualche ragione, ma ho avuto l'impressione che dovrebbe essere caricato automaticamente. Di seguito è riportato il codice completo dal mio Gemfile, /spec/models/admin_spec.rb e /spec/factories/admins.rb
Grazie molto per il vostro aiuto
Gemfile
source 'https://rubygems.org'
gem 'rails', '3.2.2'
gem 'mysql2'
gem 'jquery-rails'
gem 'haml'
gem 'bcrypt-ruby', :require => 'bcrypt'
gem 'bootstrap-sass', '~> 2.0.2'
gem 'capistrano'
gem 'json'
gem "paperclip", '~>3.0'
gem 'airbrake'
gem 'acts_as_list'
gem 'nested_form', :git => 'https://github.com/ryanb/nested_form.git'
gem 'bootstrap-wysihtml5-rails'
gem 'will_paginate', '~> 3.0'
gem 'bootstrap-will_paginate'
gem 'thinking-sphinx', '2.0.10'
gem 'sass-rails', '~> 3.1'
gem 'coffee-rails'
gem 'uglifier'
# gem 'compass'
group :development do
gem 'awesome_print'
gem 'wirble'
end
group :development, :test do
gem 'rspec-rails'
gem 'factory_girl_rails'
end
group :production do
gem 'execjs'
gem 'therubyracer'
end
group :test do
# Pretty printed test output
gem 'turn', :require => false
gem 'faker'
gem 'capybara'
gem 'guard-rspec'
gem 'launchy'
end
/spec/factories/admin.rb
require 'faker'
FactoryGirl.define do
factory :admin do |f|
f.name Faker::Name.name
f.email Faker::Internet.email
end
end
/spec/mo dels/admin_spec.rb
require 'spec_helper'
describe Admin do
it "has a valid factory" do
Factory.create(:admin).should be_valid
end
it "is invalid without a name"
it "is invalid without an email"
end
ahhh * sigh *. Haha, grazie molte. Ho trovato un risultato nella pagina per "errore di fabbrica costante non inizializzato" ma non ho letto abbastanza vicino. Ho avuto la sensazione che sarebbe stato qualcosa di semplice. Grazie ancora. – chrisgooley