NameError: uninitialized constant Faker ::

Before(:all) do puts "HELLO ALL :D" end 

I have some problems with my code:

/spec/factories.rb

 require 'faker' FactoryGirl.define do factory :booking_error do booking_id { Faker::Number.number(3).to_i } error_type_cd BookingError.error_types.values.shuffle.first process_name Enums::FlightEnum::PROCESSES.keys.shuffle.first description "DESCRIPTION" old_value "OLD_STRING" new_value "NEW_STRING" end end 

/spec/models/booking_error_spec.rb

 require 'spec_helper' describe BookingError do before(:all) do @booking_error = FactoryGirl.build(:booking_error) @booking_error_types = BookingError.error_types end it 'Validating BookingError save.' do @booking_error.save.should be_true end end 

Gemfile

 source 'https://rubygems.org' gem 'rails', '3.2.13' gem 'mysql2' , '0.3.11' gem 'devise' , '2.2.0.rc' gem 'devise-encryptable' , '0.1.1' gem 'unicorn' , '4.5.0' gem 'kaminari' , '0.14.1' gem 'memcache-client' , '1.8.5' gem 'simple_enum' , '1.6.4' gem 'resque' , '1.23.0' , :require => "resque/server" gem 'resque-logger' , '0.1.0' gem 'resque-workers-lock' gem 'whenever' , '0.8.1' , :require => false gem 'httparty' , '0.9.0' gem 'newrelic_rpm' , '3.6.1.88' gem 'cancan' , '1.6.8' gem 'rolify' , '3.2.0' gem 'json-schema' , '1.1.1' gem 'faker' , '1.1.2' gem 'ruby-enum' , '0.2.1' gem 'mail' , '2.5.4' gem 'daemons-rails' group :develop, :test do gem 'capistrano' , '2.13.5' gem 'capistrano-unicorn' , '0.1.6' , :require => false gem 'capistrano-resque' , '~> 0.1.0' , :require => false gem 'rvm-capistrano' , '1.2.7' gem 'capistrano-ext' gem 'rspec-rails' , '2.12.0' gem 'debugger' , '1.5.0' gem 'thin' , '1.5.0' gem 'annotate' , '2.5.0' gem 'factory_girl_rails' , '4.1.0' gem 'yard' , '0.8.5.2' end # Gems used only for assets and not required # in production environments by default. group :assets do gem 'therubyracer' , '0.10.2' gem 'coffee-rails' , '3.2.2' gem 'uglifier' , '1.3.0' gem 'twitter-bootstrap-rails' , '2.1.9' gem 'sass' , '3.2.4' gem 'jquery-ui-rails' , '3.0.0' gem 'less-rails' , '2.2.6' end gem 'jquery-rails' , '2.1.4' 

When I ran:

 $ rspec spec/models/booking_error_spec.rb 

I get an error in the header:

 NameError: uninitialized constant Faker::Number 
+7
ruby ruby-on-rails factory rspec factory-bot
source share
1 answer

The number was not in Faker in the version you are using (1.1.2). Upgrade to version 1.2.0 and it will work.

+11
source share

All Articles