about summary refs log tree commit diff
path: root/spec/helpers/settings_helper_spec.rb
diff options
context:
space:
mode:
authorMatt Jankowski <mjankowski@thoughtbot.com>2017-04-23 13:09:52 -0400
committerEugen <eugen@zeonfederated.com>2017-04-23 19:09:52 +0200
commit55e1e12b7d673aece3cf015360af9fb4252dd7e5 (patch)
tree4f98e21c7007938e3845224df81f1fd7e955b48a /spec/helpers/settings_helper_spec.rb
parent6e27e08cb435d170a8d37dd17d3c2442e9ad34ce (diff)
Ensure i18n matches options (#2358)
* Add failing spec showing that human_locales does not match what i18n knows about

* Add missing `ar` key for arabic to human locales

* Remove duplicate `id` key from available locales

* Sort keys in human locales list

* Add spec for human_locale helper
Diffstat (limited to 'spec/helpers/settings_helper_spec.rb')
-rw-r--r--spec/helpers/settings_helper_spec.rb22
1 files changed, 22 insertions, 0 deletions
diff --git a/spec/helpers/settings_helper_spec.rb b/spec/helpers/settings_helper_spec.rb
new file mode 100644
index 000000000..5a51e0ef1
--- /dev/null
+++ b/spec/helpers/settings_helper_spec.rb
@@ -0,0 +1,22 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+describe SettingsHelper do
+  describe 'the HUMAN_LOCALES constant' do
+    it 'has the same number of keys as I18n locales exist' do
+      options = I18n.available_locales
+
+      expect(described_class::HUMAN_LOCALES.keys).to eq(options)
+    end
+  end
+
+  describe 'human_locale' do
+    it 'finds the human readable local description from a key' do
+      # Ensure the value is as we expect
+      expect(described_class::HUMAN_LOCALES[:en]).to eq('English')
+
+      expect(helper.human_locale(:en)).to eq('English')
+    end
+  end
+end