From 861726200c74e6d68741ebe88bcfcd8b1f89aac0 Mon Sep 17 00:00:00 2001 From: Pau Perez Date: Fri, 26 Jun 2020 18:17:07 +0200 Subject: [PATCH] Move localize_number from decorator to model --- app/models/spree/payment.rb | 3 +++ app/models/spree/payment_decorator.rb | 4 ---- spec/models/spree/payment_original_spec.rb | 4 ++++ spec/models/spree/payment_spec.rb | 4 ---- 4 files changed, 7 insertions(+), 8 deletions(-) diff --git a/app/models/spree/payment.rb b/app/models/spree/payment.rb index 82276d427b..6804c9fcd4 100644 --- a/app/models/spree/payment.rb +++ b/app/models/spree/payment.rb @@ -1,6 +1,9 @@ module Spree class Payment < ActiveRecord::Base include Spree::Payment::Processing + extend Spree::LocalizedNumber + + localize_number :amount IDENTIFIER_CHARS = (('A'..'Z').to_a + ('0'..'9').to_a - %w(0 1 I O)).freeze diff --git a/app/models/spree/payment_decorator.rb b/app/models/spree/payment_decorator.rb index 065b5ca99d..0ccca1c4d4 100644 --- a/app/models/spree/payment_decorator.rb +++ b/app/models/spree/payment_decorator.rb @@ -2,14 +2,10 @@ require 'spree/localized_number' module Spree Payment.class_eval do - extend Spree::LocalizedNumber - delegate :line_items, to: :order has_one :adjustment, as: :source, dependent: :destroy - localize_number :amount - # We bypass this after_rollback callback that is setup in Spree::Payment # The issues the callback fixes are not experienced in OFN: # if a payment fails on checkout the state "failed" is persisted correctly diff --git a/spec/models/spree/payment_original_spec.rb b/spec/models/spree/payment_original_spec.rb index a29d8ccee6..7d3385b3da 100644 --- a/spec/models/spree/payment_original_spec.rb +++ b/spec/models/spree/payment_original_spec.rb @@ -40,6 +40,10 @@ describe Spree::Payment do allow(payment).to receive(:record_response) end + context "extends LocalizedNumber" do + it_behaves_like "a model using the LocalizedNumber module", [:amount] + end + context 'validations' do it "returns useful error messages when source is invalid" do payment.source = Spree::CreditCard.new diff --git a/spec/models/spree/payment_spec.rb b/spec/models/spree/payment_spec.rb index 55586d368b..a0e0fd4ff3 100644 --- a/spec/models/spree/payment_spec.rb +++ b/spec/models/spree/payment_spec.rb @@ -108,9 +108,5 @@ module Spree end end end - - context "extends LocalizedNumber" do - it_behaves_like "a model using the LocalizedNumber module", [:amount] - end end end