coaster 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 32b23a2909ad8272fbc40463ac69d93e0fe68d3e
4
- data.tar.gz: 4f1d17431110b258ed5dee3cf5925a0030591b4d
3
+ metadata.gz: e1c2b790757657909deb31d6c8a22db59b0ada6f
4
+ data.tar.gz: 4168a86bbb07e21b07a54ddacb0042fb90d2cf7c
5
5
  SHA512:
6
- metadata.gz: 913f1472509e3dbb06c1fbd906270685d6b4c398c3a27e7e48c429b82ca7d3e64ff2debb6f19c34ae4293f59e02f79adb7cfeeed560329833d7146750d728e38
7
- data.tar.gz: 6d51304c28f7195d8a8fe5cd9cdef924ca7e4533568ef96943a3bf76185fb9bbbf2c6a73e7d20a473d7325235ddd2fe02e672fc6de55cfefd9f40a6345d1cffb
6
+ metadata.gz: dae90605decc718a32d01b61876acfd37d036b4ebf5b321aff3cbd929091f6055a5bd0bf9bc32866748c921ba62fb2650edd7b899d118ee3d04a24ea91ac282e
7
+ data.tar.gz: 8efdb8a2fa82c72d643729802ae8d554d95fef7c8fdd652bf8ac4fad36c6552312c048647baf5260a6c24dcc702f135a283ecf3c28d95afbf5e1117ac0138a23
@@ -28,6 +28,9 @@ class Object
28
28
  key = key_class.name.gsub(/::/, '.')
29
29
  key = 'class.' + key + subkey
30
30
 
31
+ unless options.key?(:original_throw)
32
+ options[:original_throw] = options.delete(:throw)
33
+ end
31
34
  options.merge!(throw: true)
32
35
  result = catch(:exception) do
33
36
  I18n.t(key, *args, options)
@@ -40,7 +43,8 @@ class Object
40
43
  end
41
44
 
42
45
  if key_class.superclass == Object || key_class == Object
43
- options[:description] ||
46
+ return options[:description] if options[:description].present?
47
+ throw :exception, result if options[:original_throw]
44
48
  (options[:original_missing] && options[:original_missing].message) ||
45
49
  result.message
46
50
  else
@@ -1,3 +1,3 @@
1
1
  module Coaster
2
- VERSION = '0.0.4'
2
+ VERSION = '0.0.5'
3
3
  end
@@ -27,6 +27,13 @@ module Coaster
27
27
  assert_equal 'translation missing: en.class.Coaster.NotTranslated.self', NotTranslated._translate
28
28
  end
29
29
 
30
+ def test_raise_translation_missing
31
+ exception = catch(:exception) do
32
+ NotTranslated._translate(throw: true)
33
+ end
34
+ assert_equal(I18n::MissingTranslation, exception.class)
35
+ end
36
+
30
37
  def test_translation_sub
31
38
  assert_equal 'Coaster SampleObject Title', SampleObject._translate('.title')
32
39
  assert_equal 'Coaster SampleObject Title', SampleObject._translate(:title)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coaster
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - buzz jung