Sha256: 77d457a19a3b064cbec0c8c179a16f79de5a2aed717be0c2b9ca1e085dc78a21

Contents?: true

Size: 1.98 KB

Versions: 194

Compression:

Stored size: 1.98 KB

Contents

module I18n
  module Tests
    module Basics
      def teardown
        I18n.available_locales = nil
      end

      test "available_locales returns the locales stored to the backend by default" do
        I18n.backend.store_translations('de', :foo => 'bar')
        I18n.backend.store_translations('en', :foo => 'foo')

        assert I18n.available_locales.include?(:de)
        assert I18n.available_locales.include?(:en)
      end

      test "available_locales can be set to something else independently from the actual locale data" do
        I18n.backend.store_translations('de', :foo => 'bar')
        I18n.backend.store_translations('en', :foo => 'foo')

        I18n.available_locales = :foo
        assert_equal [:foo], I18n.available_locales

        I18n.available_locales = [:foo, 'bar']
        assert_equal [:foo, :bar], I18n.available_locales

        I18n.available_locales = nil
        assert I18n.available_locales.include?(:de)
        assert I18n.available_locales.include?(:en)
      end

      test "available_locales memoizes when set explicitely" do
        I18n.backend.expects(:available_locales).never
        I18n.available_locales = [:foo]
        I18n.backend.store_translations('de', :bar => 'baz')
        I18n.reload!
        assert_equal [:foo], I18n.available_locales
      end

      test "available_locales delegates to the backend when not set explicitely" do
        I18n.backend.expects(:available_locales).twice
        assert_equal I18n.available_locales, I18n.available_locales
      end

      test "storing a nil value as a translation removes it from the available locale data" do
        I18n.backend.store_translations(:en, :to_be_deleted => 'bar')
        assert_equal 'bar', I18n.t(:to_be_deleted, :default => 'baz')

        I18n.cache_store.clear if I18n.respond_to?(:cache_store) && I18n.cache_store
        I18n.backend.store_translations(:en, :to_be_deleted => nil)
        assert_equal 'baz', I18n.t(:to_be_deleted, :default => 'baz')
      end
    end
  end
end

Version data entries

194 entries across 171 versions & 27 rubygems

Version Path
classiccms-0.7.5 vendor/bundle/gems/i18n-0.6.0/lib/i18n/tests/basics.rb
classiccms-0.7.4 vendor/bundle/gems/i18n-0.6.0/lib/i18n/tests/basics.rb
classiccms-0.7.3 vendor/bundle/gems/i18n-0.6.0/lib/i18n/tests/basics.rb
active_mailer-0.0.10 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/i18n-0.6.1/lib/i18n/tests/basics.rb
judge-2.0.5 vendor/bundle/ruby/2.1.0/gems/i18n-0.6.2/lib/i18n/tests/basics.rb
i18n-0.5.4 lib/i18n/tests/basics.rb
i18n-0.5.3 lib/i18n/tests/basics.rb
i18n-0.5.2 lib/i18n/tests/basics.rb
tnargav-1.3.3 vendor/bundle/ruby/1.9.1/gems/i18n-0.6.4/lib/i18n/tests/basics.rb
i18n-0.6.5 lib/i18n/tests/basics.rb
challah-1.0.0 vendor/bundle/gems/i18n-0.6.4/lib/i18n/tests/basics.rb
vagrant-shell-0.2.9 demo/templates/vendor/bundle/ruby/1.9.1/gems/i18n-0.6.4/lib/i18n/tests/basics.rb
tnargav-1.2.3 vendor/bundle/ruby/1.9.1/gems/i18n-0.6.4/lib/i18n/tests/basics.rb
vagrant-shell-0.2.8 demo/templates/vendor/bundle/ruby/1.9.1/gems/i18n-0.6.4/lib/i18n/tests/basics.rb
classiccms-0.7.2 vendor/bundle/gems/i18n-0.6.0/lib/i18n/tests/basics.rb
classiccms-0.7.1 vendor/bundle/gems/i18n-0.6.0/lib/i18n/tests/basics.rb
swipe-rails-0.0.5 vendor/bundle/gems/i18n-0.6.1/lib/i18n/tests/basics.rb
active_mailer-0.0.9 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/i18n-0.6.1/lib/i18n/tests/basics.rb
active_mailer-0.0.8 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/i18n-0.6.1/lib/i18n/tests/basics.rb
active_mailer-0.0.7 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/i18n-0.6.1/lib/i18n/tests/basics.rb