swifter_enum 0.9.5 → 0.9.6

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
  SHA256:
3
- metadata.gz: bc3b347202fe12dc7e9ee2c8fa4eb651c614ba0dad8e94ad1d7e8672ec4b277f
4
- data.tar.gz: f93a2c4c0c713f89499ae18e80398757295ed15c4cb2b71b36c2254f121450d3
3
+ metadata.gz: bc0cc85f030b595af2b26f01beabc39a89ca0b93225e15f89dbe4bb42a584769
4
+ data.tar.gz: 4b59b30641a70706fd33cf194ae9d3fb74dc9bb79431dcaf125be229df73853e
5
5
  SHA512:
6
- metadata.gz: 1d735965c2dd2a7db1e286285b3ec36871d3731f37fc824b11a0d1a7f7f5834b3de0be6568300df84cbbe13abcfc650b90a32a3dda42b8109df0b8d213cd6d6f
7
- data.tar.gz: c733bb8c4abd3c67c7a98b22a8c27da3eff45f517ceab52e5938a59a691c6a406b0304914ef9028a3f6fce3830737c02dce9b57f6288c7ae0d6f0c52a7866e77
6
+ metadata.gz: e76f0fdc3fc9fdce9f4765ec015c1081f24b7a39ae406969156e40912f5265174050aca81167d6d5631540e26531f604f7b80ad0cd7ae4c3efb63413f0f2cf1c
7
+ data.tar.gz: 95e05c2e64a25feb0de2c20b62cca2faa522bd55b173b8c592cb56ed30b847dc645391dae8da7dfb69dfe3d555feade28f3968004dc2b84b6337f204abb3f9dd
@@ -43,8 +43,6 @@ module SwifterEnum
43
43
  end
44
44
 
45
45
  def t
46
- return nil if value.nil?
47
-
48
46
  I18n.t("swifter_enum.#{self.class.name.demodulize.underscore}.#{value}")
49
47
  end
50
48
 
@@ -16,7 +16,8 @@ module SwifterEnum
16
16
 
17
17
  # Define getter method
18
18
  define_method(enum_name) do
19
- enum_klass.new(read_attribute(enum_name))
19
+ attribute = read_attribute(enum_name)
20
+ enum_klass.new(attribute) if attribute.present?
20
21
  end
21
22
 
22
23
  # Define setter method
@@ -3,18 +3,18 @@ require "active_model"
3
3
  module SwifterEnum
4
4
  class SwifterEnumValidator < ActiveModel::EachValidator
5
5
  def validate_each(record, attribute, a_value)
6
- if !a_value.is_a?(SwifterEnum::Base) || a_value.instance_of?(SwifterEnum::Base)
7
- record.errors.add(attribute, "#{a_value.value} is not a valid subclass of SwifterEnum")
8
- end
9
-
10
- if a_value.value.nil?
6
+ if a_value.nil?
11
7
  return if options[:allow_nil]
12
8
 
13
9
  record.errors.add(attribute, "nil value for #{attribute} is not allowed")
10
+ return
11
+ end
12
+
13
+ if !a_value.is_a?(SwifterEnum::Base) || a_value.instance_of?(SwifterEnum::Base)
14
+ record.errors.add(attribute, "#{a_value.value} is not a valid subclass of SwifterEnum")
14
15
  end
15
16
 
16
17
  unless a_value.class.values.key?(a_value.value)
17
- # binding.b
18
18
  record.errors.add(attribute, "#{a_value.value} is not a valid #{attribute} type")
19
19
  end
20
20
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SwifterEnum
4
- VERSION = "0.9.5"
4
+ VERSION = "0.9.6"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: swifter_enum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.5
4
+ version: 0.9.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rob Jonson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-03-19 00:00:00.000000000 Z
11
+ date: 2024-09-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord