Created
May 15, 2016 15:56
-
-
Save vokshirg/c57745c45cab0f41eac1789b19c46a86 to your computer and use it in GitHub Desktop.
Fail with answer's specs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Answer < ActiveRecord::Base | |
belongs_to :question | |
belongs_to :user | |
validates :body, :question_id, :user_id, presence: true | |
default_scope { order("right_answer DESC").order("created_at DESC") } | |
def is_right_answer | |
self.question.answers.where("right_answer = ?", true).update_all("right_answer = false") | |
self.update(right_answer: true) | |
end | |
def not_right_answer | |
self.update(right_answer: false) | |
end | |
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
context "executes methods correctly" do | |
context "#is_right_answer" do | |
before { | |
@qra = question_ra | |
@qra.answers.first.is_right_answer | |
@qra.answers.reload | |
@qra.reload | |
# raise @qra.answers.first.inspect | |
} | |
it { expect(question_ra.answers.first.right_answer).to eq true } | |
it { expect(question_ra.answers.last.right_answer).to eq false } | |
it "right answer of answer's question_ra is equal answer " do | |
# raise question_ra.inspect | |
expect(question_ra.right_answer).to eq(question_ra.answers.first) | |
end | |
end | |
end | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Failures: | |
1) Answer public instance methods executes methods correctly #is_right_answer should eq true | |
Failure/Error: it { expect(question_ra.answers.first.right_answer).to eq true } | |
expected: true | |
got: false | |
(compared using ==) | |
# ./spec/models/answer_spec.rb:35:in `block (5 levels) in <top (required)>' | |
2) Answer public instance methods executes methods correctly #is_right_answer right answer of answer's question_ra is equal answer | |
Failure/Error: expect(question_ra.right_answer).to eq(question_ra.answers.first) | |
expected: #<Answer id: 1383, body: "Text of answer body #9", question_id: 736, created_at: "2016-05-15 15:54:58", updated_at: "2016-05-15 15:54:58", user_id: 2146, right_answer: false> | |
got: nil | |
(compared using ==) | |
# ./spec/models/answer_spec.rb:40:in `block (5 levels) in <top (required)>' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment