mirror of
https://github.com/discourse/discourse.git
synced 2024-11-22 09:42:02 +08:00
DEV: Refactor translation overrides a bit (#28125)
This is a small followup of https://github.com/discourse/discourse/pull/28037.
This commit is contained in:
parent
e9aa2c96e1
commit
1f5cbb9a44
|
@ -50,13 +50,11 @@ class TranslationOverride < ActiveRecord::Base
|
|||
enum status: { up_to_date: 0, outdated: 1, invalid_interpolation_keys: 2, deprecated: 3 }
|
||||
|
||||
scope :mf_locales,
|
||||
->(locale) do
|
||||
where(locale: locale).where.not(status: "deprecated").where("translation_key LIKE '%_MF'")
|
||||
end
|
||||
->(locale) { not_deprecated.where(locale: locale).where("translation_key LIKE '%_MF'") }
|
||||
scope :client_locales,
|
||||
->(locale) do
|
||||
where(locale: locale)
|
||||
.where.not(status: "deprecated")
|
||||
not_deprecated
|
||||
.where(locale: locale)
|
||||
.where("translation_key LIKE 'js.%' OR translation_key LIKE 'admin_js.%'")
|
||||
.where.not("translation_key LIKE '%_MF'")
|
||||
end
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
class I18nInterpolationKeysFinder
|
||||
def self.find(text)
|
||||
return [] unless text.is_a? String
|
||||
return [] unless text.is_a?(String)
|
||||
pattern = Regexp.union([*I18n.config.interpolation_patterns, /\{\{(\w+)\}\}/])
|
||||
keys = text.scan(pattern)
|
||||
keys.flatten!
|
||||
|
|
|
@ -262,7 +262,9 @@ RSpec.describe JsLocaleHelper do
|
|||
end
|
||||
|
||||
describe ".output_client_overrides" do
|
||||
it "should not output deprecated translation overrides" do
|
||||
subject(:client_overrides) { described_class.output_client_overrides("en") }
|
||||
|
||||
before do
|
||||
Fabricate(
|
||||
:translation_override,
|
||||
locale: "en",
|
||||
|
@ -276,9 +278,11 @@ RSpec.describe JsLocaleHelper do
|
|||
value: "SHOULD_NOT_SHOW",
|
||||
status: "deprecated",
|
||||
)
|
||||
end
|
||||
|
||||
expect(described_class.output_client_overrides("en").include? "SHOULD_SHOW").to eq(true)
|
||||
expect(described_class.output_client_overrides("en").include? "SHOULD_NOT_SHOW").to eq(false)
|
||||
it "does not output deprecated translation overrides" do
|
||||
expect(client_overrides).to include("SHOULD_SHOW")
|
||||
expect(client_overrides).not_to include("SHOULD_NOT_SHOW")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue
Block a user