EmailExampleSpec
VCR for e-mail templates.
Installation
gem 'email-example-spec'
Configuration
Configure the root directory of your mail fixtures in spec/spec_helper.rb.
EmailExampleSpec.configure do |config|
config.record = true # record new e-mails, don't commit this!
config.fixture_path = File.join(Rails.root, 'spec/support/fixtures/emails')
end
Usage
describe WelcomeMailer do
let(:user) { User.new }
subject do
WelcomeMailer.welcome(user)
end
it 'works' do
expect(subject).to match_email_example_in 'welcome_mail.txt'
end
end
Details
This gem patches e-mail dates, message IDs and content-type boundaries and exports e-mail contents, including headers, into a file that can be read in subsequent runs. It essentially provides integration testing for e-mail templates.
Contributing
See CONTRIBUTING.
Copyright and License
Copyright (c) 2015, Daniel Doubrovkine, Artsy and Contributors.
This project is licensed under the MIT License.