localeapp 0.9.0 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ ZGIyOGI1YTRjMGJmMWE1ODRiMDgwNGNlZThkZWQ0MmE0ZjQ3Njk1Yw==
5
+ data.tar.gz: !binary |-
6
+ MmRjMTRkMzI5MGFiMDA1NDBkY2I2ODk1MjRlZTc5MjBkNWRkMzE4OA==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ Nzg5ODJhNjUzYTFkOTU0ZGNiMTA1Mjk1YzI3MzBkYjUzZGVmZDM1YWVlZTBi
10
+ NmFhNjNkYjc1ZGQ1YzliNDQxZGU2YjVjZTBiNzc3YTNiMTAwNjVkMDQ4YjZl
11
+ MWYyOWJmYzVhYjBkYzVhZmUxODY0NjVjYmM1OTBlNmI0OTNiNjU=
12
+ data.tar.gz: !binary |-
13
+ N2NlMDQzZjhmMDVhNjc0YzJiNDhkY2Q4MjJlYWU0ZDIwMWE4ZTA0NWMzM2Rk
14
+ ZjcxMTVmNjhjNTUyODFiNGY3MTUxMTU3MGE3MzljZDYyYTBhYTBhY2ZkNjcz
15
+ YTY2MWJjNzllMWVlMzBkZTQ1YjBlMjQ5MmM0MTg2NWNlNzMxZmU=
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # master
2
2
 
3
+ # Version 0.9.1
4
+
5
+ * Fix Rails 4.1 TranslationHelper regression
6
+
7
+ # Version 0.9.0
8
+
9
+ * Add option to configure SSL version used
10
+
3
11
  # Version 0.8.1
4
12
 
5
13
  * Add the `blacklisted_keys_pattern` configuration option
@@ -126,7 +134,7 @@
126
134
 
127
135
  # Version 0.4.3
128
136
 
129
- * Make sure Psych is fully loaded before using it (Thanks @tenderlove)
137
+ * Make sure Psych is fully loaded before using it (Thanks @tenderlove)
130
138
 
131
139
  # Version 0.4.2
132
140
 
@@ -135,41 +143,33 @@
135
143
  # Version 0.4.1
136
144
 
137
145
  * Ignore HUP when backgrounded. (Thanks @xijo)
138
- * Add --standalone option to install to generate a .localeapp/ config
139
- directory. This enables usage outside of rails.
146
+ * Add --standalone option to install to generate a .localeapp/ config directory. This enables usage outside of rails.
140
147
 
141
148
  # Version 0.4.0
142
149
 
143
- * Use Psych to generate the yaml if it's available (This will completely change
144
- your yaml the first time you do a localeapp pull and Psych is available)
145
- * Report when the directory to write the yml to doesn't exist (Thanks Robin
146
- Mehner)
150
+ * Use Psych to generate the yaml if it's available (This will completely change your yaml the first time you do a localeapp pull and Psych is available)
151
+ * Report when the directory to write the yml to doesn't exist (Thanks Robin Mehner)
147
152
 
148
153
  # Version 0.3.2
149
154
 
150
- * Use yml rather than json when making api calls to localeapp.com. This avoids
151
- symbols turning into strings and breaking parts of rails.
155
+ * Use yml rather than json when making api calls to localeapp.com. This avoids symbols turning into strings and breaking parts of rails.
152
156
 
153
157
  # Version 0.3.1
154
158
 
155
- * Handle SocketError so we don't cause errors in client apps when they're not
156
- connected to the network
159
+ * Handle SocketError so we don't cause errors in client apps when they're not connected to the network
157
160
  * Fix bug with empty log file (Thanks Robin Mehner)
158
161
 
159
162
  # Version 0.3.0
160
163
 
161
164
  * Allow symbols for environment names in config file
162
- * `localeapp push` will now push all yaml files in a directory if it's given a
163
- directory instead of a file. (Thanks Bartłomiej Danek)
164
- * Better daemon support. `daemon_pid_file` and `daemon_log_file` configuration
165
- options. (Thanks again Bartłomiej Danek)
165
+ * `localeapp push` will now push all yaml files in a directory if it's given a directory instead of a file. (Thanks Bartłomiej Danek)
166
+ * Better daemon support. `daemon_pid_file` and `daemon_log_file` configuration options. (Thanks again Bartłomiej Danek)
166
167
 
167
168
  # Version 0.2.0
168
169
 
169
170
  * Add `localeapp add` command for sending keys and translations from the command line
170
171
  * Add `secure` configuration setting for api communications. Default: true
171
- * Add `ssl_verify` and `ssl_ca_file` configuration settings for ssl cert verification.
172
- Off by default, see the README for more details
172
+ * Add `ssl_verify` and `ssl_ca_file` configuration settings for ssl cert verification. Off by default, see the README for more details
173
173
  * Add `proxy` configuration setting
174
174
 
175
175
  # Version 0.1.2
@@ -185,8 +185,6 @@
185
185
  # Version 0.1.0
186
186
 
187
187
  * Added support for Heroku's Cedar stack
188
- * Added a safer configuration style where enabled environments are explicitly
189
- defined
190
- * Removed some unnecessary default options from config files generated with
191
- `localeapp install`
188
+ * Added a safer configuration style where enabled environments are explicitly defined
189
+ * Removed some unnecessary default options from config files generated with `localeapp install`
192
190
  * Fixed `localeapp push` with no arguments
@@ -10,9 +10,13 @@ module Localeapp
10
10
  require 'localeapp/rails/2_3_translation_helper_monkeypatch'
11
11
  end
12
12
 
13
- if rails_version_matches_any? '~> 3.2.16', '~> 4.0.2' # ie: after CVE-2013-4491 patch (https://github.com/rails/rails/commit/78790e4bceedc632cb40f9597792d7e27234138a)
14
- require 'localeapp/rails/force_exception_handler_in_translation_helper'
13
+ if rails_version_matches_any? '~> 4.1.0.rc1', '~> 4.2.0.beta1' # i.e. between https://github.com/rails/rails/commit/d57ce232a885b21e1d6d1f9fbf60bc5908ad880d and https://github.com/rails/rails/commit/4dbce79e95e3f56a9b48992dea4531493a5008cc
14
+ require 'localeapp/rails/4_1_translation_helper_monkeypatch'
15
+ end
16
+
17
+ if rails_version_matches_any? '~> 3.2.16', '>= 4.0.2' # ie: after CVE-2013-4491 patch (https://github.com/rails/rails/commit/78790e4bceedc632cb40f9597792d7e27234138a)
15
18
  require 'localeapp/rails/mimic_rails_missing_translation_display'
19
+ require 'localeapp/rails/force_exception_handler_in_translation_helper'
16
20
  end
17
21
 
18
22
  Localeapp.configure do |config|
@@ -2,7 +2,7 @@
2
2
  # This means the exception handler will be called and missing translations get sent to
3
3
  # localeapp. It's ugly but there's no other way to do it :(
4
4
 
5
- module Localeapp::TranslationHelperMonkeyPatch
5
+ module Localeapp::TranslationHelperRails23MonkeyPatch
6
6
  # Delegates to I18n#translate but also performs two additional functions. First, it'll catch MissingTranslationData exceptions
7
7
  # and turn them into inline spans that contains the missing key, such that you can see in a view what is missing where.
8
8
  #
@@ -33,4 +33,4 @@ module Localeapp::TranslationHelperMonkeyPatch
33
33
  alias :t :translate
34
34
  end
35
35
 
36
- ActionView::Base.send(:include, ::Localeapp::TranslationHelperMonkeyPatch)
36
+ ActionView::Base.send(:include, ::Localeapp::TranslationHelperRails23MonkeyPatch)
@@ -0,0 +1,76 @@
1
+ # We're replacing the original method with one that doesn't always override the :raise option.
2
+ # This bug was introduced in Rails here (4.1.0.rc1): https://github.com/rails/rails/pull/13832
3
+ # and fixed here: https://github.com/rails/rails/pull/17676
4
+
5
+ module Localeapp::TranslationHelperRails41MonkeyPatch
6
+ # Delegates to <tt>I18n#translate</tt> but also performs three additional functions.
7
+ #
8
+ # First, it will ensure that any thrown +MissingTranslation+ messages will be turned
9
+ # into inline spans that:
10
+ #
11
+ # * have a "translation-missing" class set,
12
+ # * contain the missing key as a title attribute and
13
+ # * a titleized version of the last key segment as a text.
14
+ #
15
+ # E.g. the value returned for a missing translation key :"blog.post.title" will be
16
+ # <span class="translation_missing" title="translation missing: en.blog.post.title">Title</span>.
17
+ # This way your views will display rather reasonable strings but it will still
18
+ # be easy to spot missing translations.
19
+ #
20
+ # Second, it'll scope the key by the current partial if the key starts
21
+ # with a period. So if you call <tt>translate(".foo")</tt> from the
22
+ # <tt>people/index.html.erb</tt> template, you'll actually be calling
23
+ # <tt>I18n.translate("people.index.foo")</tt>. This makes it less repetitive
24
+ # to translate many keys within the same partials and gives you a simple framework
25
+ # for scoping them consistently. If you don't prepend the key with a period,
26
+ # nothing is converted.
27
+ #
28
+ # Third, it'll mark the translation as safe HTML if the key has the suffix
29
+ # "_html" or the last element of the key is the word "html". For example,
30
+ # calling translate("footer_html") or translate("footer.html") will return
31
+ # a safe HTML string that won't be escaped by other HTML helper methods. This
32
+ # naming convention helps to identify translations that include HTML tags so that
33
+ # you know what kind of output to expect when you call translate in a template.
34
+ def translate(key, options = {})
35
+ options = options.dup
36
+ remaining_defaults = Array(options.delete(:default))
37
+ options[:default] = remaining_defaults.shift if remaining_defaults.first.kind_of? String
38
+
39
+ # If the user has explicitly decided to NOT raise errors, pass that option to I18n.
40
+ # Otherwise, tell I18n to raise an exception, which we rescue further in this method.
41
+ # Note: `raise_error` refers to us re-raising the error in this method. I18n is forced to raise by default.
42
+ if options[:raise] == false || (options.key?(:rescue_format) && options[:rescue_format].nil?)
43
+ raise_error = false
44
+ options[:raise] = false
45
+ else
46
+ raise_error = options[:raise] || options[:rescue_format] || ActionView::Base.raise_on_missing_translations
47
+ options[:raise] = true
48
+ end
49
+
50
+ if html_safe_translation_key?(key)
51
+ html_safe_options = options.dup
52
+ options.except(*I18n::RESERVED_KEYS).each do |name, value|
53
+ unless name == :count && value.is_a?(Numeric)
54
+ html_safe_options[name] = ERB::Util.html_escape(value.to_s)
55
+ end
56
+ end
57
+ translation = I18n.translate(scope_key_by_partial(key), html_safe_options)
58
+
59
+ translation.respond_to?(:html_safe) ? translation.html_safe : translation
60
+ else
61
+ I18n.translate(scope_key_by_partial(key), options)
62
+ end
63
+ rescue I18n::MissingTranslationData => e
64
+ if remaining_defaults.present?
65
+ translate remaining_defaults.shift, options.merge(default: remaining_defaults)
66
+ else
67
+ raise e if raise_error
68
+
69
+ keys = I18n.normalize_keys(e.locale, e.key, e.options[:scope])
70
+ content_tag('span', keys.last.to_s.titleize, :class => 'translation_missing', :title => "translation missing: #{keys.join('.')}")
71
+ end
72
+ end
73
+ alias :t :translate
74
+ end
75
+
76
+ ActionView::Base.send(:include, ::Localeapp::TranslationHelperRails41MonkeyPatch)
@@ -12,7 +12,7 @@ module Localeapp
12
12
  alias :old_rails_call :call
13
13
  def call(exception, locale, key, options)
14
14
  locale, key = old_rails_call(exception, locale, key, options).split(', ')
15
- "<span class=\"translation_missing\" title=\"translation missing: #{key}\">#{locale}, #{key}</span>".html_safe
15
+ "<span class=\"translation_missing\" title=\"translation missing: #{locale}.#{key}\">#{key.titleize}</span>".html_safe
16
16
  end
17
17
 
18
18
  end
@@ -1,3 +1,3 @@
1
1
  module Localeapp
2
- VERSION = '0.9.0'
2
+ VERSION = '0.9.1'
3
3
  end
data/localeapp.gemspec CHANGED
@@ -32,5 +32,6 @@ Gem::Specification.new do |s|
32
32
  s.add_development_dependency('yard')
33
33
  s.add_development_dependency('RedCloth')
34
34
  s.add_development_dependency('aruba')
35
+ s.add_development_dependency('cucumber', '~> 1.3')
35
36
  s.add_development_dependency('fakeweb')
36
37
  end
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: localeapp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
5
- prerelease:
4
+ version: 0.9.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Christopher Dell
@@ -10,140 +9,190 @@ authors:
10
9
  autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2014-10-23 00:00:00.000000000 Z
12
+ date: 2015-04-06 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: i18n
17
- requirement: &70163408135340 !ruby/object:Gem::Requirement
18
- none: false
16
+ requirement: !ruby/object:Gem::Requirement
19
17
  requirements:
20
18
  - - ! '>='
21
19
  - !ruby/object:Gem::Version
22
20
  version: '0'
23
21
  type: :runtime
24
22
  prerelease: false
25
- version_requirements: *70163408135340
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ! '>='
26
+ - !ruby/object:Gem::Version
27
+ version: '0'
26
28
  - !ruby/object:Gem::Dependency
27
29
  name: json
28
- requirement: &70163408134520 !ruby/object:Gem::Requirement
29
- none: false
30
+ requirement: !ruby/object:Gem::Requirement
30
31
  requirements:
31
32
  - - ! '>='
32
33
  - !ruby/object:Gem::Version
33
34
  version: '0'
34
35
  type: :runtime
35
36
  prerelease: false
36
- version_requirements: *70163408134520
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ! '>='
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
37
42
  - !ruby/object:Gem::Dependency
38
43
  name: rest-client
39
- requirement: &70163408133560 !ruby/object:Gem::Requirement
40
- none: false
44
+ requirement: !ruby/object:Gem::Requirement
41
45
  requirements:
42
46
  - - ! '>='
43
47
  - !ruby/object:Gem::Version
44
48
  version: '0'
45
49
  type: :runtime
46
50
  prerelease: false
47
- version_requirements: *70163408133560
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
48
56
  - !ruby/object:Gem::Dependency
49
57
  name: rack
50
- requirement: &70163408132560 !ruby/object:Gem::Requirement
51
- none: false
58
+ requirement: !ruby/object:Gem::Requirement
52
59
  requirements:
53
60
  - - ! '>='
54
61
  - !ruby/object:Gem::Version
55
62
  version: '0'
56
63
  type: :runtime
57
64
  prerelease: false
58
- version_requirements: *70163408132560
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
59
70
  - !ruby/object:Gem::Dependency
60
71
  name: ya2yaml
61
- requirement: &70163408130680 !ruby/object:Gem::Requirement
62
- none: false
72
+ requirement: !ruby/object:Gem::Requirement
63
73
  requirements:
64
74
  - - ! '>='
65
75
  - !ruby/object:Gem::Version
66
76
  version: '0'
67
77
  type: :runtime
68
78
  prerelease: false
69
- version_requirements: *70163408130680
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ! '>='
82
+ - !ruby/object:Gem::Version
83
+ version: '0'
70
84
  - !ruby/object:Gem::Dependency
71
85
  name: gli
72
- requirement: &70163408128620 !ruby/object:Gem::Requirement
73
- none: false
86
+ requirement: !ruby/object:Gem::Requirement
74
87
  requirements:
75
88
  - - ! '>='
76
89
  - !ruby/object:Gem::Version
77
90
  version: '0'
78
91
  type: :runtime
79
92
  prerelease: false
80
- version_requirements: *70163408128620
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ! '>='
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
81
98
  - !ruby/object:Gem::Dependency
82
99
  name: rake
83
- requirement: &70163408152860 !ruby/object:Gem::Requirement
84
- none: false
100
+ requirement: !ruby/object:Gem::Requirement
85
101
  requirements:
86
102
  - - ! '>='
87
103
  - !ruby/object:Gem::Version
88
104
  version: '0'
89
105
  type: :development
90
106
  prerelease: false
91
- version_requirements: *70163408152860
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ! '>='
110
+ - !ruby/object:Gem::Version
111
+ version: '0'
92
112
  - !ruby/object:Gem::Dependency
93
113
  name: rspec
94
- requirement: &70163408150840 !ruby/object:Gem::Requirement
95
- none: false
114
+ requirement: !ruby/object:Gem::Requirement
96
115
  requirements:
97
116
  - - ~>
98
117
  - !ruby/object:Gem::Version
99
118
  version: 2.14.1
100
119
  type: :development
101
120
  prerelease: false
102
- version_requirements: *70163408150840
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: 2.14.1
103
126
  - !ruby/object:Gem::Dependency
104
127
  name: yard
105
- requirement: &70163408148640 !ruby/object:Gem::Requirement
106
- none: false
128
+ requirement: !ruby/object:Gem::Requirement
107
129
  requirements:
108
130
  - - ! '>='
109
131
  - !ruby/object:Gem::Version
110
132
  version: '0'
111
133
  type: :development
112
134
  prerelease: false
113
- version_requirements: *70163408148640
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ! '>='
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
114
140
  - !ruby/object:Gem::Dependency
115
141
  name: RedCloth
116
- requirement: &70163408146900 !ruby/object:Gem::Requirement
117
- none: false
142
+ requirement: !ruby/object:Gem::Requirement
118
143
  requirements:
119
144
  - - ! '>='
120
145
  - !ruby/object:Gem::Version
121
146
  version: '0'
122
147
  type: :development
123
148
  prerelease: false
124
- version_requirements: *70163408146900
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ! '>='
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
125
154
  - !ruby/object:Gem::Dependency
126
155
  name: aruba
127
- requirement: &70163408145740 !ruby/object:Gem::Requirement
128
- none: false
156
+ requirement: !ruby/object:Gem::Requirement
129
157
  requirements:
130
158
  - - ! '>='
131
159
  - !ruby/object:Gem::Version
132
160
  version: '0'
133
161
  type: :development
134
162
  prerelease: false
135
- version_requirements: *70163408145740
163
+ version_requirements: !ruby/object:Gem::Requirement
164
+ requirements:
165
+ - - ! '>='
166
+ - !ruby/object:Gem::Version
167
+ version: '0'
168
+ - !ruby/object:Gem::Dependency
169
+ name: cucumber
170
+ requirement: !ruby/object:Gem::Requirement
171
+ requirements:
172
+ - - ~>
173
+ - !ruby/object:Gem::Version
174
+ version: '1.3'
175
+ type: :development
176
+ prerelease: false
177
+ version_requirements: !ruby/object:Gem::Requirement
178
+ requirements:
179
+ - - ~>
180
+ - !ruby/object:Gem::Version
181
+ version: '1.3'
136
182
  - !ruby/object:Gem::Dependency
137
183
  name: fakeweb
138
- requirement: &70163408220500 !ruby/object:Gem::Requirement
139
- none: false
184
+ requirement: !ruby/object:Gem::Requirement
140
185
  requirements:
141
186
  - - ! '>='
142
187
  - !ruby/object:Gem::Version
143
188
  version: '0'
144
189
  type: :development
145
190
  prerelease: false
146
- version_requirements: *70163408220500
191
+ version_requirements: !ruby/object:Gem::Requirement
192
+ requirements:
193
+ - - ! '>='
194
+ - !ruby/object:Gem::Version
195
+ version: '0'
147
196
  description: Synchronizes i18n translation keys and content with localeapp.com so
148
197
  you don't have to manage translations by hand.
149
198
  email:
@@ -204,6 +253,7 @@ files:
204
253
  - lib/localeapp/poller.rb
205
254
  - lib/localeapp/rails.rb
206
255
  - lib/localeapp/rails/2_3_translation_helper_monkeypatch.rb
256
+ - lib/localeapp/rails/4_1_translation_helper_monkeypatch.rb
207
257
  - lib/localeapp/rails/controller.rb
208
258
  - lib/localeapp/rails/flatten.rb
209
259
  - lib/localeapp/rails/force_exception_handler_in_translation_helper.rb
@@ -248,75 +298,26 @@ files:
248
298
  homepage: http://www.localeapp.com
249
299
  licenses:
250
300
  - MIT
301
+ metadata: {}
251
302
  post_install_message:
252
303
  rdoc_options: []
253
304
  require_paths:
254
305
  - lib
255
306
  required_ruby_version: !ruby/object:Gem::Requirement
256
- none: false
257
307
  requirements:
258
308
  - - ! '>='
259
309
  - !ruby/object:Gem::Version
260
310
  version: '0'
261
- segments:
262
- - 0
263
- hash: 933950263317453001
264
311
  required_rubygems_version: !ruby/object:Gem::Requirement
265
- none: false
266
312
  requirements:
267
313
  - - ! '>='
268
314
  - !ruby/object:Gem::Version
269
315
  version: '0'
270
- segments:
271
- - 0
272
- hash: 933950263317453001
273
316
  requirements: []
274
317
  rubyforge_project: localeapp
275
- rubygems_version: 1.8.6
318
+ rubygems_version: 2.4.5
276
319
  signing_key:
277
- specification_version: 3
320
+ specification_version: 4
278
321
  summary: Easy i18n translation management with localeapp.com
279
- test_files:
280
- - features/add.feature
281
- - features/bad_command.feature
282
- - features/help.feature
283
- - features/install.feature
284
- - features/mv.feature
285
- - features/pull.feature
286
- - features/push.feature
287
- - features/rm.feature
288
- - features/step_definitions/cli_steps.rb
289
- - features/support/env.rb
290
- - features/support/hooks.rb
291
- - features/update.feature
292
- - spec/fixtures/empty_log.yml
293
- - spec/fixtures/en.yml
294
- - spec/fixtures/es.yml
295
- - spec/fixtures/string_log.yml
296
- - spec/fixtures/symbol_log.yml
297
- - spec/localeapp/api_call_spec.rb
298
- - spec/localeapp/api_caller_spec.rb
299
- - spec/localeapp/cli/add_spec.rb
300
- - spec/localeapp/cli/daemon_spec.rb
301
- - spec/localeapp/cli/install_spec.rb
302
- - spec/localeapp/cli/pull_spec.rb
303
- - spec/localeapp/cli/push_spec.rb
304
- - spec/localeapp/cli/rename_spec.rb
305
- - spec/localeapp/cli/update_spec.rb
306
- - spec/localeapp/configuration_spec.rb
307
- - spec/localeapp/default_value_handler_spec.rb
308
- - spec/localeapp/exception_handler_spec.rb
309
- - spec/localeapp/key_checker_spec.rb
310
- - spec/localeapp/missing_translations_spec.rb
311
- - spec/localeapp/poller_spec.rb
312
- - spec/localeapp/rails/controller_spec.rb
313
- - spec/localeapp/routes_spec.rb
314
- - spec/localeapp/sender_spec.rb
315
- - spec/localeapp/sync_file_spec.rb
316
- - spec/localeapp/updater_spec.rb
317
- - spec/localeapp_spec.rb
318
- - spec/spec_helper.rb
319
- - spec/support/i18n/missing_translation.rb
320
- - spec/support/localeapp_integration_data.rb
321
- - spec/support/localeapp_synchronization_data.rb
322
+ test_files: []
322
323
  has_rdoc: