skalka 0.2.1 → 0.3.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: c558e0b2f03dc122f6a188e4af2b33f2164985ad170379ae74a3a94f65ad4229
4
- data.tar.gz: 7dc9ed1b8322e19b7252cbf5e1483adcf854aafadc028476e55b2abe62611edb
3
+ metadata.gz: c70c936569d44cb79fe41c6ad86d2c4a9c43bfb787b79e285c83585e425ea7f1
4
+ data.tar.gz: a4449fd3ecccce7d9e20fc7e23cb91e4f85771ae9ab390bed9fcf9af36d117e2
5
5
  SHA512:
6
- metadata.gz: 9cafcff73078d423dc9723045c9fbacad3bf832aeb40543dfb39021fc65051701fbc652b1203b08cfae7d5b12008e9240e78342e8dd9dfc16dd8f9b3540928ef
7
- data.tar.gz: 400907919983d610a5fcfe7786b40f2cb16ff8dcec5d3e7c6a75f264b974cda45a872b1cea1247fcd6569d55b8a87161892d339f3d02ae12b9269937b55e599a
6
+ metadata.gz: 115ca2f626cc8b10c918118a5dd05fe966f529ef87336593d5cf7be3877131c5d130847a97c2294f339315c77ba96d78e06e73811f2d8c6f3e5759e3f8d1209b
7
+ data.tar.gz: 5492c631a829f42c170dd2c99bf3d345e93d0164ded21c881b197894149e8e13f8f2007ad9eba4874a52586978372d83eba0133235e6da9ebe5970be4c852224
data/.rubocop.yml CHANGED
@@ -2,18 +2,6 @@ AllCops:
2
2
  TargetRubyVersion: 2.5
3
3
  DisplayCopNames: true
4
4
 
5
- RSpec/MultipleExpectations:
6
- Enabled: false
7
-
8
- RSpec/ExampleLength:
9
- Enabled: false
10
-
11
- RSpec/RepeatedDescription:
12
- Enabled: false
13
-
14
- RSpec/MessageSpies:
15
- EnforcedStyle: receive
16
-
17
5
  Style/AndOr:
18
6
  Enabled: false
19
7
 
@@ -57,7 +45,7 @@ Layout/AlignParameters:
57
45
  - with_first_parameter
58
46
  - with_fixed_indentation
59
47
 
60
- Lint/EndAlignment:
48
+ Layout/EndAlignment:
61
49
  EnforcedStyleAlignWith: variable
62
50
  SupportedStylesAlignWith:
63
51
  - keyword
@@ -17,6 +17,8 @@ module Skalka
17
17
  module_function
18
18
 
19
19
  def deattribute(item)
20
+ return {} if item.empty?
21
+
20
22
  {
21
23
  id: item[:id].to_i,
22
24
  **item[:attributes]
@@ -5,6 +5,8 @@ module Skalka
5
5
  module_function
6
6
 
7
7
  def build(item)
8
+ return {} if item.empty?
9
+
8
10
  {
9
11
  **Functions[:deattribute][item],
10
12
  **attributes(item)
@@ -1,3 +1,3 @@
1
1
  module Skalka
2
- VERSION = "0.2.1".freeze
2
+ VERSION = "0.3.0".freeze
3
3
  end
data/lib/skalka.rb CHANGED
@@ -8,9 +8,13 @@ module Skalka
8
8
  autoload :Resource, "skalka/resource"
9
9
  autoload :NestedResource, "skalka/nested_resource"
10
10
 
11
+ NullJsonError = Class.new(StandardError)
12
+
11
13
  module_function
12
14
 
13
15
  def call(json)
16
+ raise_null_json_error if json.nil?
17
+
14
18
  parsed_json = Functions[:parse_and_symbolize_keys][json]
15
19
 
16
20
  {
@@ -18,4 +22,8 @@ module Skalka
18
22
  **Functions[:extra_fields][parsed_json]
19
23
  }
20
24
  end
25
+
26
+ private def raise_null_json_error
27
+ raise NullJsonError, "JSON is nil"
28
+ end
21
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: skalka
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Emil Shakirov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-04-23 00:00:00.000000000 Z
11
+ date: 2018-04-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -76,7 +76,6 @@ files:
76
76
  - ".gitignore"
77
77
  - ".rspec"
78
78
  - ".rubocop.yml"
79
- - ".tool-versions"
80
79
  - Gemfile
81
80
  - LICENSE.txt
82
81
  - README.md
data/.tool-versions DELETED
@@ -1 +0,0 @@
1
- ruby 2.5.0