discourse/spec/lib/rtl_spec.rb
David Taylor c9dab6fd08
DEV: Automatically require 'rails_helper' in all specs (#16077)
It's very easy to forget to add `require 'rails_helper'` at the top of every core/plugin spec file, and omissions can cause some very confusing/sporadic errors.

By setting this flag in `.rspec`, we can remove the need for `require 'rails_helper'` entirely.
2022-03-01 17:50:50 +00:00

56 lines
1.2 KiB
Ruby

# frozen_string_literal: true
describe Rtl do
let(:user) { Fabricate.build(:user) }
describe '.css_class' do
context 'user locale is allowed' do
before {
SiteSetting.allow_user_locale = true
}
context 'user locale is RTL' do
before { user.locale = 'he' }
it 'returns rtl class' do
expect(Rtl.new(user).css_class).to eq('rtl')
end
end
context 'user locale is not RTL' do
it 'returns empty class' do
expect(Rtl.new(user).css_class).to eq('')
end
end
end
context 'user locale is not allowed' do
before { SiteSetting.allow_user_locale = false }
context 'site default locale is RTL' do
before { SiteSetting.default_locale = 'he' }
it 'returns rtl class' do
expect(Rtl.new(user).css_class).to eq('rtl')
end
end
context 'site default locale is LTR' do
before { SiteSetting.default_locale = 'en' }
context 'user locale is RTL' do
before { user.stubs(:locale).returns('he') }
it 'returns empty class' do
expect(Rtl.new(user).css_class).to eq('')
end
end
end
end
end
end