dynamini 1.5.5 → 1.5.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
  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