diff --git a/lib/spree/core/product_duplicator.rb b/lib/spree/core/product_duplicator.rb index 82837bf3a6..7523af9c95 100644 --- a/lib/spree/core/product_duplicator.rb +++ b/lib/spree/core/product_duplicator.rb @@ -11,7 +11,7 @@ module Spree def duplicate new_product = duplicate_product - new_product.save! + new_product.save new_product end diff --git a/spec/models/spree/product_spec.rb b/spec/models/spree/product_spec.rb index 993b1cb833..1b2ba0de9e 100644 --- a/spec/models/spree/product_spec.rb +++ b/spec/models/spree/product_spec.rb @@ -11,10 +11,18 @@ module Spree context '#duplicate' do it 'duplicates product' do clone = product.duplicate + + expect(clone).to be_persisted expect(clone.name).to eq 'COPY OF ' + product.name expect(clone.sku).to eq "" expect(clone.image).to eq product.image end + + it 'fails to duplicate the product' do + pending 'test for all the use cases by which the +product.save+ would return false.' + clone = product.duplicate + expect(clone).not_to be_persisted + end end context "product has variants" do