update_cardinals_by 0.1.0 → 0.2.0

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
  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