spec/customization_engine_spec.rb

Summary

Maintainability
A
0 mins
Test Coverage
require 'rails_helper'

# This module tests functionality related with custom application files
# TODO test models, controllers, etc...

describe 'Customization Engine' do

  let(:test_key)      { I18n.t('account.show.change_credentials_link') }
  let!(:default_path) { I18n.load_path }

  before do
    reset_load_path_and_reload(default_path)
  end

  after do
    reset_load_path_and_reload(default_path)
  end

  it 'loads custom and override original locales' do
    increase_load_path_and_reload(Dir[Rails.root.join('spec', 'support',
                                                      'locales', 'custom', '*.{rb,yml}')])
    expect(test_key).to eq 'Overriden string with custom locales'
  end

  it 'does not override original locales' do
    increase_load_path_and_reload(Dir[Rails.root.join('spec', 'support',
                                                      'locales', '*.{rb,yml}')])
    expect(test_key).to eq 'Not overriden string with custom locales'
  end

  def reset_load_path_and_reload(path)
    I18n.load_path = path
    I18n.reload!
  end

  def increase_load_path_and_reload(path)
    I18n.load_path += path
    I18n.reload!
  end

end