Note that there are some explanatory texts on larger screens.

plurals
  1. PORspec doesn't see my model Class. uninitialized constant error
    primarykey
    data
    text
    <p>I'm writing tests on Rspec for my models in Ruby on Rails application. And I receive this error while starting 'rspec spec' </p> <pre><code>command: /spec/models/client_spec.rb:4:in `&lt;top (required)&gt;': uninitialized constant Client (NameError) </code></pre> <p>I use Rails 4.0.0 and Ruby 2.0.0</p> <p>Here is my client_spec.rb:</p> <pre><code>require 'spec_helper' describe Client do it 'is invalid without first_name', :focus =&gt; true do client = Client.new client.should_not be_valid end end </code></pre> <p>And Gemfile:</p> <pre><code>source 'https://rubygems.org' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' gem 'rails', '4.0.0.rc1' # Use sqlite3 as the database for Active Record gem 'sqlite3' # Use SCSS for stylesheets gem 'sass-rails', '~&gt; 4.0.0.rc1' # Use Uglifier as compressor for JavaScript assets gem 'uglifier', '&gt;= 1.3.0' # Use CoffeeScript for .js.coffee assets and views gem 'coffee-rails', '~&gt; 4.0.0' # gem 'therubyracer', platforms: :ruby # Use jquery as the JavaScript library gem 'jquery-rails' # Turbolinks makes following links in your web application faster. Read more: gem 'turbolinks' gem 'jbuilder', '~&gt; 1.0.1' group :development do gem 'rspec-rails' end group :doc do # bundle exec rake doc:rails generates the API under doc/api. gem 'sdoc', require: false end group :test do gem 'rspec-rails' gem 'factory_girl_rails' gem 'database_cleaner' end </code></pre> <p>And at last client.rb (ROR Model and Class):</p> <pre><code>class Client &lt; ActiveRecord::Base has_many :cars has_many :orders has_one :client_status has_one :discount_plan, through: :client_status validates :email, format: { with: /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})\z/, :message =&gt; "Only emails allowed", :multiline =&gt; true } validates :email, presence: true, if: "phone.nil?" #validates :phone, presence: true, if: "email.nil?" validates :last_name, :first_name, presence: true validates :last_name, :first_name, length: { minimum: 2, maximum: 500, wrong_length: "Invalid length", too_long: "%{count} characters is the maximum allowed", too_short: "must have at least %{count} characters" } end </code></pre> <p>If it'd be useful my spec_helper.rb file:</p> <pre><code># This file was generated by the `rspec --init` command. Conventionally, all # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`. # Require this file using `require "spec_helper"` to ensure that it is only # loaded once. # # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration RSpec.configure do |config| config.treat_symbols_as_metadata_keys_with_true_values = true config.run_all_when_everything_filtered = true config.filter_run :focus # Run specs in random order to surface order dependencies. If you find an # order dependency and want to debug it, you can fix the order by providing # the seed, which is printed after each run. # --seed 1234 config.order = 'random' #config.use_transactional_fixtures = false config.before(:suite) do DatabaseCleaner.strategy = :transaction DatabaseCleaner.clean_with(:truncation) end config.before(:each) do DatabaseCleaner.start end config.after(:each) do DatabaseCleaner.clean end end </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload