barkibu-kb-fake 0.22.0 → 0.24.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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cdef31e4e3df497d536d8205adeacdaa90e709c015a55e36950ddcc3b10ea460
|
4
|
+
data.tar.gz: 470e3b494ef720a8ea0c4fc4960cc49908d076505c147d340383172fe0184564
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f508745511b66f260d8d21e278bc0982679a33bc96c2b4fcc451695e8c7da04902e42cd566877c837aa93bccce9aa0b2559702eec8559bbba78984d0175b490c
|
7
|
+
data.tar.gz: 3c742c793f46474432df69205d2f479a2bc6f1925602171345990a51c51c6be8a70c5bc7fcb27e3397bb60a7c91dba890ac12fdeca41a7f4791923e945f76fd4
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module BoundedContext
|
2
|
+
module Paginable
|
3
|
+
extend ActiveSupport::Concern
|
4
|
+
|
5
|
+
included do
|
6
|
+
def paginate(list)
|
7
|
+
list = list.to_a
|
8
|
+
page = params.fetch('page', 1).to_i
|
9
|
+
page_size = params.fetch('size', 10).to_i
|
10
|
+
offset = (page - 1) * page_size
|
11
|
+
|
12
|
+
{ total: list.size,
|
13
|
+
page: page,
|
14
|
+
elements: list[offset, page_size] }
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -1,12 +1,15 @@
|
|
1
1
|
require 'kb/fake/bounded_context/rest_resource'
|
2
|
+
require 'kb/fake/bounded_context/paginable'
|
2
3
|
|
3
4
|
module BoundedContext
|
4
5
|
module PetFamily
|
5
6
|
module PetContracts
|
6
7
|
extend ActiveSupport::Concern
|
7
8
|
|
9
|
+
# rubocop:disable Metrics/BlockLength
|
8
10
|
included do
|
9
11
|
include RestResource
|
12
|
+
include Paginable
|
10
13
|
|
11
14
|
get '/v1/petcontracts/contractnumber/:contract_number' do
|
12
15
|
resource = resource_state(:petcontracts).detect do |contract|
|
@@ -17,8 +20,24 @@ module BoundedContext
|
|
17
20
|
json_response 200, resource
|
18
21
|
end
|
19
22
|
|
23
|
+
get '/v1/petcontracts/search' do
|
24
|
+
return json_response 400, {} unless params['chip']
|
25
|
+
|
26
|
+
pet_by_chip = resource_state(:pets).detect do |pet|
|
27
|
+
pet['chip'] == params['chip']
|
28
|
+
end
|
29
|
+
return json_response 200, paginate([]) if pet_by_chip.nil?
|
30
|
+
|
31
|
+
contracts = resource_state(:petcontracts).select do |contract|
|
32
|
+
contract['petKey'] == pet_by_chip['key']
|
33
|
+
end
|
34
|
+
|
35
|
+
json_response 200, paginate(contracts)
|
36
|
+
end
|
37
|
+
|
20
38
|
resource :petcontracts, except: %i[index destroy]
|
21
39
|
end
|
40
|
+
# rubocop:enable Metrics/BlockLength
|
22
41
|
end
|
23
42
|
end
|
24
43
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: barkibu-kb-fake
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.24.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Léo Figea
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-03-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: barkibu-kb
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.24.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 0.24.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: countries
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -77,6 +77,7 @@ files:
|
|
77
77
|
- lib/barkibu-kb-fake.rb
|
78
78
|
- lib/kb/fake.rb
|
79
79
|
- lib/kb/fake/api.rb
|
80
|
+
- lib/kb/fake/bounded_context/paginable.rb
|
80
81
|
- lib/kb/fake/bounded_context/pet_family/breeds.rb
|
81
82
|
- lib/kb/fake/bounded_context/pet_family/hubspot_relationship.rb
|
82
83
|
- lib/kb/fake/bounded_context/pet_family/pet_contracts.rb
|