On Sun, Aug 28, 2011 at 10:29 AM, Ezequiel Schwartzman <li...@ruby-forum.com > wrote:
> I'm testing the validation of emails so I did the following: > > it 'should only allow domains names with numbers, letters, dots or > dashes' do > (%-\\|!"#$\%&/()=?¡;,:{}+'<>°+*[]"¬~^@áéíóú´`_ -).each_char do > |c| > Factory.build(:user, :email => > "zequez@gm#{c}ail.com").should_not be_valid > end > end > > Also this: > > ['1...@1.com', > '1-...@ar.com', > 'zequez...@com.com', > 'z_e_q_u_...@t-p.9.asd.g.r.t.a.c.com', > 'zambu...@t-p.9.asd.g.r.t.a.c.com', > 'zez...@com.ar', > 'zzzzzzzz...@asd.com', > 'z@q.z', > 'y...@zequez.com', > 'ca..--__ca..--__ca..--...@zequez.com'].each do |email| > it "should allow #{email} as a valid email" do > Factory.build(:user, :email => email).should be_valid > end > end > > And many similar things... > > Is that bad? > In my book this is fine.... you have a list of specific examples and it is clear what you are doing. I might go further and make sure that in fact it is the email which is valid/invalid vs just checking the model (at least in the case if you are checking what should be invalid data) as another field could be the invalid one. I also like shoulda as you get helpers like: it { should allow_value('david.n_k...@gmail.com.mx').for(:email) } it { should_not allow_value('david nathan kahn at gmail dot com').for(:email) } > > -- > Posted via http://www.ruby-forum.com/. > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To post to this group, send email to rubyonrails-talk@googlegroups.com. > To unsubscribe from this group, send email to > rubyonrails-talk+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/rubyonrails-talk?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.