From 5de07c194e85fa74e7d7f2be12e99cb9acad3ccc Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Sat, 9 Sep 2017 17:37:13 +0200 Subject: Validate postcode properly. Don't accept invalid postcodes, or postcodes containing invalid chars. --- spec/contact_spec.rb | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 spec/contact_spec.rb (limited to 'spec/contact_spec.rb') diff --git a/spec/contact_spec.rb b/spec/contact_spec.rb new file mode 100644 index 0000000..980626b --- /dev/null +++ b/spec/contact_spec.rb @@ -0,0 +1,29 @@ +require 'spec_helper' + +describe Contact do + let(:params) { create_contact_params } + + it "rejects empty postcodes" do + params.delete('postcode') + @contact = Contact.new(params) + expect(@contact.valid?).to be(false) + end + + it "rejects too short postcodes" do + params['postcode'] = '123' + @contact = Contact.new(params) + expect(@contact.valid?).to be(false) + end + + it "rejects too long postcodes" do + params['postcode'] = '12345' + @contact = Contact.new(params) + expect(@contact.valid?).to be(false) + end + + it "rejects postcodes wiht invalid chars" do + params['postcode'] = '123s' + @contact = Contact.new(params) + expect(@contact.valid?).to be(false) + end +end -- cgit v1.2.3