dynamini 1.5.5 → 1.5.6

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2328b594d1db58e30c427723c779d859312e91c5
4
- data.tar.gz: e99ff5169d2692459729071f744dbd75e3818c81
3
+ metadata.gz: 0e427114dd548cfe317e0580dcd3ec5ed6343ea8
4
+ data.tar.gz: ceb92ada2631b6e7151ed5f99d4dff1aab5c592e
5
5
  SHA512:
6
- metadata.gz: bcdf41d28e1b12d849f1f9dde656ee139f2f7f22b1eec857bc55f2682c7c90b150115e7000020776ee8d2d48aae4213f6c36e8d8b6700db4949a7cf7aa532f12
7
- data.tar.gz: 71803558d88f72f862911dc121be166fc1e055e2ae8aa6874d49209e3ed02235797bc13db4ff131a9e55991bac42cc856fe129566d50d92df896a88db575570d
6
+ metadata.gz: 9e8de3beb6c4d2cf9c82017b6e938da40de1571cd39ca9069e65846993c0d8720fdaf2a504acc4bbb34982e735d4d6513b37ff170499885a981cf34320a1dbb3
7
+ data.tar.gz: cfb3074cda731b09b8bf4a3ac4fa85beb1da8d5cf3b0c4eb43550bd7da1abdfb1c5641283868160e780771ca47d6a03c42e097325b1f337df3540218f101c06c
@@ -326,12 +326,10 @@ module Dynamini
326
326
 
327
327
  def validate_incrementable_attribute(attribute, value)
328
328
  if value.is_a?(Integer) || value.is_a?(Float)
329
- current_value = self.send(attribute)
330
- unless current_value.nil? || current_value.is_a?(Integer) || current_value.is_a?(Float)
329
+ current_value = read_attribute(attribute)
330
+ unless current_value.nil? || current_value.is_a?(Integer) || current_value.is_a?(Float) || current_value.is_a?(BigDecimal)
331
331
  fail StandardError, "Cannot increment a non-numeric non-nil value:
332
- #{attribute} is currently #{current_value}.
333
- If your current value is a numeric string,
334
- use :handle to autocast it as a number."
332
+ #{attribute} is currently #{current_value}, a #{current_value.class}."
335
333
  end
336
334
  else
337
335
  fail StandardError, "You cannot increment an attribute by a
@@ -73,7 +73,7 @@ module Dynamini
73
73
  args[:attribute_updates].each do |k, v|
74
74
  if v[:action] == 'ADD' && @data[args[:table_name]][args[:key][hash_key]]
75
75
  # if record has been saved
76
- attribute_hash[k] = (v[:value] + @data[args[:table_name]][args[:key][hash_key]][k].to_f).to_s
76
+ attribute_hash[k] = (v[:value] + @data[args[:table_name]][args[:key][hash_key]][k].to_f)
77
77
  else
78
78
  attribute_hash[k] = v[:value].to_s
79
79
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dynamini
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.5
4
+ version: 1.5.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Greg Ward
@@ -21,76 +21,76 @@ dependencies:
21
21
  name: activemodel
22
22
  requirement: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3'
27
- - - <
27
+ - - "<"
28
28
  - !ruby/object:Gem::Version
29
29
  version: '5.0'
30
30
  type: :runtime
31
31
  prerelease: false
32
32
  version_requirements: !ruby/object:Gem::Requirement
33
33
  requirements:
34
- - - '>='
34
+ - - ">="
35
35
  - !ruby/object:Gem::Version
36
36
  version: '3'
37
- - - <
37
+ - - "<"
38
38
  - !ruby/object:Gem::Version
39
39
  version: '5.0'
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: aws-sdk
42
42
  requirement: !ruby/object:Gem::Requirement
43
43
  requirements:
44
- - - ~>
44
+ - - "~>"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '2'
47
47
  type: :runtime
48
48
  prerelease: false
49
49
  version_requirements: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - ~>
51
+ - - "~>"
52
52
  - !ruby/object:Gem::Version
53
53
  version: '2'
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: rspec
56
56
  requirement: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - ~>
58
+ - - "~>"
59
59
  - !ruby/object:Gem::Version
60
60
  version: '3'
61
61
  type: :development
62
62
  prerelease: false
63
63
  version_requirements: !ruby/object:Gem::Requirement
64
64
  requirements:
65
- - - ~>
65
+ - - "~>"
66
66
  - !ruby/object:Gem::Version
67
67
  version: '3'
68
68
  - !ruby/object:Gem::Dependency
69
69
  name: pry
70
70
  requirement: !ruby/object:Gem::Requirement
71
71
  requirements:
72
- - - ~>
72
+ - - "~>"
73
73
  - !ruby/object:Gem::Version
74
74
  version: '0'
75
75
  type: :development
76
76
  prerelease: false
77
77
  version_requirements: !ruby/object:Gem::Requirement
78
78
  requirements:
79
- - - ~>
79
+ - - "~>"
80
80
  - !ruby/object:Gem::Version
81
81
  version: '0'
82
82
  - !ruby/object:Gem::Dependency
83
83
  name: fuubar
84
84
  requirement: !ruby/object:Gem::Requirement
85
85
  requirements:
86
- - - ~>
86
+ - - "~>"
87
87
  - !ruby/object:Gem::Version
88
88
  version: '2'
89
89
  type: :development
90
90
  prerelease: false
91
91
  version_requirements: !ruby/object:Gem::Requirement
92
92
  requirements:
93
- - - ~>
93
+ - - "~>"
94
94
  - !ruby/object:Gem::Version
95
95
  version: '2'
96
96
  description: |-
@@ -116,17 +116,17 @@ require_paths:
116
116
  - lib
117
117
  required_ruby_version: !ruby/object:Gem::Requirement
118
118
  requirements:
119
- - - '>='
119
+ - - ">="
120
120
  - !ruby/object:Gem::Version
121
121
  version: '0'
122
122
  required_rubygems_version: !ruby/object:Gem::Requirement
123
123
  requirements:
124
- - - '>='
124
+ - - ">="
125
125
  - !ruby/object:Gem::Version
126
126
  version: '0'
127
127
  requirements: []
128
128
  rubyforge_project:
129
- rubygems_version: 2.2.2
129
+ rubygems_version: 2.4.6
130
130
  signing_key:
131
131
  specification_version: 4
132
132
  summary: DynamoDB interface