cirro-ruby-client 1.2.0 → 1.2.1

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: 4345f8d02b4f3afcc21cd23b3b0c2edcfadeeeeb887dd0e7c7f501b5bb2ced40
4
- data.tar.gz: 00ee7217ad02c180d22cae50b5c23a915a8998c47efacf68e99c7da630e4d255
3
+ metadata.gz: ae8201867c4e81773872690ee39df951dfb161d68cdf4ab10807a497a8e2744b
4
+ data.tar.gz: 59b06b8045b93026ddae29649542f54398ecc5c8fd5eb727608709153bcd57ea
5
5
  SHA512:
6
- metadata.gz: ec030038393796f3dcac6ccc457453100584e8fc2aeb4d2f9016a2b3d2cd004078e6155062bd940584909659f1e026cd325b0c2702dd7936afe80d03f7b7580e
7
- data.tar.gz: '0853aff5207749a568f87fce5bf43d87ab47d883513c1c389f15d10398f71ce7d8f5ca4fced3e7f49aec4b042b74a34ccd2573a73d3c9fd2234c4de11fec3e0c'
6
+ metadata.gz: 6e664faa51a535dec4b7544c5bd43870e31dfa014d3f5e8665df7c20f4a6fa075529b226ae9835276105e229a86ab020cdfc005662bc5f972d587a43cba40515
7
+ data.tar.gz: f3263a656d9d2cc6500233dafdd40d47dee4727a3d1d1b4e9f464a4ecdc4e2c399b8a728360061b498f32dc77c30dfed40515560ce8b33ad01bdd6031b002861
data/Gemfile CHANGED
@@ -5,8 +5,6 @@ gemspec
5
5
 
6
6
  gem 'rake', '~> 12.0'
7
7
  gem 'rspec', '~> 3.0'
8
- # tempprary till my PR gets approved in original gem
9
- gem 'json_api_client', git: 'https://github.com/inderps/json_api_client'
10
8
 
11
9
  group :development do
12
10
  gem 'faker'
@@ -1,20 +1,9 @@
1
- GIT
2
- remote: https://github.com/inderps/json_api_client
3
- revision: 675e1c8b1bf9978ca4722c2aa19314fb0aa5860b
4
- specs:
5
- json_api_client (1.17.1)
6
- activemodel (>= 3.2.0)
7
- activesupport (>= 3.2.0)
8
- addressable (~> 2.2)
9
- faraday (>= 0.15.2, < 1.2.0)
10
- faraday_middleware (>= 0.9.0, < 1.2.0)
11
- rack (>= 0.2)
12
-
13
1
  PATH
14
2
  remote: .
15
3
  specs:
16
- cirro-ruby-client (1.1.0)
4
+ cirro-ruby-client (1.2.1)
17
5
  faraday_middleware
6
+ json_api_client
18
7
  jwt
19
8
 
20
9
  GEM
@@ -37,13 +26,21 @@ GEM
37
26
  diff-lcs (1.4.4)
38
27
  faker (2.14.0)
39
28
  i18n (>= 1.6, < 2)
40
- faraday (1.0.1)
29
+ faraday (1.1.0)
41
30
  multipart-post (>= 1.2, < 3)
31
+ ruby2_keywords
42
32
  faraday_middleware (1.0.0)
43
33
  faraday (~> 1.0)
44
34
  hashdiff (1.0.1)
45
35
  i18n (1.8.5)
46
36
  concurrent-ruby (~> 1.0)
37
+ json_api_client (1.17.1)
38
+ activemodel (>= 3.2.0)
39
+ activesupport (>= 3.2.0)
40
+ addressable (~> 2.2)
41
+ faraday (>= 0.15.2, < 1.2.0)
42
+ faraday_middleware (>= 0.9.0, < 1.2.0)
43
+ rack (>= 0.2)
47
44
  jwt (2.2.2)
48
45
  method_source (1.0.0)
49
46
  minitest (5.14.2)
@@ -87,6 +84,7 @@ GEM
87
84
  rubocop-rspec (1.43.2)
88
85
  rubocop (~> 0.87)
89
86
  ruby-progressbar (1.10.1)
87
+ ruby2_keywords (0.0.2)
90
88
  thread_safe (0.3.6)
91
89
  tzinfo (1.2.8)
92
90
  thread_safe (~> 0.1)
@@ -103,7 +101,6 @@ PLATFORMS
103
101
  DEPENDENCIES
104
102
  cirro-ruby-client!
105
103
  faker
106
- json_api_client!
107
104
  pry
108
105
  rake (~> 12.0)
109
106
  rspec (~> 3.0)
@@ -27,4 +27,5 @@ Gem::Specification.new do |spec|
27
27
 
28
28
  spec.add_runtime_dependency 'jwt'
29
29
  spec.add_runtime_dependency 'faraday_middleware'
30
+ spec.add_runtime_dependency 'json_api_client'
30
31
  end
@@ -0,0 +1,33 @@
1
+ module JsonApiClient
2
+ module Associations
3
+ class BaseAssociation
4
+ attr_reader :attr_name, :klass, :options
5
+ def initialize(attr_name, klass, options = {})
6
+ @attr_name = attr_name
7
+ @klass = klass
8
+ @options = options
9
+ end
10
+
11
+ def association_class
12
+ @association_class ||= Utils.compute_type(klass, options.fetch(:class_name) do
13
+ attr_name.to_s.classify
14
+ end)
15
+ end
16
+
17
+ def data(url)
18
+ from_result_set(association_class.requestor.linked(url))
19
+ end
20
+
21
+ def from_result_set(result_set)
22
+ result_set.to_a
23
+ end
24
+
25
+ def load_records(data)
26
+ data.map do |d|
27
+ record_class = Utils.compute_type(klass, klass.key_formatter.unformat(d['type']).classify)
28
+ record_class.load id: d['id']
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -1,4 +1,10 @@
1
1
  require 'json_api_client'
2
+
3
+ # temporary monkey patch code to fix gem bug
4
+ require 'cirro_io/has_one'
5
+ require 'cirro_io/base_association'
6
+ # temporary monkey patch code to fix gem bug
7
+
2
8
  require 'cirro_io/client/version'
3
9
  require 'cirro_io/client/configuration'
4
10
  require 'cirro_io/client/response_debugging_middleware'
@@ -1,7 +1,7 @@
1
1
  # rubocop:disable Style/MutableConstant
2
2
  module CirroIO
3
3
  module Client
4
- VERSION = '1.2.0'
4
+ VERSION = '1.2.1'
5
5
  end
6
6
  end
7
7
  # rubocop:enable Style/MutableConstant
@@ -0,0 +1,16 @@
1
+ module JsonApiClient
2
+ module Associations
3
+ module HasOne
4
+ class Association < BaseAssociation
5
+ def from_result_set(result_set)
6
+ result_set.first
7
+ end
8
+
9
+ def load_records(data)
10
+ record_class = Utils.compute_type(klass, klass.key_formatter.unformat(data['type']).classify)
11
+ record_class.load id: data['id']
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cirro-ruby-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cirro Dev Team
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: json_api_client
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  description: Simple wrapper for Cirro API
42
56
  email:
43
57
  - OrgtestIODevelopers@epam.com
@@ -60,6 +74,7 @@ files:
60
74
  - bin/console
61
75
  - bin/setup
62
76
  - cirro-ruby-client.gemspec
77
+ - lib/cirro_io/base_association.rb
63
78
  - lib/cirro_io/client.rb
64
79
  - lib/cirro_io/client/app_user.rb
65
80
  - lib/cirro_io/client/app_worker.rb
@@ -74,6 +89,7 @@ files:
74
89
  - lib/cirro_io/client/response_debugging_middleware.rb
75
90
  - lib/cirro_io/client/version.rb
76
91
  - lib/cirro_io/client/worker_invitation_filter.rb
92
+ - lib/cirro_io/has_one.rb
77
93
  homepage: https://cirro.io/api-docs/v1#cirro-api-documentation
78
94
  licenses:
79
95
  - MIT