From 6c22d655c8ba04d98c76bb0693a9dfb545949f36 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Sun, 22 Dec 2019 21:35:32 +0100 Subject: [PATCH] Temporarily remove additional email validation on Spree::Order A new custom email validator class was added to Spree::Order, and currently it fails every time (breaking lots of specs). This ugly hack disables it for now. --- app/models/spree/order_decorator.rb | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/models/spree/order_decorator.rb b/app/models/spree/order_decorator.rb index 9023438eae..a11bab1707 100644 --- a/app/models/spree/order_decorator.rb +++ b/app/models/spree/order_decorator.rb @@ -30,6 +30,14 @@ Spree::Order.class_eval do validate :disallow_guest_order attr_accessible :order_cycle_id, :distributor_id, :customer_id + # Removes Spree 2.1 additional email validation (currently failing every time) + # See: spree/core/validators/email.rb + _validate_callbacks.each do |callback| + if callback.raw_filter.respond_to? :attributes + callback.raw_filter.attributes.delete :email + end + end + before_validation :associate_customer, unless: :customer_id? before_validation :ensure_customer, unless: :customer_is_valid?