update_cardinals_by 0.1.0 → 0.2.0

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: 0f0c9aa2f3667c4925560e59e838b79a294b918f48dda0f7092b01e476ad0c40
4
- data.tar.gz: cdd625ca542d8d09e7d4ac17a03e48862f569d42a1694bfb94751780b4ed37c0
3
+ metadata.gz: 8e543f2da218b298efab597204971e384f20abae47b759e8897f4618212d2e46
4
+ data.tar.gz: 3b1e9d44200165458389d033d65e7a98c58603d54df313b9efa100a7412b9e5e
5
5
  SHA512:
6
- metadata.gz: 6ff4b4a4137503a08368116b1b0f213bb41fe08a0d3ca06c8ba44694ca3d00d62e0ee54072efb418737b15af9f987022e9427a0a418e498f2816c5692b83e258
7
- data.tar.gz: 382d155ff8ddc7b3aae7bc9936ee6d6186ac1f55e27dc444249fb23fda69c52c7cf0aa6c28f4c5fed2ae762cc29d6dc85b9faee7f4d704b08b537b2c28cbcd4f
6
+ metadata.gz: 52db2ed4276e33fd047d9c16399bd3269b8e8a14258ce84f09b1cd4fe8b5e380252ded9f8e88a079ef8a315c58fb7711613c30a6d1f9017aa616a72f93ce2431
7
+ data.tar.gz: 2d653a6f9e33ad54ed929da08c36568d398a74bba26031d3234e5324fd1f01a372372f1338271be76165a9b4854fbdd6616a8c27b6e41cb36c552ee0954380f4
data/README.md CHANGED
@@ -37,6 +37,8 @@ end
37
37
 
38
38
  ## Changelog
39
39
 
40
+ 0.2.0 changed activerecord support to 5.2 and 6.0
41
+
40
42
  0.1.0 changed activerecord support from 4.2 to 5.0 and 5.1
41
43
 
42
44
  ## Developing
@@ -26,7 +26,10 @@ module UpdateCardinalsBy
26
26
 
27
27
  yield res if block_given?
28
28
 
29
- res.each { |attr, v| raw_write_attribute attr, v }
29
+ res.each do |attr, v|
30
+ write_attribute attr, v
31
+ clear_attribute_change attr
32
+ end
30
33
  end
31
34
  end
32
35
  end
@@ -1,3 +1,3 @@
1
1
  module UpdateCardinalsBy
2
- VERSION = "0.1.0"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -15,23 +15,26 @@ class Account < ActiveRecord::Base
15
15
  end
16
16
 
17
17
  describe UpdateCardinalsBy do
18
- let(:account) { Account.create credits: 100, money: BigDecimal(12, 34) }
18
+ let(:account) { Account.create credits: 100, money: BigDecimal("12.34") }
19
19
 
20
20
  describe 'update_cardinals_by!' do
21
21
  it 'accepts positive change' do
22
- account.update_by!(credits: 20, money: BigDecimal(3, 16))
22
+ account.update_by!(credits: 20, money: BigDecimal("3.16"))
23
23
  expect(account.credits).to eq 120
24
- expect(account.money).to eq BigDecimal(15, 50)
24
+ expect(account.money).to eq BigDecimal("15.50")
25
+ account.reload
26
+ expect(account.credits).to eq 120
27
+ expect(account.money).to eq BigDecimal("15.50")
25
28
  end
26
29
 
27
30
  it 'accepts negative change' do
28
- account.update_by!(credits: -20, money: -BigDecimal(1, 24))
31
+ account.update_by!(credits: -20, money: -BigDecimal("1.24"))
29
32
  expect(account.credits).to eq 80
30
- expect(account.money).to eq BigDecimal(11, 10)
33
+ expect(account.money).to eq BigDecimal("11.10")
31
34
  end
32
35
 
33
- it 'leaves leaves the instance in a saved state' do
34
- account.update_by!(credits: 20, money: BigDecimal(3, 16))
36
+ it 'leaves the instance in a saved state' do
37
+ account.update_by!(credits: 20, money: BigDecimal("3.16"))
35
38
  expect(account.changed?).to be_falsy
36
39
  end
37
40
 
@@ -42,10 +45,10 @@ describe UpdateCardinalsBy do
42
45
  end
43
46
 
44
47
  it 'passes the right types to the block' do
45
- account.update_cardinals_by!(credits: 20, money: BigDecimal(3, 16)) do |res|
48
+ account.update_cardinals_by!(credits: 20, money: BigDecimal("3.16")) do |res|
46
49
  expect(res[:credits]).to be_a Integer
47
50
  expect(res[:money]).to be_a BigDecimal
48
51
  end
49
52
  end
50
53
  end
51
- end
54
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: update_cardinals_by
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hampei
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-02 00:00:00.000000000 Z
11
+ date: 2020-10-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '5.0'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '5.2'
22
+ version: '6.1'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '5.0'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '5.2'
32
+ version: '6.1'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: pg
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -147,7 +147,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
147
147
  - !ruby/object:Gem::Version
148
148
  version: '0'
149
149
  requirements: []
150
- rubygems_version: 3.0.2
150
+ rubygems_version: 3.0.6
151
151
  signing_key:
152
152
  specification_version: 4
153
153
  summary: postgres database extension to increment/decrement values safely and get