skalka 0.2.1 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
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