Guest User

Untitled

a guest
Nov 23rd, 2017
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.32 KB | None | 0 0
  1. class Members < ActiveRecord::Base
  2. validates_presence_of :email, if: :is_user?
  3. validates_presence_of :first_name, if: :is_user?
  4. validates_presence_of :last_name, if: :is_user?
  5.  
  6. def is_user?
  7. :is_user
  8. end
  9. end
  10.  
  11. if :is_user
  12. puts "will always happen" # this will be printed
  13. end
  14.  
  15. describe "validations" do
  16. context "member is a user" do
  17. subject { Member.new(is_user: true) }
  18.  
  19. it "validates presence of email" do
  20. subject.valid?
  21. expect(subject.errors["email"]).to include("can't be blank")
  22. end
  23. end
  24.  
  25. context "member is not an user" do
  26. subject { Member.new(is_user: false) }
  27.  
  28. it "doesn't require fields to have info" do
  29. subject.valid?
  30. expect(subject.errors["email"]).to_not include("can't be blank")
  31. expect(subject.errors["first_name"]).to_not include("can't be blank")
  32. expect(subject.errors["last_name"]).to_not include("can't be blank")
  33. end
  34. end
  35. end
  36.  
  37. context "if user" do<br />
  38. before { subject.stub(:is_user?) { true } }<br />
  39. it { should validate_presence_of(:name) }<br />
  40. it { should validate_presence_of(:email) }<br />
  41. end
  42.  
  43. context "if not user" do<br />
  44. before { subject.stub(:is_user?) { false } }<br />
  45. it { should_not validate_presence_of(:name) }<br />
  46. it { should validate_presence_of(:email) }<br />
  47. end
Add Comment
Please, Sign In to add comment