From b9fbc95ef42c3aa722a8dd7e29ddbf5dab83899c Mon Sep 17 00:00:00 2001 From: Guo Xiang Tan Date: Mon, 19 Jun 2017 11:13:23 +0900 Subject: [PATCH] Add spec to notify us when translations have invalid interpolation keys. --- spec/integrity/i18n_spec.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/spec/integrity/i18n_spec.rb b/spec/integrity/i18n_spec.rb index 9dac7ebf689..616e826b121 100644 --- a/spec/integrity/i18n_spec.rb +++ b/spec/integrity/i18n_spec.rb @@ -59,6 +59,16 @@ describe "i18n integrity checks" do end end + Dir["#{Rails.root}/config/locales/{client,server}.*.yml"].each do |path| + it "does not contain invalid interpolation keys for '#{path}'" do + matches = File.read(path).scan(/%\{([^a-zA-Z\s]+)\}|\{\{([^a-zA-Z\s]+)\}\}/) + matches.flatten! + matches.compact! + matches.uniq! + expect(matches).to eq([]) + end + end + Dir["#{Rails.root}/config/locales/client.*.yml"].each do |path| it "has valid client YAML for '#{path}'" do yaml = YAML.load_file(path)