Je suis en train de créer une application à l'école et je rencontre cette erreur. En ce moment, l'application marche à travers a été commencé dans les rails 4.2.6, et je cours 5.0.0.1.Les tests échouent lors de la création d'un enregistrement dans Rails 5
L'erreur est:
Failures:
1) Post Creation can be created
Failure/Error: expect(@post).to be_valid
expected #<Post id: nil, date: "2016-12-20", rationale: "Anything", created_at: nil, updated_at: nil, user_id: nil> to be valid, but got errors: User must exist
# ./spec/models/post_spec.rb:10:in `block (3 levels) in <top (required)>'
Finished in 0.65569 seconds (files took 2.19 seconds to load)
10 examples, 1 failure
Failed examples:
rspec ./spec/models/post_spec.rb:9 # Post Creation can be created
Mon code est le suivant. J'ai comparé au repo sur le walk-through et ça correspond parfaitement. Qu'est-ce que je rate?
require 'rails_helper'
RSpec.describe Post, type: :model do
describe "Creation" do
before do
@post = Post.create(date: Date.today, rationale: "Anything")
end
it "can be created" do
expect(@post).to be_valid
end
it "cannot be created without a date and rationale" do
@post.date = nil
@post.rationale = nil
expect(@post).to_not be_valid
end
end
end
Vérifiez votre fichier 'test.log'; l'enregistrement n'a pas été stocké dans la base de données pour une raison quelconque et il est impossible de dire exactement pourquoi sans examiner le journal. – mudasobwa