Sha256: c143cfe77016e1b01fafdd70f632d89f4281552b448ccd05969d86a606fbd108

Contents?: true

Size: 1.41 KB

Versions: 22

Compression:

Stored size: 1.41 KB

Contents

require 'babelyoda/strings_lexer'
require 'babelyoda/strings_parser'
require 'babelyoda/keyset'

describe "keyset" do
  it "can be created" do
    keyset = Babelyoda::Keyset.new('Combined')
    keyset.name.should == 'Combined'
    keyset.keys.size.should == 0
  end
  
  it "should correctly merge plural keys" do
    lexer = Babelyoda::StringsLexer.new    
    parser = Babelyoda::StringsParser.new(lexer, :en)
    str = <<-EOF
    /* Some comment */
    "Some plural %[one]u key" = "Some translation for one %u";
    /* Some comment */
    "Some plural %[some]u key" = "Some translation for some %u";
    /* Some comment */
    "Some plural %[many]u key" = "Some translation for many %u";
    /* Some comment */
    "Some plural %[none]u key" = "Some translation for none %u";
    EOF
    keyset = Babelyoda::Keyset.new('Combined')
    parser.parse(str) do |record|
      keyset.merge_key!(record)
    end
    keyset.keys.size.should == 1
    key = keyset.keys['Some plural %[plural]u key']
    key.should_not == nil
    key.id.should == 'Some plural %[plural]u key'
    key.values.size.should == 1
    value = key.values[:en]
    value.should_not == nil
    value.plural?.should == true
    text = value.text
    text[:one].should == 'Some translation for one %u'
    text[:some].should == 'Some translation for some %u'
    text[:many].should == 'Some translation for many %u'
    text[:none].should == 'Some translation for none %u'
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
babelyoda-2.2.0 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.20 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.19 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.18 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.17 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.16 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.15 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.14 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.13 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.12 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.11 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.10 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.9 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.8 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.7 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.6 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.5 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.4 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.3 spec/lib/babelyoda/keyset_spec.rb
babelyoda-2.1.2 spec/lib/babelyoda/keyset_spec.rb