ree_lib 1.0.75 → 1.0.77

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: ce1a7a42b2936e86f44691bec23557e4e04f72e154202ab2a414257fd1fe304a
4
- data.tar.gz: aea223cb572a0057a0c2e456c2940a050d6fa344f37297e205215cc2e38f1220
3
+ metadata.gz: 7f828e49751333dd0c669d75a7066a838f9149d4ab8923ab788e53f84c61aae4
4
+ data.tar.gz: b247a24875f2c0a9caa9b5fcfbe5452e0a3c48af7d0ff2c0bd385820ce37c709
5
5
  SHA512:
6
- metadata.gz: b8d8f51cd4fbe458d815568a8d10bb85577f4a62cf13663282fedfc45741917a4855eb0611b011e078c1b9c38256a5a10c9b28641ed65b4e1eedf0b442a47af1
7
- data.tar.gz: 41195673e8f6c05f6b367af2ed170f71b06626dcbc88e9742f29b2161902cd5b7395b81deee946900b3e339381e2202c70d6e9c592a680e7b4f829f195cb7e5c
6
+ metadata.gz: 0d3717364f0554a3e36097431856fb3db75099bb34fd57dc6eabfffa4e57baa2e66a81a59da5206e980dcfef1339c3cc50078fb1242973efbc9df67550ea0716
7
+ data.tar.gz: ad0297ec030fd912995b4b740685c017f0a114084cbed83579d42c507a06fd0e70eb2a267c030d12b2763f649dd201cb3d9003684b2843e3105073da8ebff4cf
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.1.2
1
+ 3.2.0
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ree_lib (1.0.75)
4
+ ree_lib (1.0.77)
5
5
  binding_of_caller (~> 1.0.0)
6
6
  i18n (~> 1.12.0)
7
7
  loofah (~> 2.18.0)
@@ -37,10 +37,10 @@ GEM
37
37
  loofah (2.18.0)
38
38
  crass (~> 1.0.2)
39
39
  nokogiri (>= 1.5.9)
40
- mini_portile2 (2.8.1)
41
40
  msgpack (1.6.0)
42
- nokogiri (1.13.10)
43
- mini_portile2 (~> 2.8.0)
41
+ nokogiri (1.15.4-x86_64-darwin)
42
+ racc (~> 1.4)
43
+ nokogiri (1.15.4-x86_64-linux)
44
44
  racc (~> 1.4)
45
45
  oj (3.13.23)
46
46
  pg (1.4.6)
@@ -83,14 +83,14 @@ module ReeDao
83
83
  return if entities.empty?
84
84
 
85
85
  mapper = opts[:schema_mapper]
86
- columns = columns
86
+ columns = self.columns
87
87
  raw = {}
88
88
 
89
89
  columns.delete(:id)
90
90
  columns.delete(:row)
91
91
 
92
92
  data = entities.map do |entity|
93
- hash = mapper.to_hash(entity)
93
+ hash = mapper.db_dump(entity)
94
94
  raw[entity] = hash
95
95
 
96
96
  columns.map { hash[_1] }
@@ -229,7 +229,13 @@ module ReeDao
229
229
 
230
230
  def set_entity_primary_key(entity, raw, key)
231
231
  if key && !primary_key.is_a?(Array)
232
- entity.instance_variable_set("@#{primary_key}", key)
232
+ if entity.respond_to?("#{primary_key}=")
233
+ entity.send("#{primary_key}=", key)
234
+ elsif entity.respond_to?("set_#{primary_key}")
235
+ entity.send("set_#{primary_key}", key)
236
+ else
237
+ entity.instance_variable_set("@#{primary_key}", key)
238
+ end
233
239
  raw[primary_key] = key
234
240
  end
235
241
  end
@@ -147,4 +147,14 @@ RSpec.describe :build_pg_connection do
147
147
  expect(product.info[:price]).to eq(1440)
148
148
  expect(product.labels).to eq(["Sale", "New"])
149
149
  }
150
+
151
+ it "insert multiple records" do
152
+ products_dao.delete_all
153
+
154
+ products = Array.new(3) { |i| ReeDaoTestPg::Product.new(title: "Product#{i}", info: { price: 1337, count: 200 }, labels: ["Sale"]) }
155
+
156
+ products_dao.import_all(products)
157
+
158
+ expect(products_dao.count).to eq 3
159
+ end
150
160
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ReeLib
4
- VERSION = "1.0.75"
4
+ VERSION = "1.0.77"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ree_lib
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.75
4
+ version: 1.0.77
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ruslan Gatiyatov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-09-04 00:00:00.000000000 Z
11
+ date: 2023-10-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ree
@@ -1391,7 +1391,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1391
1391
  - !ruby/object:Gem::Version
1392
1392
  version: '0'
1393
1393
  requirements: []
1394
- rubygems_version: 3.3.24
1394
+ rubygems_version: 3.4.1
1395
1395
  signing_key:
1396
1396
  specification_version: 4
1397
1397
  summary: Ruby Standard Library Extensions