FIX: Ensure correct locale is set during RenderEmpty responses
Follow-up to bcb0e623
This commit is contained in:
parent
74ab4f3bff
commit
f25fa83b6d
|
@ -110,7 +110,7 @@ class ApplicationController < ActionController::Base
|
||||||
class PluginDisabled < StandardError; end
|
class PluginDisabled < StandardError; end
|
||||||
|
|
||||||
rescue_from RenderEmpty do
|
rescue_from RenderEmpty do
|
||||||
render 'default/empty'
|
with_resolved_locale { render 'default/empty' }
|
||||||
end
|
end
|
||||||
|
|
||||||
rescue_from ArgumentError do |e|
|
rescue_from ArgumentError do |e|
|
||||||
|
|
|
@ -687,8 +687,9 @@ RSpec.describe ApplicationController do
|
||||||
end
|
end
|
||||||
|
|
||||||
context "with a logged in user" do
|
context "with a logged in user" do
|
||||||
|
let(:user) { Fabricate(:user, locale: :fr) }
|
||||||
|
|
||||||
before do
|
before do
|
||||||
user = Fabricate(:user, locale: :fr)
|
|
||||||
sign_in(user)
|
sign_in(user)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -704,6 +705,12 @@ RSpec.describe ApplicationController do
|
||||||
expected_title = I18n.t("page_not_found.title", locale: :fr)
|
expected_title = I18n.t("page_not_found.title", locale: :fr)
|
||||||
expect(response.body).to include(CGI.escapeHTML(expected_title))
|
expect(response.body).to include(CGI.escapeHTML(expected_title))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it "serves a RenderEmpty page in the preferred locale" do
|
||||||
|
get "/u/#{user.username}/preferences/interface"
|
||||||
|
expect(response.status).to eq(200)
|
||||||
|
expect(response.body).to have_tag('script', with: { src: "/assets/locales/fr.js" })
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue