Advertisement
Guest User

Untitled

a guest
Jul 7th, 2015
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.13 KB | None | 0 0
  1. class User < ActiveRecord::Base
  2. has_many :friendships
  3. has_many :friends, :through => :friendships
  4. has_many :plans
  5. has_many :memberships, class_name: "PlanMemebership"
  6. has_many :notes
  7. has_many :replies, class_name: "NoteReply"
  8. has_many :upvotes, class_name: "NoteUpvote"
  9.  
  10. validates :first_name, presence: true
  11. validates :last_name, presence: true
  12. validates :email, presence: true
  13. validates :facebook_user_id, presence: true, uniqueness: true
  14. validates :facebook_user_token, presence: true, uniqueness: true
  15. validates :token, presence: true, uniqueness: true
  16. validates :birthday, presence: true
  17. validates :gender, presence: true
  18.  
  19. def name
  20. first_name + " " + last_name
  21. end
  22.  
  23. end
  24.  
  25. require 'rails_helper'
  26.  
  27. describe User, :type => :model do
  28.  
  29. context "valid Factory" do
  30. it "has a valid factory" do
  31. expect(FactoryGirl.build(:user)).to be_valid
  32. end
  33. end
  34.  
  35. context "validations" do
  36. it { should validate_presence_of :first_name }
  37. it { should validate_presence_of :last_name }
  38. it { should validate_presence_of :email }
  39. it { should validate_presence_of :birthday }
  40. it { should validate_presence_of :gender }
  41. it { should validate_presence_of :facebook_user_id }
  42. it { should validate_presence_of :facebook_user_token }
  43.  
  44. context "uniqueness" do
  45. before { create(:user) }
  46. it { should validate_uniqueness_of :facebook_user_id }
  47. it { should validate_uniqueness_of :facebook_user_token }
  48. it { should validate_uniqueness_of :token }
  49. end
  50. end
  51. end
  52.  
  53. FactoryGirl.define do
  54. sequence(:facebook_id) { |n| "#{n}1004453333331" }
  55. sequence(:facebook_user_token) { |n| "#{n}CAA" + ("X" * 216) }
  56.  
  57. factory :user do
  58. first_name "Ralph"
  59. last_name "Robot"
  60. email "ralph@thoughtbot.com"
  61. facebook_user_id { generate(:facebook_id) }
  62. facebook_user_token
  63.  
  64. birthday { Date.current }
  65. gender "Male"
  66.  
  67. token { Token.new.generate }
  68. end
  69.  
  70. end
  71.  
  72. Token
  73. #generate
  74. returns a 20-byte token
  75.  
  76. User
  77. valid Factory
  78. has a valid factory
  79. validations
  80. example at ./spec/models/user_spec.rb:13 (FAILED - 1)
  81. example at ./spec/models/user_spec.rb:14 (FAILED - 2)
  82. example at ./spec/models/user_spec.rb:15 (FAILED - 3)
  83. example at ./spec/models/user_spec.rb:16 (FAILED - 4)
  84. example at ./spec/models/user_spec.rb:17 (FAILED - 5)
  85. example at ./spec/models/user_spec.rb:18 (FAILED - 6)
  86. example at ./spec/models/user_spec.rb:19 (FAILED - 7)
  87. uniqueness
  88. example at ./spec/models/user_spec.rb:23 (FAILED - 8)
  89. example at ./spec/models/user_spec.rb:24 (FAILED - 9)
  90. example at ./spec/models/user_spec.rb:25 (FAILED - 10)
  91.  
  92. Failures:
  93.  
  94. 1) User validations
  95. Failure/Error: it { should validate_presence_of :first_name }
  96. NoMethodError:
  97. undefined method `validate_presence_of' for #<RSpec::ExampleGroups::User::Validations:0x007fc255f7fb88>
  98. # ./spec/models/user_spec.rb:13:in `block (3 levels) in <top (required)>'
  99.  
  100. 2) User validations
  101. Failure/Error: it { should validate_presence_of :last_name }
  102. NoMethodError:
  103. undefined method `validate_presence_of' for #<RSpec::ExampleGroups::User::Validations:0x007fc255e9fad8>
  104. # ./spec/models/user_spec.rb:14:in `block (3 levels) in <top (required)>'
  105.  
  106. 3) User validations
  107. Failure/Error: it { should validate_presence_of :email }
  108. NoMethodError:
  109. undefined method `validate_presence_of' for #<RSpec::ExampleGroups::User::Validations:0x007fc255ded568>
  110. # ./spec/models/user_spec.rb:15:in `block (3 levels) in <top (required)>'
  111.  
  112. 4) User validations
  113. Failure/Error: it { should validate_presence_of :birthday }
  114. NoMethodError:
  115. undefined method `validate_presence_of' for #<RSpec::ExampleGroups::User::Validations:0x007fc255d65398>
  116. # ./spec/models/user_spec.rb:16:in `block (3 levels) in <top (required)>'
  117.  
  118. 5) User validations
  119. Failure/Error: it { should validate_presence_of :gender }
  120. NoMethodError:
  121. undefined method `validate_presence_of' for #<RSpec::ExampleGroups::User::Validations:0x007fc255cb7888>
  122. # ./spec/models/user_spec.rb:17:in `block (3 levels) in <top (required)>'
  123.  
  124. 6) User validations
  125. Failure/Error: it { should validate_presence_of :facebook_user_id }
  126. NoMethodError:
  127. undefined method `validate_presence_of' for #<RSpec::ExampleGroups::User::Validations:0x007fc255c356f8>
  128. # ./spec/models/user_spec.rb:18:in `block (3 levels) in <top (required)>'
  129.  
  130. 7) User validations
  131. Failure/Error: it { should validate_presence_of :facebook_user_token }
  132. NoMethodError:
  133. undefined method `validate_presence_of' for #<RSpec::ExampleGroups::User::Validations:0x007fc255b86a40>
  134. # ./spec/models/user_spec.rb:19:in `block (3 levels) in <top (required)>'
  135.  
  136. 8) User validations uniqueness
  137. Failure/Error: before { create(:user) }
  138. ActiveRecord::RecordNotUnique:
  139. PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_users_on_email"
  140. DETAIL: Key (email)=(ralph@thoughtbot.com) already exists.
  141. : INSERT INTO "users" ("first_name", "last_name", "email", "facebook_user_id", "facebook_user_token", "birthday", "gender", "token", "created_at", "updated_at") VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) RETURNING "id"
  142. # ./spec/models/user_spec.rb:22:in `block (4 levels) in <top (required)>'
  143.  
  144. 9) User validations uniqueness
  145. Failure/Error: before { create(:user) }
  146. ActiveRecord::RecordNotUnique:
  147. PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_users_on_email"
  148. DETAIL: Key (email)=(ralph@thoughtbot.com) already exists.
  149. : INSERT INTO "users" ("first_name", "last_name", "email", "facebook_user_id", "facebook_user_token", "birthday", "gender", "token", "created_at", "updated_at") VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) RETURNING "id"
  150. # ./spec/models/user_spec.rb:22:in `block (4 levels) in <top (required)>'
  151.  
  152. 10) User validations uniqueness
  153. Failure/Error: before { create(:user) }
  154. ActiveRecord::RecordNotUnique:
  155. PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_users_on_email"
  156. DETAIL: Key (email)=(ralph@thoughtbot.com) already exists.
  157. : INSERT INTO "users" ("first_name", "last_name", "email", "facebook_user_id", "facebook_user_token", "birthday", "gender", "token", "created_at", "updated_at") VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) RETURNING "id"
  158. # ./spec/models/user_spec.rb:22:in `block (4 levels) in <top (required)>'
  159.  
  160. Finished in 0.13486 seconds (files took 3.99 seconds to load)
  161. 12 examples, 10 failures
  162.  
  163. Failed examples:
  164.  
  165. rspec ./spec/models/user_spec.rb:13 # User validations
  166. rspec ./spec/models/user_spec.rb:14 # User validations
  167. rspec ./spec/models/user_spec.rb:15 # User validations
  168. rspec ./spec/models/user_spec.rb:16 # User validations
  169. rspec ./spec/models/user_spec.rb:17 # User validations
  170. rspec ./spec/models/user_spec.rb:18 # User validations
  171. rspec ./spec/models/user_spec.rb:19 # User validations
  172. rspec ./spec/models/user_spec.rb:23 # User validations uniqueness
  173. rspec ./spec/models/user_spec.rb:24 # User validations uniqueness
  174. rspec ./spec/models/user_spec.rb:25 # User validations uniqueness
  175.  
  176. require 'shoulda/matchers'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement