Sha256: 7e8a056b3b1bba9a53b7965906e59438ede8482cad8ac988bc4e5edab6c00770

Contents?: true

Size: 1.15 KB

Versions: 11

Compression:

Stored size: 1.15 KB

Contents

require File.join(File.dirname(__FILE__), 'test_helper')


describe HammerCLI::I18n do

  class TestLocaleDomain < HammerCLI::I18n::AbstractLocaleDomain

    def initialize(name, available)
      @name = name
      @available = available
    end

    def locale_dir
      File.dirname(__FILE__)
    end

    def domain_name
      @name
    end

    def available?
      @available
    end
  end

  before :each do
    HammerCLI::I18n.clear
  end

  let(:domain1) { TestLocaleDomain.new('domain1', true) }
  let(:domain2) { TestLocaleDomain.new('domain2', true) }
  let(:unavailable_domain) { TestLocaleDomain.new('domain3', false) }

  it "registers available domains at gettext" do
    FastGettext.expects(:add_text_domain).with do |name, options|
      (name == domain1.domain_name) && (options[:path] == domain1.locale_dir) && (options[:type] == domain1.type)
    end
    HammerCLI::I18n.add_domain(domain1)
  end

  it "skips registering domains that are not available" do
    HammerCLI::I18n.add_domain(domain1)
    HammerCLI::I18n.add_domain(domain2)
    HammerCLI::I18n.add_domain(unavailable_domain)
    HammerCLI::I18n.domains.must_equal [domain1, domain2]
  end


end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
hammer_cli-0.7.0 test/unit/i18n_test.rb
hammer_cli-0.6.1 test/unit/i18n_test.rb
hammer_cli-0.6.0 test/unit/i18n_test.rb
hammer_cli-0.5.1 test/unit/i18n_test.rb
hammer_cli-0.4.0 test/unit/i18n_test.rb
hammer_cli-0.3.0 test/unit/i18n_test.rb
hammer_cli-0.2.0 test/unit/i18n_test.rb
hammer_cli-0.1.4 test/unit/i18n_test.rb
hammer_cli-0.1.3 test/unit/i18n_test.rb
hammer_cli-0.1.2 test/unit/i18n_test.rb
hammer_cli-0.1.1 test/unit/i18n_test.rb