pipekit 1.0.1 → 1.0.2

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
  SHA1:
3
- metadata.gz: 981bfd42ed2e6376d3c1be868c3bdf613cc9db3c
4
- data.tar.gz: 19a904f8f395f64092e0eb7d53dbf927c2c6a225
3
+ metadata.gz: e6630a46d845c5cba3718d5205de34483f31ef26
4
+ data.tar.gz: d69d610fad989fde415d30eaf538d69af1edd646
5
5
  SHA512:
6
- metadata.gz: 34a620ac856281d038cb4f24feffd15be0d06b64f64eb7475e02161f9b80f8d794712d4f5778d020e928b96379b9c19cd634c0c18ecc0ee10fd131e29541c693
7
- data.tar.gz: 48809728f9edfca1c12abc4b6ec5e4bb11b7ec6a453ee607229c63d1c044da49e31c36b04e9dd865ab21ed93f99467642b6ca1bddfe976a3bf17e32153e81297
6
+ metadata.gz: 311e5c001d7a53fe07935e0b39920a2b64d488aa68ae6f631ab718eff95e40ec82060c4f36ae156075a8943e52baf88f44d02314e837f26103ac9ab197367302
7
+ data.tar.gz: 378b45ecce2fd74a6e704f2adbdbb0f3f656b8e04e67d713359475849a51a16ac20f48184ae1d59603f47bf81860a78d5b26a3dbcc2e11527d72b2fa88560743
@@ -10,16 +10,22 @@ module Pipekit
10
10
  search_fields("name", name)
11
11
  end
12
12
 
13
- def find_label(field:,id:)
14
- find_values(field).find({}) { |value| value["id"] == id }.fetch("label")
13
+ def find_label(field:, id:)
14
+ find_values(field)
15
+ .find(raise_label_not_found(field, id)) { |value| value["id"] == id.to_i }
16
+ .fetch("label", "")
15
17
  end
16
18
 
17
19
  def find_values(field)
18
- find_by(name: field)["options"]
20
+ find_by(name: field).fetch("options", [], choose_first_value: false)
19
21
  end
20
22
 
21
23
  private
22
24
 
25
+ def raise_label_not_found(field, id)
26
+ -> { raise LabelNotFoundError.new(field, id) }
27
+ end
28
+
23
29
  def search_fields(field_element, value)
24
30
  result = request.get.select { |element| element[field_element] == value }
25
31
 
@@ -30,5 +36,18 @@ module Pipekit
30
36
  def parent_resource
31
37
  resource.chomp("Field")
32
38
  end
39
+
40
+ end
41
+
42
+ class LabelNotFoundError < StandardError
43
+
44
+ def initialize(field, id)
45
+ @field = field
46
+ @id = id
47
+ end
48
+
49
+ def message
50
+ "Could not find label for id: #{@id} with field: #{@field}"
51
+ end
33
52
  end
34
53
  end
@@ -1,3 +1,3 @@
1
1
  module Pipekit
2
- VERSION = "1.0.1"
2
+ VERSION = "1.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pipekit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - jafrog