From 3e8c8d751550114d6f62d1cc67b8a307f703abfb Mon Sep 17 00:00:00 2001 From: Tom Wang Date: Thu, 6 Jun 2019 11:21:19 -0400 Subject: [PATCH] Export currency names --- lib/cldr/export/data/currencies.rb | 14 +++++++++++--- test/export/data/currencies_test.rb | 7 ++++++- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/lib/cldr/export/data/currencies.rb b/lib/cldr/export/data/currencies.rb index cbf98d1a..37884ea0 100644 --- a/lib/cldr/export/data/currencies.rb +++ b/lib/cldr/export/data/currencies.rb @@ -17,8 +17,16 @@ def currencies def currency(node) data = select(node, 'displayName').inject({}) do |result, node| - count = node.attribute('count') ? node.attribute('count').value.to_sym : :one - result[count] = node.content unless draft?(node) + unless draft?(node) + if node.attribute('count') + count = node.attribute('count').value.to_sym + result[count] = node.content + else + result[:one] = node.content if result[:one].nil? + result[:name] = node.content + end + end + result end @@ -30,4 +38,4 @@ def currency(node) end end end -end \ No newline at end of file +end diff --git a/test/export/data/currencies_test.rb b/test/export/data/currencies_test.rb index 5e243de6..c2962ac6 100644 --- a/test/export/data/currencies_test.rb +++ b/test/export/data/currencies_test.rb @@ -36,7 +36,12 @@ class TestCldrCurrencies < Test::Unit::TestCase currencies = Cldr::Export::Data::Currencies.new('de')[:currencies] assert_empty codes - currencies.keys, "Unexpected missing currencies" assert_empty currencies.keys - codes, "Unexpected extra currencies" - assert_equal({ :one => 'Euro', :other => 'Euro', :symbol => '€' }, currencies[:EUR]) + assert_equal({ :name => 'Euro', :one => 'Euro', :other => 'Euro', :symbol => '€' }, currencies[:EUR]) + end + + test 'currencies uses the label to populate :one when count is unavailable' do + currencies = Cldr::Export::Data::Currencies.new('ak')[:currencies] + assert_equal({ :name => 'Yuan', :one => 'Yuan' }, currencies[:CNY]) end # Cldr::Export::Data.locales.each do |locale|