Guest User

Untitled

a guest
Jun 19th, 2018
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.89 KB | None | 0 0
  1. require 'spec_helper'
  2. #Failures:
  3. # 1) User quests association when fail is true, it should deduct points for experience
  4. # Failure/Error: @user.quests[1].fail.should == true
  5. # expected: true,
  6. # got: false (using ==)
  7. # ./spec/models/user_spec.rb:79:in `block (3 levels) in <top (required)>'
  8.  
  9. describe User do
  10. before(:each) do
  11. @attr = {
  12. :username => "kiba",
  13. :email => "hackerkiba@gmail.com",
  14. :password => "boo33",
  15. :password_confirmation => "boo33",
  16. :experience => 0
  17. }
  18. end
  19.  
  20. describe "quests association" do
  21. before(:each) do
  22. @user = User.create(@attr)
  23. @q2 = Factory(:quest,:user => @user, :deadline => Date.tomorrow + 3)
  24. @q1 = Factory(:quest,:user => @user, :deadline => Date.tomorrow)
  25. @attr = Factory(:quest)
  26. end
  27.  
  28. it "should have username and such" do
  29. @user.username.should == "kiba"
  30. end
  31.  
  32. it "should have a quests attribute" do
  33. @user.should respond_to(:quests)
  34. end
  35.  
  36. it "should have the quests in the right order" do
  37. @user.quests.should == [@q2,@q1]
  38. end
  39.  
  40. it "should destory associated quests" do
  41. @user.destroy()
  42. [@q1,@q2].each do |quest|
  43. Quest.find_by_id(quest.id).should be_nil
  44. end
  45. end
  46.  
  47. it "when completed should increase users experience" do
  48. @q1.should == @user.quests[1]
  49. @q1.complete()
  50. @q1.save()
  51. @q1.completed.should == true
  52. @user.reload()
  53. @user.quests[1].completed.should == true
  54. @user.calculate()
  55. @user.experience.should == 24
  56. end
  57.  
  58. it "when fail is true, it should deduct points for experience" do
  59. @q1.should == @user.quests[1]
  60. @q1.deadline = Date.yesterday
  61. @q1.check_deadline()
  62. @q1.fail.should == true
  63. @q1.save()
  64. @user.reload()
  65. @user.quests[1].fail.should == true #Problem area.
  66. @user.calculate()
  67. @user.experience.should == -24
  68. end
  69. end
  70.  
  71. end
Add Comment
Please, Sign In to add comment