Sha256: b7d118124c79c55e2e88bc088c44e1b1da6433cc6ed230ea0d51295907de7892

Contents?: true

Size: 1.71 KB

Versions: 12

Compression:

Stored size: 1.71 KB

Contents

require 'spec_helper'
require 'email_spec'

describe Spree::CartonMailer do
  include EmailSpec::Helpers
  include EmailSpec::Matchers

  let(:carton) { create(:carton) }
  let(:order) { carton.orders.first }

  # Regression test for https://github.com/spree/spree/issues/2196
  it "doesn't include out of stock in the email body" do
    shipment_email = Spree::CartonMailer.shipped_email(order: order, carton: carton)
    expect(shipment_email.body).not_to include(%{Out of Stock})
    expect(shipment_email.body).to include(%{Your order has been shipped})
    expect(shipment_email.subject).to eq "#{order.store.name} Shipment Notification ##{order.number}"
  end

  context "deprecated signature" do
    it do
      Spree::Deprecation.silence do
        mail = Spree::CartonMailer.shipped_email(carton.id)
        expect(mail.subject).to include "Shipment Notification"
      end
    end
  end

  context "with resend option" do
    subject do
      Spree::CartonMailer.shipped_email(order: order, carton: carton, resend: true).subject
    end
    it { is_expected.to match /^\[RESEND\] / }
  end

  context "emails must be translatable" do
    context "shipped_email" do
      context "pt-BR locale" do
        before do
          pt_br_shipped_email = { spree: { shipment_mailer: { shipped_email: { dear_customer: 'Caro Cliente,' } } } }
          I18n.backend.store_translations :'pt-BR', pt_br_shipped_email
          I18n.locale = :'pt-BR'
        end

        after do
          I18n.locale = I18n.default_locale
        end

        specify do
          shipped_email = Spree::CartonMailer.shipped_email(order: order, carton: carton)
          expect(shipped_email.body).to include("Caro Cliente,")
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
solidus_core-2.0.3 spec/mailers/carton_mailer_spec.rb
solidus_core-1.4.2 spec/mailers/carton_mailer_spec.rb
solidus_core-2.0.2 spec/mailers/carton_mailer_spec.rb
solidus_core-1.4.1 spec/mailers/carton_mailer_spec.rb
solidus_core-2.0.1 spec/mailers/carton_mailer_spec.rb
solidus_core-2.1.0.beta1 spec/mailers/carton_mailer_spec.rb
solidus_core-2.0.0 spec/mailers/carton_mailer_spec.rb
solidus_core-1.4.0 spec/mailers/carton_mailer_spec.rb
solidus_core-2.0.0.rc1 spec/mailers/carton_mailer_spec.rb
solidus_core-1.4.0.rc1 spec/mailers/carton_mailer_spec.rb
solidus_core-2.0.0.beta1 spec/mailers/carton_mailer_spec.rb
solidus_core-1.4.0.beta1 spec/mailers/carton_mailer_spec.rb