buggravaty - Bugs: bug #41059, I18N locales miss specific tests

 
 

bug #41059: I18N locales miss specific tests

Submitted by:  Marco Bresciani <marcobresciani>
Submitted on:  Wed 01 Jan 2014 07:37:18 PM UTC  
 
Category: BugSeverity: 2 - Minor
Item Group: Locale/I18NStatus: Fixed
Privacy: PublicAssigned to: Marco Bresciani <marcobresciani>
Open/Closed: Closed

Add a New Comment (Rich MarkupRich Markup):
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Wed 19 Mar 2014 01:41:53 PM UTC, comment #2:

# HG changeset patch
# User Marco Bresciani <m.bresciani@email.it>
# Date 1395236410 -3600
# Wed Mar 19 14:40:10 2014 +0100
# Node ID 35abf413131fceb7b829f83a042c2ddc8f7910ae
# Parent a3ff9592c904c7976926a2b9c13d016f62c33979
SOLVED BUG #41059

diff -r a3ff9592c904 -r 35abf413131f lib/gravaty/locales/en.yml
--- a/lib/gravaty/locales/en.yml Sun Mar 16 23:49:58 2014 +0100
+++ b/lib/gravaty/locales/en.yml Wed Mar 19 14:40:10 2014 +0100
@@ -22,3 +22,5 @@
value: "Value %{value} is not in allowed range."
warn:
deprecated: This method has been deprecated.
+ test:
+ test: test data
diff -r a3ff9592c904 -r 35abf413131f lib/gravaty/locales/it.yml
--- a/lib/gravaty/locales/it.yml Sun Mar 16 23:49:58 2014 +0100
+++ b/lib/gravaty/locales/it.yml Wed Mar 19 14:40:10 2014 +0100
@@ -22,3 +22,5 @@
value: "Il valore %{value} non è nell'intervallo previsto."
warn:
deprecated: Questo metodo è obsoleto.
+ test:
+ test: dato di prova
diff -r a3ff9592c904 -r 35abf413131f lib/gravaty/locales/ja.yml
--- a/lib/gravaty/locales/ja.yml Sun Mar 16 23:49:58 2014 +0100
+++ b/lib/gravaty/locales/ja.yml Wed Mar 19 14:40:10 2014 +0100
@@ -1,5 +1,6 @@
# gravaty
# Copyright © 2013 新部裕
+# Copyright © 2014 新部裕, Marco Bresciani
#
# This file is part of gravaty.
#
@@ -22,3 +23,5 @@
value: "値 %{value} が範囲外です。"
warn:
deprecated: このメソッドはすでに廃止され、推奨されていません。
+ test:
+ test: 試験データ
diff -r a3ff9592c904 -r 35abf413131f test/gravaty/locales/test_locales.rb
--- a/test/gravaty/locales/test_locales.rb Sun Mar 16 23:49:58 2014 +0100
+++ b/test/gravaty/locales/test_locales.rb Wed Mar 19 14:40:10 2014 +0100
@@ -12,25 +12,45 @@
# You should have received a copy of the GNU General Public License along with gravaty. If not, see
# <http://www.gnu.org/licenses/>.

-#require_relative '../test_helper'
-#
-#describe Gravaty::Gravaty do
-# describe 'when using I18N ' do
-#
-# before do
-# I18n.load_path = Dir[File.join(File.dirname(_FILE_), '/locales/', '*.yml')]
-# end
-#
-# it 'shall return at least one available locale' do
-# I18n.available_locales.length.wont_be <= 0
-# end
-#
-# #it 'shall return the digest content on demand' do
-# # subject.digest.must_equal Gravaty::MY_MD5
-# #end
-# #
-# #it 'shall return a valid string' do
-# # subject.to_s.wont_be_nil
-# #end
-# end
-#end
+require_relative '../../test_helper'
+
+def load_yaml_file(locale)
+ filename = File::join(File::dirname(_FILE_), '/../../../lib/gravaty/locales/', "#{locale}" + '.yml')
+ filename = File::expand_path filename
+ translation = YAML::load(File::open("#{filename}"))
+end
+
+describe Gravaty::Gravaty do
+ describe 'when using I18N ' do
+ attr_reader :locales
+
+ subject { I18n.available_locales }
+
+ before do
+ I18n.load_path = Dir[File.join(File.dirname(_FILE_), '/../../../lib/gravaty/locales/', '*.yml')]
+ @locales = subject
+ end
+
+ it 'shall return at least one available locale' do
+ subject.wont_be_nil
+ subject.wont_be_empty
+ end
+
+ it 'shall contain at least English and Italiano' do
+ subject.must_include :en
+ subject.must_include :it
+ end
+
+ [:it, :en].each do |locale|
+ it "shall return the translated string when 'test.test' signpost is I18n'ed for #{locale}" do
+ translation = load_yaml_file(locale)
+ I18n.locale = locale
+ a_string = I18n.t('test.test')
+ a_string.wont_be_nil
+ a_string.wont_be_empty
+ a_string.wont_include 'translation missing'
+ a_string.must_equal translation["#{locale}"]['test']['test']
+ end
+ end
+ end
+end

Marco Bresciani <marcobresciani>
Project AdministratorIn charge of this item.
Mon 03 Feb 2014 11:45:25 AM UTC, comment #1:

Basics example uses the I18n data to show the error message. Similar tests should be written.

Marco Bresciani <marcobresciani>
Project AdministratorIn charge of this item.
Wed 01 Jan 2014 07:37:18 PM UTC, original submission:

There are no tests for I18N locales files nor (possibly) a check for missing locales and the set to a default one.

Marco Bresciani <marcobresciani>
Project AdministratorIn charge of this item.

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by marcobresciani (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 4 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Wed 19 Mar 2014 01:41:53 PM UTCmarcobrescianiStatusIn Progress=>Fixed
      Open/ClosedOpen=>Closed
    Wed 19 Mar 2014 01:41:24 PM UTCmarcobrescianiStatusConfirmed=>In Progress
    Wed 19 Mar 2014 01:41:04 PM UTCmarcobrescianiAssigned toNone=>marcobresciani

    Back to the top


    Powered by Savane 3.1-cleanup