Sha256: 68be5a58a5c1bdc6f08e9c2e3fb4fab9ddcb615985f27c8bb9160d4f3e51ea5c

Contents?: true

Size: 1.41 KB

Versions: 13

Compression:

Stored size: 1.41 KB

Contents

# encoding: utf-8

require "helper"

class TranslatedArticle < ActiveRecord::Base
  translates :slug, :title
  extend FriendlyId
  friendly_id :title, :use => :globalize
end

class GlobalizeTest < MiniTest::Unit::TestCase
  include FriendlyId::Test

  test "friendly_id should find slug in current locale if locale is set, otherwise in default locale" do
    transaction do
      I18n.default_locale = :en
      article_en = I18n.with_locale(:en) { TranslatedArticle.create(:title => 'a title') }
      article_de = I18n.with_locale(:de) { TranslatedArticle.create(:title => 'titel') }

      I18n.with_locale(:de) {
        assert_equal TranslatedArticle.find("titel"), article_de
        assert_equal TranslatedArticle.find("a-title"), article_en
      }
    end
  end

  # https://github.com/svenfuchs/globalize3/blob/master/test/globalize3/dynamic_finders_test.rb#L101
  # see: https://github.com/svenfuchs/globalize3/issues/100
  test "record returned by friendly_id should have all translations" do
    transaction do
      I18n.with_locale(:en) do
        article = TranslatedArticle.create(:title => 'a title')
        Globalize.with_locale(:ja) { article.update_attributes(:title => 'タイトル') }
        article_by_friendly_id = TranslatedArticle.find("a-title")
        article.translations.each do |translation|
          assert_includes article_by_friendly_id.translations, translation
        end
      end
    end
  end

end

Version data entries

13 entries across 8 versions & 2 rubygems

Version Path
sunrise-cms-0.3.3 vendor/bundle/ruby/1.9.1/gems/friendly_id-4.0.5/test/globalize_test.rb
sunrise-cms-0.3.3 vendor/bundle/ruby/1.9.1/gems/friendly_id-4.0.6/test/globalize_test.rb
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/friendly_id-4.0.5/test/globalize_test.rb
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/friendly_id-4.0.6/test/globalize_test.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/friendly_id-4.0.5/test/globalize_test.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/friendly_id-4.0.6/test/globalize_test.rb
sunrise-cms-0.3.0 vendor/bundle/ruby/1.9.1/gems/friendly_id-4.0.6/test/globalize_test.rb
sunrise-cms-0.3.0 vendor/bundle/ruby/1.9.1/gems/friendly_id-4.0.5/test/globalize_test.rb
friendly_id-4.0.7 test/globalize_test.rb
sunrise-cms-0.3.0.rc vendor/bundle/ruby/1.9.1/gems/friendly_id-4.0.5/test/globalize_test.rb
sunrise-cms-0.3.0.rc vendor/bundle/ruby/1.9.1/gems/friendly_id-4.0.6/test/globalize_test.rb
friendly_id-4.0.6 test/globalize_test.rb
friendly_id-4.0.5 test/globalize_test.rb