Make customization engine spec less prone to flaky failures
This commit is contained in:
@@ -8,21 +8,33 @@ describe 'Customization Engine' do
|
|||||||
let(:test_key) { I18n.t('account.show.change_credentials_link') }
|
let(:test_key) { I18n.t('account.show.change_credentials_link') }
|
||||||
let!(:default_path) { I18n.load_path }
|
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
|
it "loads custom and override original locales" do
|
||||||
I18n.load_path += Dir[Rails.root.join('spec', 'support', 'locales', 'custom', '*.{rb,yml}')]
|
increase_load_path_and_reload(Dir[Rails.root.join('spec', 'support',
|
||||||
I18n.reload!
|
'locales', 'custom', '*.{rb,yml}')])
|
||||||
expect(test_key).to eq 'Overriden string with custom locales'
|
expect(test_key).to eq 'Overriden string with custom locales'
|
||||||
end
|
end
|
||||||
|
|
||||||
it "does not override original locales" do
|
it "does not override original locales" do
|
||||||
I18n.load_path.delete_if {|item| item =~ /spec\/support\/locales\/custom/ }
|
increase_load_path_and_reload(Dir[Rails.root.join('spec', 'support',
|
||||||
I18n.load_path += Dir[Rails.root.join('spec', 'support', 'locales', '**', '*.{rb,yml}')]
|
'locales', '**', '*.{rb,yml}')])
|
||||||
I18n.reload!
|
|
||||||
expect(test_key).to eq 'Not overriden string with custom locales'
|
expect(test_key).to eq 'Not overriden string with custom locales'
|
||||||
end
|
end
|
||||||
|
|
||||||
after do
|
def reset_load_path_and_reload(path)
|
||||||
I18n.load_path = default_path
|
I18n.load_path = path
|
||||||
|
I18n.reload!
|
||||||
|
end
|
||||||
|
|
||||||
|
def increase_load_path_and_reload(path)
|
||||||
|
I18n.load_path += path
|
||||||
I18n.reload!
|
I18n.reload!
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user