translatable 0.2.4 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,71 @@
1
+ require "test_helper"
2
+ require "rails"
3
+ require 'rails/generators'
4
+ require "generators/translatable/translation_generator"
5
+
6
+ class TranslationGeneratorTest < Rails::Generators::TestCase
7
+ tests Translatable::Generators::TranslationGenerator
8
+ destination File.expand_path("../../../tmp", __FILE__)
9
+ setup :prepare_destination
10
+ teardown :cleanup_destination_root
11
+
12
+ should "Create required files (default)" do
13
+ run_generator %w(article title:string content:string)
14
+ assert_file "app/models/translatable_article.rb", <<CONTENT
15
+ class TranslatableArticle < ActiveRecord::Base
16
+ # This class deals purely with translations themselves. Hence, any edition of
17
+ # should be avoided.
18
+ # In later gem version its existance might not be necessary.
19
+ attr_accessible :title, :content
20
+ #attr_protected :origin_id, :locale
21
+ end
22
+ CONTENT
23
+ assert_migration "db/migrate/create_translatable_articles.rb", <<CONTENT
24
+ class CreateTranslatableArticles < ActiveRecord::Migration
25
+ def change
26
+ create_table :translatable_articles do |t|
27
+ t.string :title
28
+ t.string :content
29
+ t.integer :origin_id
30
+ t.string :locale
31
+
32
+ t.timestamps
33
+ end
34
+ end
35
+ end
36
+ CONTENT
37
+ end
38
+
39
+ should "Create required files (with options)" do
40
+ run_generator %w(article title:string content:string --prefix=Translation --origin=post --locale=language)
41
+ assert_file "app/models/translation_article.rb", <<CONTENT
42
+ class TranslationArticle < ActiveRecord::Base
43
+ # This class deals purely with translations themselves. Hence, any edition of
44
+ # should be avoided.
45
+ # In later gem version its existance might not be necessary.
46
+ attr_accessible :title, :content
47
+ #attr_protected :post_id, :language
48
+ end
49
+ CONTENT
50
+ assert_migration "db/migrate/create_translation_articles.rb", <<CONTENT
51
+ class CreateTranslationArticles < ActiveRecord::Migration
52
+ def change
53
+ create_table :translation_articles do |t|
54
+ t.string :title
55
+ t.string :content
56
+ t.integer :post_id
57
+ t.string :language
58
+
59
+ t.timestamps
60
+ end
61
+ end
62
+ end
63
+ CONTENT
64
+ end
65
+
66
+ protected
67
+
68
+ def cleanup_destination_root
69
+ FileUtils.rm_rf destination_root
70
+ end
71
+ end
@@ -5,4 +5,7 @@ ActiveRecord::Base.establish_connection(
5
5
  :database => ':memory:'
6
6
  )
7
7
 
8
- ActiveRecord::Base.logger = Logger.new(STDOUT)
8
+ ActiveRecord::Migration.verbose = $VERBOSE
9
+ if $VERBOSE
10
+ ActiveRecord::Base.logger = Logger.new(STDOUT)
11
+ end
File without changes
File without changes
File without changes
@@ -1,9 +1,13 @@
1
- require 'rubygems'
2
1
  require 'bundler'
3
- if RUBY_VERSION >= '1.9.0'
4
- require "debugger"
5
- else
6
- require 'ruby-debug'
2
+ require 'test/unit'
3
+ require "shoulda-context"
4
+ require "i18n"
5
+
6
+ begin
7
+ require 'simplecov'
8
+ SimpleCov.start
9
+ rescue LoadError
10
+ $stderr.puts "Simplecov is skipped"
7
11
  end
8
12
 
9
13
  begin
@@ -13,7 +17,6 @@ rescue Bundler::BundlerError => e
13
17
  $stderr.puts "Run `bundle install` to install missing gems"
14
18
  exit e.status_code
15
19
  end
16
- require 'test/unit'
17
20
 
18
21
  $LOAD_PATH.unshift(File.dirname(__FILE__))
19
22
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
@@ -24,4 +27,13 @@ require File.expand_path("support/database_cleaner", File.dirname(__FILE__))
24
27
 
25
28
  class Test::Unit::TestCase
26
29
  include OrmSetup
30
+
31
+ setup do
32
+ before_setup
33
+ ::I18n.locale = ::I18n.default_locale
34
+ end
35
+
36
+ teardown do
37
+ after_teardown
38
+ end
27
39
  end
data/translatable.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "translatable"
8
- s.version = "0.2.4"
8
+ s.version = "0.3.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["E-Max"]
12
- s.date = "2013-03-05"
12
+ s.date = "2013-03-06"
13
13
  s.description = "This game was build to make whole proccess of working with translation for DM to be almost invisble. That was THE AIM."
14
14
  s.email = "max@studentify.nl"
15
15
  s.extra_rdoc_files = [
@@ -26,14 +26,21 @@ Gem::Specification.new do |s|
26
26
  "README.rdoc",
27
27
  "Rakefile",
28
28
  "VERSION",
29
+ "lib/generators/translatable/model_generator.rb",
30
+ "lib/generators/translatable/translation_generator.rb",
29
31
  "lib/translatable.rb",
30
- "test/helper.rb",
31
- "test/messages.rb",
32
- "test/news.rb",
33
- "test/posts.rb",
32
+ "lib/translatable/active_record.rb",
33
+ "lib/translatable/engine.rb",
34
+ "lib/translatable/generator_helper.rb",
35
+ "test/cases/translatable_test.rb",
36
+ "test/generators/model_generator_test.rb",
37
+ "test/generators/translation_generator_test.rb",
34
38
  "test/support/active_record.rb",
35
39
  "test/support/database_cleaner.rb",
36
- "test/test_translatable.rb",
40
+ "test/support/models/messages.rb",
41
+ "test/support/models/news.rb",
42
+ "test/support/models/posts.rb",
43
+ "test/test_helper.rb",
37
44
  "translatable.gemspec"
38
45
  ]
39
46
  s.homepage = "http://github.com/kot-begemot/translatable"
@@ -47,29 +54,26 @@ Gem::Specification.new do |s|
47
54
 
48
55
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
49
56
  s.add_runtime_dependency(%q<activerecord>, [">= 0"])
57
+ s.add_runtime_dependency(%q<activesupport>, [">= 0"])
50
58
  s.add_runtime_dependency(%q<i18n>, [">= 0"])
51
59
  s.add_development_dependency(%q<yard>, [">= 0"])
52
60
  s.add_development_dependency(%q<jeweler>, [">= 1.6.0"])
53
- s.add_development_dependency(%q<bundler>, [">= 1.0.0"])
54
- s.add_development_dependency(%q<simplecov>, [">= 0.6.0"])
55
- s.add_development_dependency(%q<rcov>, [">= 1.0.0"])
61
+ s.add_development_dependency(%q<bundler>, [">= 1.2.0"])
56
62
  else
57
63
  s.add_dependency(%q<activerecord>, [">= 0"])
64
+ s.add_dependency(%q<activesupport>, [">= 0"])
58
65
  s.add_dependency(%q<i18n>, [">= 0"])
59
66
  s.add_dependency(%q<yard>, [">= 0"])
60
67
  s.add_dependency(%q<jeweler>, [">= 1.6.0"])
61
- s.add_dependency(%q<bundler>, [">= 1.0.0"])
62
- s.add_dependency(%q<simplecov>, [">= 0.6.0"])
63
- s.add_dependency(%q<rcov>, [">= 1.0.0"])
68
+ s.add_dependency(%q<bundler>, [">= 1.2.0"])
64
69
  end
65
70
  else
66
71
  s.add_dependency(%q<activerecord>, [">= 0"])
72
+ s.add_dependency(%q<activesupport>, [">= 0"])
67
73
  s.add_dependency(%q<i18n>, [">= 0"])
68
74
  s.add_dependency(%q<yard>, [">= 0"])
69
75
  s.add_dependency(%q<jeweler>, [">= 1.6.0"])
70
- s.add_dependency(%q<bundler>, [">= 1.0.0"])
71
- s.add_dependency(%q<simplecov>, [">= 0.6.0"])
72
- s.add_dependency(%q<rcov>, [">= 1.0.0"])
76
+ s.add_dependency(%q<bundler>, [">= 1.2.0"])
73
77
  end
74
78
  end
75
79
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: translatable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-03-05 00:00:00.000000000Z
12
+ date: 2013-03-06 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activerecord
16
- requirement: &85333360 !ruby/object:Gem::Requirement
16
+ requirement: &76461280 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *85333360
24
+ version_requirements: *76461280
25
25
  - !ruby/object:Gem::Dependency
26
- name: i18n
27
- requirement: &85333030 !ruby/object:Gem::Requirement
26
+ name: activesupport
27
+ requirement: &76460820 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,62 +32,51 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *85333030
35
+ version_requirements: *76460820
36
36
  - !ruby/object:Gem::Dependency
37
- name: yard
38
- requirement: &85332600 !ruby/object:Gem::Requirement
37
+ name: i18n
38
+ requirement: &76460440 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
42
42
  - !ruby/object:Gem::Version
43
43
  version: '0'
44
- type: :development
45
- prerelease: false
46
- version_requirements: *85332600
47
- - !ruby/object:Gem::Dependency
48
- name: jeweler
49
- requirement: &85332350 !ruby/object:Gem::Requirement
50
- none: false
51
- requirements:
52
- - - ! '>='
53
- - !ruby/object:Gem::Version
54
- version: 1.6.0
55
- type: :development
44
+ type: :runtime
56
45
  prerelease: false
57
- version_requirements: *85332350
46
+ version_requirements: *76460440
58
47
  - !ruby/object:Gem::Dependency
59
- name: bundler
60
- requirement: &85332090 !ruby/object:Gem::Requirement
48
+ name: yard
49
+ requirement: &76460090 !ruby/object:Gem::Requirement
61
50
  none: false
62
51
  requirements:
63
52
  - - ! '>='
64
53
  - !ruby/object:Gem::Version
65
- version: 1.0.0
54
+ version: '0'
66
55
  type: :development
67
56
  prerelease: false
68
- version_requirements: *85332090
57
+ version_requirements: *76460090
69
58
  - !ruby/object:Gem::Dependency
70
- name: simplecov
71
- requirement: &85331710 !ruby/object:Gem::Requirement
59
+ name: jeweler
60
+ requirement: &76459550 !ruby/object:Gem::Requirement
72
61
  none: false
73
62
  requirements:
74
63
  - - ! '>='
75
64
  - !ruby/object:Gem::Version
76
- version: 0.6.0
65
+ version: 1.6.0
77
66
  type: :development
78
67
  prerelease: false
79
- version_requirements: *85331710
68
+ version_requirements: *76459550
80
69
  - !ruby/object:Gem::Dependency
81
- name: rcov
82
- requirement: &85331450 !ruby/object:Gem::Requirement
70
+ name: bundler
71
+ requirement: &76459150 !ruby/object:Gem::Requirement
83
72
  none: false
84
73
  requirements:
85
74
  - - ! '>='
86
75
  - !ruby/object:Gem::Version
87
- version: 1.0.0
76
+ version: 1.2.0
88
77
  type: :development
89
78
  prerelease: false
90
- version_requirements: *85331450
79
+ version_requirements: *76459150
91
80
  description: This game was build to make whole proccess of working with translation
92
81
  for DM to be almost invisble. That was THE AIM.
93
82
  email: max@studentify.nl
@@ -106,14 +95,21 @@ files:
106
95
  - README.rdoc
107
96
  - Rakefile
108
97
  - VERSION
98
+ - lib/generators/translatable/model_generator.rb
99
+ - lib/generators/translatable/translation_generator.rb
109
100
  - lib/translatable.rb
110
- - test/helper.rb
111
- - test/messages.rb
112
- - test/news.rb
113
- - test/posts.rb
101
+ - lib/translatable/active_record.rb
102
+ - lib/translatable/engine.rb
103
+ - lib/translatable/generator_helper.rb
104
+ - test/cases/translatable_test.rb
105
+ - test/generators/model_generator_test.rb
106
+ - test/generators/translation_generator_test.rb
114
107
  - test/support/active_record.rb
115
108
  - test/support/database_cleaner.rb
116
- - test/test_translatable.rb
109
+ - test/support/models/messages.rb
110
+ - test/support/models/news.rb
111
+ - test/support/models/posts.rb
112
+ - test/test_helper.rb
117
113
  - translatable.gemspec
118
114
  homepage: http://github.com/kot-begemot/translatable
119
115
  licenses:
@@ -128,6 +124,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
128
124
  - - ! '>='
129
125
  - !ruby/object:Gem::Version
130
126
  version: '0'
127
+ segments:
128
+ - 0
129
+ hash: -331493043
131
130
  required_rubygems_version: !ruby/object:Gem::Requirement
132
131
  none: false
133
132
  requirements:
@@ -1,273 +0,0 @@
1
- # encoding: utf-8
2
- require 'helper'
3
- require 'news'
4
- require 'posts'
5
- require 'messages'
6
-
7
- class TestDmTranslatable < Test::Unit::TestCase
8
-
9
- def setup
10
- before_setup
11
- end
12
-
13
- def teardown
14
- after_teardown
15
- end
16
-
17
- def test_translatable_hash_is_defined
18
- th = News.instance_variable_get :@translatable
19
-
20
- assert_kind_of Hash, th
21
- assert th.has_key?(:properties)
22
- end
23
-
24
- def test_translatable_hash_has_default_model
25
- assert_equal ::TranslatableNews, News.send(:translatable_model_prepared, 'TranslatableNews')
26
- end
27
-
28
- def test_translatable_assepts_constant_as_model
29
- assert_equal ::TranslatableNews, News.send(:translatable_model_prepared, ::TranslatableNews)
30
- end
31
-
32
- def test_translatable_assepts_sting_as_model
33
- assert_equal ::TranslatableNews, News.send(:translatable_model_prepared, "TranslatableNews")
34
- end
35
-
36
- def test_translatable_assepts_symbol_as_model
37
- assert_equal ::TranslatableNews, News.send(:translatable_model_prepared, :TranslatableNews)
38
- end
39
-
40
- def test_instance_respond_to_translatable_methods
41
- news = News.new
42
-
43
- assert news.respond_to?(:title), "title methods is missing for News instance"
44
- assert news.respond_to?(:content), "content methods is missing for News instance"
45
- end
46
-
47
- def test_translated_instance_has_translatable_methods
48
- news = TranslatableNews.new
49
-
50
- assert news.respond_to?(:title), "Title method is missing for TranslatableNews instance"
51
- assert news.respond_to?(:content), "Content method is missing for TranslatableNews instance"
52
- end
53
-
54
- def test_translated_instance_has_relation_to_origin
55
- news = TranslatableNews.new
56
-
57
- assert news.respond_to?(:locale), "Locale method is missing for TranslatableNews instance"
58
- assert news.respond_to?(:origin_id), "Origin methods is missing for TranslatableNews instance"
59
- assert news.respond_to?(:origin), "Origin methods is missing for TranslatableNews instance"
60
- end
61
-
62
- def test_create_without_translation
63
- news = News.create
64
-
65
- assert news.persisted?
66
- assert_nil TranslatableNews.last
67
- end
68
-
69
- def test_create_translated_with_translation
70
- news = News.create
71
- t_news = TranslatableNews.create :title => "Заголовок", :content => "Содержание", :locale => "ru", :origin_id => news.id
72
-
73
- assert t_news.persisted?
74
-
75
- t_news = TranslatableNews.last
76
- assert_equal news.id, t_news.origin_id
77
- assert_equal "Заголовок", t_news.title
78
- assert_equal "Содержание", t_news.content
79
- assert_equal "ru", t_news.locale
80
- end
81
-
82
- def test_create_with_translation
83
- news = News.create :translations_attributes => [{ :title => "Заголовок", :content => "Содержание", :locale => "ru"}]
84
-
85
- assert news.persisted?
86
-
87
- t_news = TranslatableNews.last
88
- assert_equal news.id, t_news.origin_id.to_i
89
- assert_equal "Заголовок", t_news.title
90
- assert_equal "Содержание", t_news.content
91
- assert_equal "ru", t_news.locale
92
- end
93
-
94
- def test_no_other_translations
95
- news = News.create :translations_attributes => [{ :title => "Заголовок", :content => "Содержание", :locale => "ru"}]
96
-
97
- assert news.persisted?
98
-
99
- t_news = TranslatableNews.last
100
- assert_equal [t_news], news.other_translations
101
- ::I18n.locale = :ru
102
- assert_equal [], news.other_translations
103
- ::I18n.locale = ::I18n.default_locale
104
- end
105
-
106
- def test_create_with_translation_with_multiple_locales
107
- news = News.create :translations_attributes => [{ :title => "Заголовок", :content => "Содержание", :locale => "ru"},
108
- {:title => "Resent News", :content => "That is where the text goes", :locale => "en"}]
109
-
110
- assert news.persisted?
111
-
112
- t_news = TranslatableNews.first
113
- assert_equal news.id, t_news.origin_id.to_i
114
- assert_equal "Заголовок", t_news.title
115
- assert_equal "Содержание", t_news.content
116
- assert_equal "ru", t_news.locale
117
-
118
- t_news = TranslatableNews.last
119
- assert_equal news.id, t_news.origin_id.to_i
120
- assert_equal "Resent News", t_news.title
121
- assert_equal "That is where the text goes", t_news.content
122
- assert_equal "en", t_news.locale
123
- end
124
-
125
- def test_access_of_default_translation
126
- news = News.create :translations_attributes => [{:title => "Заголовок", :content => "Содержание", :locale => "ru"},
127
- {:title => "Resent News", :content => "That is where the text goes", :locale => "en"}]
128
-
129
- assert news.persisted?
130
-
131
- assert_equal "Resent News", news.title
132
- assert_equal "That is where the text goes", news.content
133
- end
134
-
135
- def test_access_of_different_translation
136
- news = News.create :translations_attributes => [{:title => "Заголовок", :content => "Содержание", :locale => "ru"},
137
- {:title => "Resent News", :content => "That is where the text goes", :locale => "en"}]
138
-
139
- assert news.persisted?
140
-
141
- ::I18n.locale = :ru
142
- assert_equal "Заголовок", news.title
143
- assert_equal "Содержание", news.content
144
- ::I18n.locale = ::I18n.default_locale
145
- end
146
-
147
- def test_adding_the_translation
148
- news = News.create :translations_attributes => [{:title => "Resent News", :content => "That is where the text goes", :locale => "en"}]
149
-
150
- assert news.persisted?
151
-
152
- t_news = news.translations.create :title => "Заголовок", :content => "Содержание",:locale => "ru"
153
-
154
- assert t_news.persisted?
155
- assert t_news.persisted?
156
- end
157
-
158
- def test_getting_different_translations
159
- news = News.create :translations_attributes => [{:title => "Resent News", :content => "That is where the text goes", :locale => "en"}]
160
-
161
- assert news.persisted?
162
-
163
- t_news = news.translations.create :title => "Заголовок", :content => "Содержание",:locale => "ru"
164
- assert t_news.persisted?
165
-
166
- ::I18n.locale = ::I18n.default_locale
167
-
168
- assert_equal "Resent News", news.title
169
- assert_equal "That is where the text goes", news.content
170
-
171
- ::I18n.locale = :ru
172
-
173
- assert_equal "Заголовок", news.title
174
- assert_equal "Содержание", news.content
175
- ::I18n.locale = ::I18n.default_locale
176
- end
177
-
178
- def test_access_unexisting_translation
179
- news = News.create :translations_attributes => [{:title => "Заголовок", :content => "Содержание", :locale => "ru"},
180
- {:title => "Resent News", :content => "That is where the text goes", :locale => "en"}]
181
-
182
- assert news.persisted?
183
-
184
- ::I18n.locale = :de
185
- assert_nil news.title
186
- assert_nil news.content
187
- ::I18n.locale = ::I18n.default_locale
188
- end
189
-
190
- def test_errors_on_translation_creation
191
- news = News.create :translations_attributes => [{:title => "Заголовок", :content => "Содержание", :locale => "ru"},
192
- {:title => "Resent News", :content => "That is where the text goes", :locale => ""}]
193
-
194
- assert news.new_record?
195
-
196
- assert_equal ["Translations locale can't be blank"], news.errors.full_messages
197
-
198
- news.translations.each do |t|
199
- assert t.new_record?
200
- end
201
- end
202
-
203
- def test_validations_are_defined
204
- post = Post.create :translations_attributes => [{:title => "Заголовок",:content => "Содержание", :locale => "ru"},
205
- {:title => "Resent Post", :content => "That is where the text goes", :locale => "en"}]
206
- assert post.persisted?, "Message had errors: #{post.errors.inspect}"
207
-
208
- post = Post.create :translations_attributes => [{:content => "Содержание", :locale => "ru"},
209
- {:title => "Resent Post 2", :content => "That is where the text goes", :locale => "en"}]
210
-
211
- assert post.new_record?, "Message had errors: #{post.errors.full_messages.inspect}"
212
- assert_equal ["Translations title can't be blank"], post.errors.full_messages
213
-
214
- post = Post.create :translations_attributes => [{:title => "Заголовок 2", :locale => "ru"},
215
- {:title => "Resent Post 3", :content => "That is where the text goes", :locale => "en"}]
216
-
217
- assert post.new_record?, "Message had errors: #{post.errors.full_messages.inspect}"
218
- assert_equal ["Translations content can't be blank"], post.errors.full_messages
219
-
220
- post = Post.create :translations_attributes => [{:title => "Заголовок", :content => "Содержание", :locale => "ru"},
221
- {:title => "Resent Post 3", :content => "That is where the text goes", :locale => "en"}]
222
-
223
- assert post.new_record?, "Message had errors: #{post.errors.full_messages.inspect}"
224
- assert_equal ["Translations title has already been taken"], post.errors.full_messages
225
- end
226
-
227
- def test_origin_is_owerwrittent
228
- post = Post.create :translations_attributes => [{:title => "Заголовок",:content => "Содержание", :locale => "ru"},
229
- {:title => "Resent Post", :content => "That is where the text goes", :locale => "en"}]
230
- assert post.persisted?, "Message had errors: #{post.errors.inspect}"
231
-
232
- assert_equal post, post.translations.first.post
233
- end
234
-
235
- def test_attr_as
236
- post = Post.create :translations_attributes => [{:title => "Заголовок",:content => "Содержание", :locale => "ru"},
237
- {:title => "Resent Post", :content => "That is where the text goes", :locale => "en"}]
238
- assert post.persisted?, "Message had errors: #{post.errors.inspect}"
239
-
240
- assert_equal "Resent Post", post.translated_title
241
-
242
- ::I18n.locale = :ru
243
- assert_equal "Заголовок", post.translated_title
244
- ::I18n.locale = ::I18n.default_locale
245
- end
246
-
247
- def test_protected_mass_assigment
248
- tm = TranslatedMessage.new( :title => "Resent Post", :content => "That is where the text goes", :locale => "en", :message_id => 1)
249
-
250
- assert_equal "Resent Post", tm.title
251
- assert_equal "That is where the text goes", tm.content
252
- assert_equal nil, tm.locale
253
- assert_equal nil, tm.message_id
254
- end
255
-
256
- def test_protected_editor_mass_assigment
257
- tm = TranslatedMessage.new( {:title => "Resent Post", :content => "That is where the text goes", :locale => "en", :message_id => 1}, :as => :editor)
258
-
259
- assert_equal "Resent Post", tm.title
260
- assert_equal "That is where the text goes", tm.content
261
- assert_equal "en", tm.locale
262
- assert_equal nil, tm.message_id
263
- end
264
-
265
- def test_accessible_mass_assigment
266
- tp = TranslatableNews.new( :title => "Resent News", :content => "That is where the text goes", :locale => "en", :origin_id => 1)
267
-
268
- assert_equal "Resent News", tp.title
269
- assert_equal "That is where the text goes", tp.content
270
- assert_equal "en", tp.locale
271
- assert_equal 1, tp.origin_id
272
- end
273
- end