Sha256: f19c12936756250a88914cd6fa2999b81c5da51d1848778335bc1fe9943cdba4

Contents?: true

Size: 1.52 KB

Versions: 20

Compression:

Stored size: 1.52 KB

Contents

require File.join(File.dirname(__FILE__), %w[.. .. .. spec_helper])

describe SC::Target, 'installed_languages' do

  include SC::SpecHelpers
  
  before do
    @project = fixture_project 'languages'
  end
    
  def langs(langs)
    langs.map { |l| l.to_s }.sort.map { |l| l.to_sym }
  end
  
  it "should detect all installed languages with short names" do
    expected = langs %w(de en-CA en-GB en-US en es foo fr it ja)
    @short_names = @project.target_for :short_names
    @short_names.installed_languages.should eql(expected)
  end
  
  it "should map long languages to short names, and pass through others" do
    expected = langs %w(en fr de it ja es unknown)
    @long_names = @project.target_for :long_names
    @long_names.installed_languages.should eql(expected)
  end

  it "should always return the preferred language, even if no languages" do
    @no_names  = @project.target_for :no_names  
    @no_names.installed_languages.should eql([:en])
  end
  
  it "should ignore case for long names and respect case for unknown" do
    @long_names = @project.target_for :caps_long_names
    @long_names.installed_languages.should eql([:en, :fr, :UnknOWN])
  end
  
  # NOTE: This is the same test as above, but it is placed here to test 
  # case-sensitivity explicitly.  On some platforms, sorting will differ
  # depending on the case...
  it "should always return names using case insensitive sort" do
    @long_names = @project.target_for :caps_long_names
    @long_names.installed_languages.should eql([:en, :fr, :UnknOWN])
  end
    
  
  
end

Version data entries

20 entries across 20 versions & 2 rubygems

Version Path
sproutit-sproutcore-1.0.0.20090407205609 spec/lib/models/target/installed_languages_spec.rb
sproutit-sproutcore-1.0.0.20090408130025 spec/lib/models/target/installed_languages_spec.rb
sproutit-sproutcore-1.0.0.20090416161445 spec/lib/models/target/installed_languages_spec.rb
sproutit-sproutcore-1.0.20090721145236 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1046 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1043 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1042 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1037 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1035 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1031 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1030 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1029 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1027 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1028 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1026 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1025 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1024 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1009 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1008 spec/lib/models/target/installed_languages_spec.rb
sproutcore-1.0.1003 spec/lib/models/target/installed_languages_spec.rb