trendi18n 0.9.1
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE +22 -0
- data/MIT-LICENSE +20 -0
- data/README.rdoc +19 -0
- data/Rakefile +54 -0
- data/VERSION +1 -0
- data/app/models/translation.rb +125 -0
- data/generators/trendi18n/templates/migrations/create_translations.rb +22 -0
- data/generators/trendi18n/trendi18n_generator.rb +8 -0
- data/lib/commands.rb +39 -0
- data/lib/file.rb +8 -0
- data/lib/trendi18n.rb +78 -0
- data/rails/init.rb +5 -0
- data/spec/test_application/README +243 -0
- data/spec/test_application/Rakefile +10 -0
- data/spec/test_application/app/controllers/application_controller.rb +10 -0
- data/spec/test_application/app/controllers/translations_controller.rb +41 -0
- data/spec/test_application/app/views/layouts/application.rhtml +15 -0
- data/spec/test_application/app/views/translations/_form.html.erb +11 -0
- data/spec/test_application/app/views/translations/edit.html.erb +6 -0
- data/spec/test_application/app/views/translations/index.html.erb +32 -0
- data/spec/test_application/app/views/translations/new.html.erb +7 -0
- data/spec/test_application/app/views/translations/show.html.erb +5 -0
- data/spec/test_application/config/boot.rb +110 -0
- data/spec/test_application/config/database.yml +25 -0
- data/spec/test_application/config/environment.rb +44 -0
- data/spec/test_application/config/environments/cucumber.rb +28 -0
- data/spec/test_application/config/environments/development.rb +17 -0
- data/spec/test_application/config/environments/production.rb +28 -0
- data/spec/test_application/config/environments/test.rb +34 -0
- data/spec/test_application/config/initializers/new_rails_defaults.rb +21 -0
- data/spec/test_application/config/initializers/session_store.rb +15 -0
- data/spec/test_application/config/locales/en.yml +5 -0
- data/spec/test_application/config/routes.rb +46 -0
- data/spec/test_application/db/migrate/20091208195455_create_translations.rb +22 -0
- data/spec/test_application/db/schema.rb +31 -0
- data/spec/test_application/db/seeds.rb +7 -0
- data/spec/test_application/features/dynamic_translation.feature +5 -0
- data/spec/test_application/features/managing_translations.feature +62 -0
- data/spec/test_application/features/static_translation.feature +13 -0
- data/spec/test_application/features/step_definitions/translations_steps.rb +12 -0
- data/spec/test_application/features/step_definitions/webrat_steps.rb +189 -0
- data/spec/test_application/features/support/env.rb +47 -0
- data/spec/test_application/features/support/paths.rb +42 -0
- data/spec/test_application/features/support/version_check.rb +31 -0
- data/spec/test_application/lib/tasks/cucumber.rake +46 -0
- data/spec/test_application/lib/tasks/rspec.rake +146 -0
- data/spec/test_application/public/404.html +30 -0
- data/spec/test_application/public/422.html +30 -0
- data/spec/test_application/public/500.html +30 -0
- data/spec/test_application/public/favicon.ico +0 -0
- data/spec/test_application/public/robots.txt +5 -0
- data/spec/test_application/script/about +4 -0
- data/spec/test_application/script/autospec +6 -0
- data/spec/test_application/script/console +3 -0
- data/spec/test_application/script/cucumber +17 -0
- data/spec/test_application/script/dbconsole +3 -0
- data/spec/test_application/script/destroy +3 -0
- data/spec/test_application/script/generate +3 -0
- data/spec/test_application/script/performance/benchmarker +3 -0
- data/spec/test_application/script/performance/profiler +3 -0
- data/spec/test_application/script/plugin +3 -0
- data/spec/test_application/script/runner +3 -0
- data/spec/test_application/script/server +3 -0
- data/spec/test_application/script/spec +10 -0
- data/spec/test_application/spec/backend_spec.rb +158 -0
- data/spec/test_application/spec/models/translation_spec.rb +109 -0
- data/spec/test_application/spec/rcov.opts +3 -0
- data/spec/test_application/spec/spec.opts +4 -0
- data/spec/test_application/spec/spec_helper.rb +54 -0
- metadata +156 -0
@@ -0,0 +1,10 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
if ARGV.any? {|arg| %w[--drb -X --generate-options -G --help -h --version -v].include?(arg)}
|
3
|
+
require 'rubygems' unless ENV['NO_RUBYGEMS']
|
4
|
+
else
|
5
|
+
gem 'test-unit', '1.2.3' if RUBY_VERSION.to_f >= 1.9
|
6
|
+
ENV["RAILS_ENV"] ||= 'test'
|
7
|
+
require File.expand_path(File.dirname(__FILE__) + "/../config/environment") unless defined?(RAILS_ROOT)
|
8
|
+
end
|
9
|
+
require 'spec/autorun'
|
10
|
+
exit ::Spec::Runner::CommandLine.run
|
@@ -0,0 +1,158 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
|
3
|
+
I18n.backend = Trendi18n::Backend::Trendi18n.new
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
describe Trendi18n::Backend::Trendi18n do
|
8
|
+
|
9
|
+
before do
|
10
|
+
I18n.backend.is_a?(Trendi18n::Backend::Trendi18n).should == true
|
11
|
+
@data = [{
|
12
|
+
:key => "key1", :translation => "Translation of key1"
|
13
|
+
}, {
|
14
|
+
:key => "key2", :scope => "scope1.subscope1", :translation => "Translation of key2"
|
15
|
+
}, {
|
16
|
+
:key => "key3", :scope => "scope1.subscope2", :translation => "Translation of key3"
|
17
|
+
}]
|
18
|
+
for attributes in @data do
|
19
|
+
Translation.create!(attributes)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
describe "caching" do
|
25
|
+
before(:each) do
|
26
|
+
I18n.reload!
|
27
|
+
@translation = Translation.create(:locale => "en",:key => "test_key", :translation => "test_translations")
|
28
|
+
end
|
29
|
+
|
30
|
+
it "should lookup the key in db when the firts time it is used" do
|
31
|
+
Translation.should_receive(:lookup).once.and_return(@translation)
|
32
|
+
I18n.t("test_key")
|
33
|
+
end
|
34
|
+
|
35
|
+
it "should use cache when the key is used more then one time" do
|
36
|
+
Translation.should_receive(:lookup).once.and_return(@translation)
|
37
|
+
2.times { I18n.t("test_key")}
|
38
|
+
end
|
39
|
+
|
40
|
+
it "should clear cache after backend reload" do
|
41
|
+
Translation.should_receive(:lookup).twice.and_return(@translation)
|
42
|
+
I18n.t("test_key")
|
43
|
+
I18n.reload!
|
44
|
+
I18n.t("test_key")
|
45
|
+
end
|
46
|
+
|
47
|
+
describe "up-to-date status" do
|
48
|
+
|
49
|
+
it "should be up-to-date when there is no translations" do
|
50
|
+
Translation.destroy_all
|
51
|
+
I18n.backend.up_to_date?.should == true
|
52
|
+
end
|
53
|
+
|
54
|
+
it "should be up-to-date when there is new translations but nothing was read yet" do
|
55
|
+
# translation is created in before block
|
56
|
+
I18n.backend.up_to_date?.should == true
|
57
|
+
end
|
58
|
+
|
59
|
+
it "should be up-to-date after update existing translation but before read it" do
|
60
|
+
@translation.translation = "New translation"
|
61
|
+
@translation.save
|
62
|
+
I18n.backend.up_to_date?.should == true
|
63
|
+
end
|
64
|
+
|
65
|
+
it "should be up-to-date after beckend reload" do
|
66
|
+
I18n.reload!
|
67
|
+
I18n.backend.up_to_date?.should == true
|
68
|
+
end
|
69
|
+
|
70
|
+
it "should be up-to-date when we read existing translation after changes in db" do
|
71
|
+
Translation.create(:locale => "en", :key => "new_key", :translation => "new translation")
|
72
|
+
I18n.t("test_key")
|
73
|
+
I18n.backend.up_to_date?.should == true
|
74
|
+
end
|
75
|
+
|
76
|
+
it "should still be up-to-date when we was looking for new translation" do
|
77
|
+
I18n.t("non_existing_key")
|
78
|
+
I18n.backend.up_to_date? == true
|
79
|
+
end
|
80
|
+
|
81
|
+
it "should be up-to-date even translation is updated after use" do
|
82
|
+
I18n.t("test_key")
|
83
|
+
@translation.update_attribute("created_at", 2.minutes.ago)
|
84
|
+
I18n.backend.up_to_date?.should == true
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
describe "standard i18n functionality" do
|
90
|
+
|
91
|
+
it "should find translation without scopes" do
|
92
|
+
I18n.t(:key1).should == "Translation of key1"
|
93
|
+
end
|
94
|
+
|
95
|
+
describe "if there is no translation" do
|
96
|
+
|
97
|
+
it "should return a default string value" do
|
98
|
+
I18n.t(:non_existing_key, :default => "This key not exists").should == "This key not exists"
|
99
|
+
end
|
100
|
+
|
101
|
+
it "should return default translation given as symbol"
|
102
|
+
|
103
|
+
it "should return default translation from string in array"
|
104
|
+
|
105
|
+
it "should return default translation from symbol in array"
|
106
|
+
|
107
|
+
end
|
108
|
+
|
109
|
+
describe "while looking for translations with scopes" do
|
110
|
+
|
111
|
+
it "should look up translation with scope (as a string) in options" do
|
112
|
+
I18n.t(:key2, :scope => "scope1.subscope1").should == "Translation of key2"
|
113
|
+
end
|
114
|
+
|
115
|
+
it "should look up translation with scope (as a array of symbols) in options" do
|
116
|
+
I18n.t(:key2, :scope => [:scope1, :subscope1]).should == "Translation of key2"
|
117
|
+
end
|
118
|
+
|
119
|
+
it "should look up translation with scope (as a symbol) in options" do
|
120
|
+
I18n.t(:key2, :scope => "scope1.subscope1".to_sym).should == "Translation of key2"
|
121
|
+
end
|
122
|
+
|
123
|
+
it "should look up translation with scope info in key (as a string)" do
|
124
|
+
I18n.t("scope1.subscope1.key2").should == "Translation of key2"
|
125
|
+
end
|
126
|
+
|
127
|
+
it "should look up translation with scope info in key (as a symbol)" do
|
128
|
+
I18n.t("scope1.subscope1.key2".to_sym).should == "Translation of key2"
|
129
|
+
end
|
130
|
+
|
131
|
+
it "should look up translation with scope info in key and scope options" do
|
132
|
+
I18n.t("subscope1.key2".to_sym, :scope => "scope1").should == "Translation of key2"
|
133
|
+
end
|
134
|
+
|
135
|
+
end
|
136
|
+
|
137
|
+
describe "multi-translations" do
|
138
|
+
|
139
|
+
it "should look up many translations at once" do
|
140
|
+
I18n.t([:key1, "scope1.subscope1.key2"]).should == ["Translation of key1", "Translation of key2"]
|
141
|
+
end
|
142
|
+
|
143
|
+
it "should look up many translations at once, with scope option" do
|
144
|
+
I18n.t(["subscope1.key2", "subscope2.key3"], :scope => :scope1).should == ["Translation of key2", "Translation of key3"]
|
145
|
+
end
|
146
|
+
|
147
|
+
end
|
148
|
+
|
149
|
+
describe "while scope given as a key" do
|
150
|
+
|
151
|
+
it "should translate to hash of translations"
|
152
|
+
|
153
|
+
end
|
154
|
+
|
155
|
+
|
156
|
+
end
|
157
|
+
|
158
|
+
end
|
@@ -0,0 +1,109 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../spec_helper'
|
2
|
+
|
3
|
+
describe Translation do
|
4
|
+
before(:all) do
|
5
|
+
@valid_attributes = {
|
6
|
+
:locale => "en",
|
7
|
+
:key => "test",
|
8
|
+
:scope =>"TestScope",
|
9
|
+
:default => "test",
|
10
|
+
:translation => "test_transation",
|
11
|
+
:zero => "non test",
|
12
|
+
:one => "one test",
|
13
|
+
:few => "few test",
|
14
|
+
:many => "many test"
|
15
|
+
}
|
16
|
+
end
|
17
|
+
|
18
|
+
|
19
|
+
describe "state assigment" do
|
20
|
+
|
21
|
+
before do
|
22
|
+
@state_test_attributes = [
|
23
|
+
{:locale => "en",
|
24
|
+
:key => "state_test1",
|
25
|
+
:default => "default1"
|
26
|
+
},
|
27
|
+
{:locale => "en",
|
28
|
+
:key => "state_test2",
|
29
|
+
:translation => "translation2"
|
30
|
+
},
|
31
|
+
{:key => "status_test3 {{count}}",
|
32
|
+
:translation => "translation3",
|
33
|
+
:one => "one_translation3"
|
34
|
+
},
|
35
|
+
{ :key => "state_test4 {{count}}",
|
36
|
+
:translation => "translation4",
|
37
|
+
:one => "one_translation4",
|
38
|
+
:zero => "zero_translation4",
|
39
|
+
:many => "many_translation4"
|
40
|
+
}
|
41
|
+
]
|
42
|
+
|
43
|
+
@state_test_results = ["new", "finished", "unfinished", "finished"]
|
44
|
+
end
|
45
|
+
|
46
|
+
it "should assign state to new created model" do
|
47
|
+
for data in @state_test_attributes do
|
48
|
+
model = Translation.new(data)
|
49
|
+
model.save!
|
50
|
+
model.state.should == @state_test_results[@state_test_attributes.index(data)]
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
end
|
55
|
+
|
56
|
+
it "should lookup for new translations" do
|
57
|
+
translation_new = Translation.lookup("en", "key", nil, "scope")
|
58
|
+
translation_new.default.should == "key"
|
59
|
+
translation_exists = Translation.lookup("en", "key", nil, "scope")
|
60
|
+
translation_exists.should == translation_new
|
61
|
+
end
|
62
|
+
|
63
|
+
it "should be with count" do
|
64
|
+
Translation.new(:key => "I have {{count}} plural forms").with_count?.should_not == nil
|
65
|
+
end
|
66
|
+
|
67
|
+
it "should not be with count" do
|
68
|
+
Translation.new(:key => "I do not have count").with_count?.should == nil
|
69
|
+
end
|
70
|
+
|
71
|
+
it "should create translation with correct scope when translation is missing on lookup" do
|
72
|
+
Translation.lookup(:en, :some_key, nil, [:scope, :subscope])
|
73
|
+
Translation.find_by_key_and_scope("some_key", "scope.subscope").should_not == nil
|
74
|
+
end
|
75
|
+
|
76
|
+
it "should not save translations with not properly attributes" do
|
77
|
+
Translation.new(@valid_attributes.merge(:key => nil)).save.should == false
|
78
|
+
Translation.new(@valid_attributes.merge(:locale => "p")).save.should == false
|
79
|
+
Translation.new(@valid_attributes.merge(:locale => "too long locale")).save.should == false
|
80
|
+
Translation.create!(@valid_attributes)
|
81
|
+
Translation.new(@valid_attributes).save.should == false
|
82
|
+
end
|
83
|
+
|
84
|
+
it "should find translation by normalized keys" do
|
85
|
+
translation = Translation.create(@valid_attributes.merge(:key => "Key", :scope => "Scope.With.Dots"))
|
86
|
+
Translation.find_by_string_normalized_key("Scope.With.Dots.Key").should == translation
|
87
|
+
end
|
88
|
+
|
89
|
+
it "should find using find_by_string_normalized_key using simple key as attribute" do
|
90
|
+
translation = Translation.create(@valid_attributes.merge(:key => "SimpleKey", :scope => nil ))
|
91
|
+
Translation.find_by_string_normalized_key(translation.key).should == translation
|
92
|
+
end
|
93
|
+
|
94
|
+
it "should return array of all locale values form db" do
|
95
|
+
Translation.read_base
|
96
|
+
Translation.create!(:key => "key", :locale => "pl")
|
97
|
+
Translation.create!(:key => "key", :locale => "en")
|
98
|
+
Translation.create!(:key => "key", :locale => "nl")
|
99
|
+
Translation.get_locales.should == ["en", "nl", "pl"]
|
100
|
+
end
|
101
|
+
|
102
|
+
it "should return correct plural form (using count argument)" do
|
103
|
+
Translation.create!(:key => "with_count", :translation => "translation", :zero => "none", :one => "one", :many => "many ({{count}})")
|
104
|
+
I18n.t("with_count", :count => 0).should == "none"
|
105
|
+
I18n.t("with_count", :count => 1).should == "one"
|
106
|
+
I18n.t("with_count", :count => 2).should == "many (2)"
|
107
|
+
end
|
108
|
+
|
109
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# This file is copied to ~/spec when you run 'ruby script/generate rspec'
|
2
|
+
# from the project root directory.
|
3
|
+
ENV["RAILS_ENV"] ||= 'test'
|
4
|
+
require File.expand_path(File.join(File.dirname(__FILE__),'..','config','environment'))
|
5
|
+
require 'spec/autorun'
|
6
|
+
require 'spec/rails'
|
7
|
+
|
8
|
+
# Uncomment the next line to use webrat's matchers
|
9
|
+
#require 'webrat/integrations/rspec-rails'
|
10
|
+
|
11
|
+
# Requires supporting files with custom matchers and macros, etc,
|
12
|
+
# in ./support/ and its subdirectories.
|
13
|
+
Dir[File.expand_path(File.join(File.dirname(__FILE__),'support','**','*.rb'))].each {|f| require f}
|
14
|
+
|
15
|
+
Spec::Runner.configure do |config|
|
16
|
+
# If you're not using ActiveRecord you should remove these
|
17
|
+
# lines, delete config/database.yml and disable :active_record
|
18
|
+
# in your config/boot.rb
|
19
|
+
config.use_transactional_fixtures = true
|
20
|
+
config.use_instantiated_fixtures = false
|
21
|
+
config.fixture_path = RAILS_ROOT + '/spec/fixtures/'
|
22
|
+
|
23
|
+
# == Fixtures
|
24
|
+
#
|
25
|
+
# You can declare fixtures for each example_group like this:
|
26
|
+
# describe "...." do
|
27
|
+
# fixtures :table_a, :table_b
|
28
|
+
#
|
29
|
+
# Alternatively, if you prefer to declare them only once, you can
|
30
|
+
# do so right here. Just uncomment the next line and replace the fixture
|
31
|
+
# names with your fixtures.
|
32
|
+
#
|
33
|
+
# config.global_fixtures = :table_a, :table_b
|
34
|
+
#
|
35
|
+
# If you declare global fixtures, be aware that they will be declared
|
36
|
+
# for all of your examples, even those that don't use them.
|
37
|
+
#
|
38
|
+
# You can also declare which fixtures to use (for example fixtures for test/fixtures):
|
39
|
+
#
|
40
|
+
# config.fixture_path = RAILS_ROOT + '/spec/fixtures/'
|
41
|
+
#
|
42
|
+
# == Mock Framework
|
43
|
+
#
|
44
|
+
# RSpec uses it's own mocking framework by default. If you prefer to
|
45
|
+
# use mocha, flexmock or RR, uncomment the appropriate line:
|
46
|
+
#
|
47
|
+
# config.mock_with :mocha
|
48
|
+
# config.mock_with :flexmock
|
49
|
+
# config.mock_with :rr
|
50
|
+
#
|
51
|
+
# == Notes
|
52
|
+
#
|
53
|
+
# For more information take a look at Spec::Runner::Configuration and Spec::Runner
|
54
|
+
end
|
metadata
ADDED
@@ -0,0 +1,156 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: trendi18n
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.9.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Piotr Misiurek
|
8
|
+
- Piotr Marciniak
|
9
|
+
- "\xC5\x81ukasz Piestrzeniewicz"
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
|
14
|
+
date: 2009-12-15 00:00:00 +01:00
|
15
|
+
default_executable:
|
16
|
+
dependencies:
|
17
|
+
- !ruby/object:Gem::Dependency
|
18
|
+
name: rails
|
19
|
+
type: :runtime
|
20
|
+
version_requirement:
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
22
|
+
requirements:
|
23
|
+
- - ">="
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
version: 2.3.5
|
26
|
+
version:
|
27
|
+
description: Database backend for i18n (localization files are still supported). This is beta version so give me your feedback
|
28
|
+
email: p.misiurek@gmail.com
|
29
|
+
executables: []
|
30
|
+
|
31
|
+
extensions: []
|
32
|
+
|
33
|
+
extra_rdoc_files:
|
34
|
+
- LICENSE
|
35
|
+
- README.rdoc
|
36
|
+
files:
|
37
|
+
- LICENSE
|
38
|
+
- MIT-LICENSE
|
39
|
+
- README.rdoc
|
40
|
+
- Rakefile
|
41
|
+
- VERSION
|
42
|
+
- app/models/translation.rb
|
43
|
+
- generators/trendi18n/templates/migrations/create_translations.rb
|
44
|
+
- generators/trendi18n/trendi18n_generator.rb
|
45
|
+
- lib/commands.rb
|
46
|
+
- lib/file.rb
|
47
|
+
- lib/trendi18n.rb
|
48
|
+
- rails/init.rb
|
49
|
+
- spec/test_application/README
|
50
|
+
- spec/test_application/Rakefile
|
51
|
+
- spec/test_application/app/controllers/application_controller.rb
|
52
|
+
- spec/test_application/app/controllers/translations_controller.rb
|
53
|
+
- spec/test_application/app/views/layouts/application.rhtml
|
54
|
+
- spec/test_application/app/views/translations/_form.html.erb
|
55
|
+
- spec/test_application/app/views/translations/edit.html.erb
|
56
|
+
- spec/test_application/app/views/translations/index.html.erb
|
57
|
+
- spec/test_application/app/views/translations/new.html.erb
|
58
|
+
- spec/test_application/app/views/translations/show.html.erb
|
59
|
+
- spec/test_application/config/boot.rb
|
60
|
+
- spec/test_application/config/database.yml
|
61
|
+
- spec/test_application/config/environment.rb
|
62
|
+
- spec/test_application/config/environments/cucumber.rb
|
63
|
+
- spec/test_application/config/environments/development.rb
|
64
|
+
- spec/test_application/config/environments/production.rb
|
65
|
+
- spec/test_application/config/environments/test.rb
|
66
|
+
- spec/test_application/config/initializers/new_rails_defaults.rb
|
67
|
+
- spec/test_application/config/initializers/session_store.rb
|
68
|
+
- spec/test_application/config/locales/en.yml
|
69
|
+
- spec/test_application/config/routes.rb
|
70
|
+
- spec/test_application/db/migrate/20091208195455_create_translations.rb
|
71
|
+
- spec/test_application/db/schema.rb
|
72
|
+
- spec/test_application/db/seeds.rb
|
73
|
+
- spec/test_application/features/dynamic_translation.feature
|
74
|
+
- spec/test_application/features/managing_translations.feature
|
75
|
+
- spec/test_application/features/static_translation.feature
|
76
|
+
- spec/test_application/features/step_definitions/translations_steps.rb
|
77
|
+
- spec/test_application/features/step_definitions/webrat_steps.rb
|
78
|
+
- spec/test_application/features/support/env.rb
|
79
|
+
- spec/test_application/features/support/paths.rb
|
80
|
+
- spec/test_application/features/support/version_check.rb
|
81
|
+
- spec/test_application/lib/tasks/cucumber.rake
|
82
|
+
- spec/test_application/lib/tasks/rspec.rake
|
83
|
+
- spec/test_application/public/404.html
|
84
|
+
- spec/test_application/public/422.html
|
85
|
+
- spec/test_application/public/500.html
|
86
|
+
- spec/test_application/public/favicon.ico
|
87
|
+
- spec/test_application/public/robots.txt
|
88
|
+
- spec/test_application/script/about
|
89
|
+
- spec/test_application/script/autospec
|
90
|
+
- spec/test_application/script/console
|
91
|
+
- spec/test_application/script/cucumber
|
92
|
+
- spec/test_application/script/dbconsole
|
93
|
+
- spec/test_application/script/destroy
|
94
|
+
- spec/test_application/script/generate
|
95
|
+
- spec/test_application/script/performance/benchmarker
|
96
|
+
- spec/test_application/script/performance/profiler
|
97
|
+
- spec/test_application/script/plugin
|
98
|
+
- spec/test_application/script/runner
|
99
|
+
- spec/test_application/script/server
|
100
|
+
- spec/test_application/script/spec
|
101
|
+
- spec/test_application/spec/backend_spec.rb
|
102
|
+
- spec/test_application/spec/models/translation_spec.rb
|
103
|
+
- spec/test_application/spec/rcov.opts
|
104
|
+
- spec/test_application/spec/spec.opts
|
105
|
+
- spec/test_application/spec/spec_helper.rb
|
106
|
+
has_rdoc: true
|
107
|
+
homepage: http://github.com/bragi/trendi18n
|
108
|
+
licenses: []
|
109
|
+
|
110
|
+
post_install_message:
|
111
|
+
rdoc_options:
|
112
|
+
- --charset=UTF-8
|
113
|
+
require_paths:
|
114
|
+
- lib
|
115
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
116
|
+
requirements:
|
117
|
+
- - ">="
|
118
|
+
- !ruby/object:Gem::Version
|
119
|
+
version: "0"
|
120
|
+
version:
|
121
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
122
|
+
requirements:
|
123
|
+
- - ">="
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: "0"
|
126
|
+
version:
|
127
|
+
requirements: []
|
128
|
+
|
129
|
+
rubyforge_project:
|
130
|
+
rubygems_version: 1.3.5
|
131
|
+
signing_key:
|
132
|
+
specification_version: 3
|
133
|
+
summary: Database backend for i18n
|
134
|
+
test_files:
|
135
|
+
- spec/test_application/app/controllers/application_controller.rb
|
136
|
+
- spec/test_application/app/controllers/translations_controller.rb
|
137
|
+
- spec/test_application/config/boot.rb
|
138
|
+
- spec/test_application/config/environment.rb
|
139
|
+
- spec/test_application/config/environments/cucumber.rb
|
140
|
+
- spec/test_application/config/environments/development.rb
|
141
|
+
- spec/test_application/config/environments/production.rb
|
142
|
+
- spec/test_application/config/environments/test.rb
|
143
|
+
- spec/test_application/config/initializers/new_rails_defaults.rb
|
144
|
+
- spec/test_application/config/initializers/session_store.rb
|
145
|
+
- spec/test_application/config/routes.rb
|
146
|
+
- spec/test_application/db/migrate/20091208195455_create_translations.rb
|
147
|
+
- spec/test_application/db/schema.rb
|
148
|
+
- spec/test_application/db/seeds.rb
|
149
|
+
- spec/test_application/features/step_definitions/webrat_steps.rb
|
150
|
+
- spec/test_application/features/step_definitions/translations_steps.rb
|
151
|
+
- spec/test_application/features/support/env.rb
|
152
|
+
- spec/test_application/features/support/paths.rb
|
153
|
+
- spec/test_application/features/support/version_check.rb
|
154
|
+
- spec/test_application/spec/backend_spec.rb
|
155
|
+
- spec/test_application/spec/models/translation_spec.rb
|
156
|
+
- spec/test_application/spec/spec_helper.rb
|