redox 1.0.1 → 1.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: 64ed984d8f77ebf8b4d713e14e86eb09065449ab0d970ab3994c876acc765216
4
- data.tar.gz: 8661675122be3a20a6b0f1168dc898f99d128e43864769161cf5c3c1511f830f
3
+ metadata.gz: 0666bbb5152f4d34f3966dad512c2b1c6bb62cd661235516ad2a123eca63e653
4
+ data.tar.gz: ec535077633c70fa241a3ee5a8af81812791e53e36f72dfcfcb87900b96a9fe5
5
5
  SHA512:
6
- metadata.gz: 51f8612124e1ada3e96eea2b3b4a8c885c356a74db04620121cb95eacffecd2502ba5bb1189c641de2e7ccce3bab04e4446c67aedd524287a649260f08126a81
7
- data.tar.gz: 822abcdb744b627ef21138e65efa19101706a234639fc70fee2a9052098b9a0e550974640acda4ec1e6cab1d7114d2d670939843de5a742c26f4766f2dd24b40
6
+ metadata.gz: 844d30e49f7d57e5ca0dd7acc91d3bbc0aac672213e7016de5f5f52cac6e77e1123f1cb94613c5521d90c2f0a7445e0174af223c1e5b93c092386f6be5d2f9d6
7
+ data.tar.gz: 1d09377d50c8729f7e3698bd2de877b3b4c081a8ec21a3b9997e0da6dbc9c5bab7f58fb6cb1da273e062443b41168bdb7178c872c8beeda77e24f8239cd7636f
@@ -4,7 +4,41 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
5
  and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6
6
 
7
- ## [1.0.1] - Unreleased
7
+ ## [1.3.0] - 2020-09-17
8
+ ### Added
9
+ - Transaction model
10
+ - Financial#create
11
+
12
+ ## [1.2.0] - 2020-07-30
13
+ ### Added
14
+ - Visit model
15
+ - Model#insurances helper for Patient.Insurances || Visit.Insurances
16
+
17
+ ## [1.1.1] - 2020-06-15
18
+ ### Changed
19
+ - Bugfix with patient param in update
20
+
21
+ ## [1.1.0] - 2020-06-15
22
+ ### Changed
23
+ - Moving to Requst classes instead of mixing in logic to models (kept backwards compatibility)
24
+ - Added potential matches to responses and implemented for patient search
25
+
26
+ =======
27
+ ### Added
28
+ - PotentialMatches class
29
+
30
+ ## [1.0.2] - 2019-06-04
31
+ ### Changed
32
+ - Added Extensions to all Redox models
33
+ - Fixed warnings in gemspec
34
+ - Fixed author emails in gemspec
35
+ - Removed packaging of bin and files starting with '.'
36
+ - Added helper file to translate Redox JSON to Hashie model.
37
+
38
+ ### Removed
39
+ - Unused response model.
40
+
41
+ ## [1.0.1] - 2019-05-02
8
42
  ### Changed
9
43
  - Check for high-level key as symbol
10
44
 
@@ -74,7 +108,12 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
74
108
  ### Added
75
109
  - Initial Release
76
110
 
77
- [Unreleased]: https://github.com/WeInfuse/redox/compare/v1.0.0...HEAD
111
+ [1.3.0]: https://github.com/WeInfuse/redox/compare/v1.2.0...v1.3.0
112
+ [1.2.0]: https://github.com/WeInfuse/redox/compare/v1.1.1...v1.2.0
113
+ [1.1.1]: https://github.com/WeInfuse/redox/compare/v1.1.0...v1.1.1
114
+ [1.1.0]: https://github.com/WeInfuse/redox/compare/v1.0.2...v1.1.0
115
+ [1.0.2]: https://github.com/WeInfuse/redox/compare/v1.0.1...v1.0.2
116
+ [1.0.1]: https://github.com/WeInfuse/redox/compare/v1.0.0...v1.0.1
78
117
  [1.0.0]: https://github.com/WeInfuse/redox/compare/v0.1.6...v1.0.0
79
118
  [0.1.6]: https://github.com/WeInfuse/redox/compare/v0.1.5...v0.1.6
80
119
  [0.1.5]: https://github.com/WeInfuse/redox/compare/v0.1.4...v0.1.5
@@ -7,10 +7,18 @@ require 'redox/authentication'
7
7
  require 'redox/models/model'
8
8
  require 'redox/models/meta'
9
9
  require 'redox/models/patient'
10
+ require 'redox/models/visit'
11
+ require 'redox/models/transaction'
12
+ require 'redox/models/financial'
10
13
  require 'redox/models/patient/demographics'
11
14
  require 'redox/models/patient/identifier'
12
15
  require 'redox/models/patient/insurance'
13
16
  require 'redox/models/patient/p_c_p'
17
+ require 'redox/models/potential_matches'
18
+ require 'redox/request/request'
19
+ require 'redox/request/financial'
20
+ require 'redox/request/patient_admin'
21
+ require 'redox/request/patient_search'
14
22
 
15
23
  module Redox
16
24
  class Configuration
@@ -0,0 +1,16 @@
1
+ module Redox
2
+ module Models
3
+ class Financial < Hashie::Trash
4
+ include Hashie::Extensions::IgnoreUndeclared
5
+ include Hashie::Extensions::IndifferentAccess
6
+
7
+ property :Visit, required: false, from: :visit, default: Redox::Models::Visit.new
8
+ property :Patient, required: false, from: :patient, default: Redox::Models::Patient.new
9
+ property :Transactions, required: false, from: :transactions, default: []
10
+
11
+ alias_method :patient, :Patient
12
+ alias_method :visit, :Visit
13
+ alias_method :transactions, :Transactions
14
+ end
15
+ end
16
+ end
@@ -1,14 +1,27 @@
1
1
  module Redox
2
2
  module Models
3
+ def self.format_datetime(d)
4
+ if d.respond_to?(:strftime)
5
+ d.strftime(Redox::Models::Meta::TO_DATETIME_FORMAT)
6
+ else
7
+ d
8
+ end
9
+ end
10
+
3
11
  class Model < Hashie::Trash
4
12
  include Hashie::Extensions::IgnoreUndeclared
5
13
  include Hashie::Extensions::IndifferentAccess
6
14
 
7
15
  property :Meta, from: :meta, required: false
8
16
  property :Patient, from: :patient, required: false
17
+ property :Visit, from: :visit, required: false
18
+ property :PotentialMatches, from: :potential_matches, required: false
19
+ property :Extensions, from: :extensions, required: false
9
20
  property :response, required: false
10
21
 
22
+ alias_method :potential_matches, :PotentialMatches
11
23
  alias_method :patient, :Patient
24
+ alias_method :visit, :Visit
12
25
  alias_method :meta, :Meta
13
26
 
14
27
  def initialize(data = {})
@@ -27,16 +40,20 @@ module Redox
27
40
  return { key => super.to_h }
28
41
  end
29
42
 
30
- def to_json
43
+ def to_json(args = {})
31
44
  return self.to_h.to_json
32
45
  end
33
46
 
47
+ def insurances
48
+ (self.patient&.insurances || []) + (self.visit&.insurances || [])
49
+ end
50
+
34
51
  class << self
35
52
  def from_response(response)
36
53
  model = Model.new
37
54
  model.response = response
38
55
 
39
- %w[Meta Patient].each do |k|
56
+ %w[Meta Patient Visit PotentialMatches].each do |k|
40
57
  begin
41
58
  model.send("#{k}=", Module.const_get("Redox::Models::#{k}").new(response[k])) if response[k]
42
59
  rescue
@@ -1,11 +1,6 @@
1
1
  module Redox
2
2
  module Models
3
3
  class Patient < Model
4
- QUERY_ENDPOINT = '/query'.freeze
5
- QUERY_META = Meta.new(EventType: 'Query', DataModel: 'PatientSearch')
6
- CREATE_META = Meta.new(EventType: 'NewPatient', DataModel: 'PatientAdmin')
7
- UPDATE_META = Meta.new(EventType: 'PatientUpdate', DataModel: 'PatientAdmin')
8
-
9
4
  property :Identifiers, from: :identifiers, required: false, default: []
10
5
  property :Insurances, from: :insurances, required: false, default: []
11
6
  property :Demographics, from: :demographics, required: false
@@ -19,6 +14,10 @@ module Redox
19
14
  self[:Demographics] ||= Demographics.new
20
15
  end
21
16
 
17
+ def insurances
18
+ self[:Insurances] = self[:Insurances].map {|ins| ins.is_a?(Redox::Models::Insurance) ? ins : Insurance.new(ins) }
19
+ end
20
+
22
21
  def primary_care_provider
23
22
  self[:PCP] ||= PCP.new
24
23
  end
@@ -36,25 +35,16 @@ module Redox
36
35
  end
37
36
 
38
37
  def update(meta: Meta.new)
39
- meta = UPDATE_META.merge(meta)
40
- return Model.from_response((RedoxClient.connection.request(body: Patient.body(self, meta))))
38
+ Redox::Request::PatientAdmin.update(patient: self, meta: meta)
41
39
  end
42
40
 
43
41
  def create(meta: Meta.new)
44
- meta = CREATE_META.merge(meta)
45
- return Model.from_response((RedoxClient.connection.request(body: Patient.body(self, meta))))
42
+ Redox::Request::PatientAdmin.create(patient: self, meta: meta)
46
43
  end
47
44
 
48
45
  class << self
49
46
  def query(params, meta: Meta.new)
50
- meta = QUERY_META.merge(meta)
51
- return Model.from_response((RedoxClient.connection.request(endpoint: QUERY_ENDPOINT, body: Patient.body(params, meta))))
52
- end
53
-
54
- def body(params, meta)
55
- meta = Meta.new.merge(meta)
56
-
57
- return meta.to_h.merge(params.to_h)
47
+ return Redox::Request::PatientSearch.query(params, meta: meta)
58
48
  end
59
49
  end
60
50
  end
@@ -0,0 +1,13 @@
1
+ module Redox
2
+ module Models
3
+ class PotentialMatches < Array
4
+ def initialize(data = [])
5
+ if false == data.nil?
6
+ super(data.map {|patient| Redox::Models::Patient.new(patient) })
7
+ else
8
+ super([])
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,62 @@
1
+ module Redox
2
+ module Models
3
+ class Transaction < Hashie::Trash
4
+ include Hashie::Extensions::IgnoreUndeclared
5
+ include Hashie::Extensions::IndifferentAccess
6
+
7
+ property :Chargeable, required: false, from: :chargeable, default: {}
8
+ property :DateTimeOfService, required: false, from: :start
9
+ property :Department, required: false, from: :department, default: {}
10
+ property :Diagnoses, required: false, from: :diagnoses, default: []
11
+ property :EndDateTime, required: false, from: :end
12
+ property :Extensions, required: false, from: :extensions, default: {}
13
+ property :ID, required: false, from: :id
14
+ property :NDC, required: false, from: :ndc, default: {}
15
+ property :OrderID, required: false, from: :order_id
16
+ property :OrderingProviders, required: false, from: :ordering_providers, default: []
17
+ property :Performers, required: false, from: :performers, default: []
18
+ property :Procedure, required: false, from: :procedure, default: {}
19
+ property :Type, required: false, from: :type
20
+
21
+ alias_method :chargeable, :Chargeable
22
+ alias_method :start, :DateTimeOfService
23
+ alias_method :department, :Department
24
+ alias_method :diagnoses, :Diagnoses
25
+ alias_method :end, :EndDateTime
26
+ alias_method :extensions, :Extensions
27
+ alias_method :id, :ID
28
+ alias_method :ndc, :NDC
29
+ alias_method :order_id, :OrderID
30
+ alias_method :ordering_providers, :OrderingProviders
31
+ alias_method :performers, :Performers
32
+ alias_method :procedure, :Procedure
33
+ alias_method :type, :Type
34
+
35
+ def add_medication(ndc_code: nil, quantity: nil, magnitude: nil, unit: nil, description: nil)
36
+ self[:NDC] = { Code: ndc_code, Description: description }
37
+ self[:Extensions] = {
38
+ 'ndc-quantity' => {
39
+ integer: quantity&.to_s
40
+ },
41
+ 'ndc-units-measure' => {
42
+ coding: {
43
+ code: magnitude&.to_s,
44
+ display: unit
45
+ }
46
+ }
47
+ }
48
+ self
49
+ end
50
+
51
+ def to_json(args = nil)
52
+ d = self.dup
53
+
54
+ [:EndDateTime, :DateTimeOfService].each do |k|
55
+ d[k] = Redox::Models.format_datetime(d[k])
56
+ end
57
+
58
+ d.to_h.to_json
59
+ end
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,41 @@
1
+ module Redox
2
+ module Models
3
+ class Visit < Model
4
+ DEFAULT_LOCATION = {
5
+ Department: nil,
6
+ Facility: nil
7
+ }
8
+
9
+ property :Insurances, from: :insurances, required: false, default: []
10
+ property :Location, from: :location, required: false, default: DEFAULT_LOCATION
11
+ property :VisitDateTime, from: :start, required: false
12
+ property :VisitNumber, from: :visit_number, required: false
13
+ property :AccountNumber, from: :account_number, required: false
14
+
15
+ alias_method :insurances, :Insurances
16
+ alias_method :start, :VisitDateTime
17
+
18
+ def department=(v)
19
+ self[:Location] ||= DEFAULT_LOCATION
20
+ self[:Location][:Department] = v
21
+ self
22
+ end
23
+
24
+ def facility=(v)
25
+ self[:Location] ||= DEFAULT_LOCATION
26
+ self[:Location][:Facility] = v
27
+ self
28
+ end
29
+
30
+ def insurances
31
+ self[:Insurances] = self[:Insurances].map {|ins| ins.is_a?(Redox::Models::Insurance) ? ins : Insurance.new(ins) }
32
+ end
33
+
34
+ def to_json(args = nil)
35
+ d = self.dup
36
+ d[:VisitDateTime] = Redox::Models.format_datetime(d[:VisitDateTime])
37
+ d.to_h.to_json
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,12 @@
1
+ module Redox
2
+ module Request
3
+ class Financial
4
+ TRANSACTION_META = Redox::Models::Meta.new(EventType: 'Transaction', DataModel: 'Financial')
5
+
6
+ def self.create(financial, meta: Redox::Models::Meta.new)
7
+ meta = TRANSACTION_META.merge(meta)
8
+ return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request.build_body(financial, meta))))
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,18 @@
1
+ module Redox
2
+ module Request
3
+ class PatientAdmin
4
+ CREATE_META = Redox::Models::Meta.new(EventType: 'NewPatient', DataModel: 'PatientAdmin')
5
+ UPDATE_META = Redox::Models::Meta.new(EventType: 'PatientUpdate', DataModel: 'PatientAdmin')
6
+
7
+ def self.create(patient: , meta: Redox::Models::Meta.new)
8
+ meta = CREATE_META.merge(meta)
9
+ return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request.build_body(patient, meta))))
10
+ end
11
+
12
+ def self.update(patient: , meta: Redox::Models::Meta.new)
13
+ meta = UPDATE_META.merge(meta)
14
+ return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request.build_body(patient, meta))))
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,13 @@
1
+ module Redox
2
+ module Request
3
+ class PatientSearch
4
+ QUERY_ENDPOINT = '/query'.freeze
5
+ QUERY_META = Redox::Models::Meta.new(EventType: 'Query', DataModel: 'PatientSearch')
6
+
7
+ def self.query(params, meta: Redox::Models::Meta.new)
8
+ meta = QUERY_META.merge(meta)
9
+ return Redox::Models::Model.from_response((RedoxClient.connection.request(endpoint: QUERY_ENDPOINT, body: Redox::Request.build_body(params, meta))))
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,9 @@
1
+ module Redox
2
+ module Request
3
+ def self.build_body(params, meta)
4
+ meta = Redox::Models::Meta.new.merge(meta)
5
+
6
+ return meta.to_h.merge(params.to_h)
7
+ end
8
+ end
9
+ end
@@ -1,3 +1,3 @@
1
1
  module Redox
2
- VERSION = '1.0.1'.freeze
2
+ VERSION = '1.3.0'.freeze
3
3
  end
@@ -5,8 +5,8 @@ require 'redox/version'
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'redox'
7
7
  spec.version = Redox::VERSION
8
- spec.authors = ['Alexander Clark']
9
- spec.email = ['sasha.jackal@gmail.com']
8
+ spec.authors = ['Alexander Clark', 'Mike Crockett', 'Mike Carr']
9
+ spec.email = ['alexander.clark@weinfuse.com', 'mike.crockett@weinfuse.com', 'michael.carr@weinfuse.com']
10
10
 
11
11
  spec.summary = 'Ruby wrapper for the Redox Engine API'
12
12
  spec.homepage = 'https://github.com/WeInfuse/redox'
@@ -20,16 +20,18 @@ Gem::Specification.new do |spec|
20
20
  end
21
21
 
22
22
  spec.files = `git ls-files -z`.split("\x0").reject do |f|
23
- f.match(%r{^(test|spec|features)/})
23
+ f.match?(%r{^(test|spec|features|bin|helpers|)/}) || f.match?(%r{^(\.[[:alnum:]]+)})
24
24
  end
25
+
25
26
  spec.bindir = 'exe'
26
27
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
27
28
  spec.require_paths = ['lib']
29
+ spec.licenses = ['MIT']
28
30
 
29
- spec.add_dependency 'httparty'
30
- spec.add_dependency 'hashie'
31
- spec.add_development_dependency 'bundler'
32
- spec.add_development_dependency 'byebug'
31
+ spec.add_dependency 'httparty', '~> 0.18'
32
+ spec.add_dependency 'hashie', '~> 3.5'
33
+ spec.add_development_dependency 'bundler', '>=1', '<3'
34
+ spec.add_development_dependency 'byebug', '~> 11'
33
35
  spec.add_development_dependency 'minitest', '~> 5.0'
34
36
  spec.add_development_dependency 'rake', '~> 10.0'
35
37
  spec.add_development_dependency 'webmock', '~> 3.1'
metadata CHANGED
@@ -1,71 +1,79 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redox
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Clark
8
- autorequire:
8
+ - Mike Crockett
9
+ - Mike Carr
10
+ autorequire:
9
11
  bindir: exe
10
12
  cert_chain: []
11
- date: 2019-05-02 00:00:00.000000000 Z
13
+ date: 2020-09-17 00:00:00.000000000 Z
12
14
  dependencies:
13
15
  - !ruby/object:Gem::Dependency
14
16
  name: httparty
15
17
  requirement: !ruby/object:Gem::Requirement
16
18
  requirements:
17
- - - ">="
19
+ - - "~>"
18
20
  - !ruby/object:Gem::Version
19
- version: '0'
21
+ version: '0.18'
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
23
25
  requirements:
24
- - - ">="
26
+ - - "~>"
25
27
  - !ruby/object:Gem::Version
26
- version: '0'
28
+ version: '0.18'
27
29
  - !ruby/object:Gem::Dependency
28
30
  name: hashie
29
31
  requirement: !ruby/object:Gem::Requirement
30
32
  requirements:
31
- - - ">="
33
+ - - "~>"
32
34
  - !ruby/object:Gem::Version
33
- version: '0'
35
+ version: '3.5'
34
36
  type: :runtime
35
37
  prerelease: false
36
38
  version_requirements: !ruby/object:Gem::Requirement
37
39
  requirements:
38
- - - ">="
40
+ - - "~>"
39
41
  - !ruby/object:Gem::Version
40
- version: '0'
42
+ version: '3.5'
41
43
  - !ruby/object:Gem::Dependency
42
44
  name: bundler
43
45
  requirement: !ruby/object:Gem::Requirement
44
46
  requirements:
45
47
  - - ">="
46
48
  - !ruby/object:Gem::Version
47
- version: '0'
49
+ version: '1'
50
+ - - "<"
51
+ - !ruby/object:Gem::Version
52
+ version: '3'
48
53
  type: :development
49
54
  prerelease: false
50
55
  version_requirements: !ruby/object:Gem::Requirement
51
56
  requirements:
52
57
  - - ">="
53
58
  - !ruby/object:Gem::Version
54
- version: '0'
59
+ version: '1'
60
+ - - "<"
61
+ - !ruby/object:Gem::Version
62
+ version: '3'
55
63
  - !ruby/object:Gem::Dependency
56
64
  name: byebug
57
65
  requirement: !ruby/object:Gem::Requirement
58
66
  requirements:
59
- - - ">="
67
+ - - "~>"
60
68
  - !ruby/object:Gem::Version
61
- version: '0'
69
+ version: '11'
62
70
  type: :development
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
65
73
  requirements:
66
- - - ">="
74
+ - - "~>"
67
75
  - !ruby/object:Gem::Version
68
- version: '0'
76
+ version: '11'
69
77
  - !ruby/object:Gem::Dependency
70
78
  name: minitest
71
79
  requirement: !ruby/object:Gem::Requirement
@@ -122,26 +130,24 @@ dependencies:
122
130
  - - "~>"
123
131
  - !ruby/object:Gem::Version
124
132
  version: '0.9'
125
- description:
133
+ description:
126
134
  email:
127
- - sasha.jackal@gmail.com
135
+ - alexander.clark@weinfuse.com
136
+ - mike.crockett@weinfuse.com
137
+ - michael.carr@weinfuse.com
128
138
  executables: []
129
139
  extensions: []
130
140
  extra_rdoc_files: []
131
141
  files:
132
- - ".circleci/config.yml"
133
- - ".editorconfig"
134
- - ".gitignore"
135
142
  - CHANGELOG.md
136
143
  - CODE_OF_CONDUCT.md
137
144
  - Gemfile
138
145
  - README.md
139
146
  - Rakefile
140
- - bin/console
141
- - bin/setup
142
147
  - lib/redox.rb
143
148
  - lib/redox/authentication.rb
144
149
  - lib/redox/connection.rb
150
+ - lib/redox/models/financial.rb
145
151
  - lib/redox/models/meta.rb
146
152
  - lib/redox/models/model.rb
147
153
  - lib/redox/models/patient.rb
@@ -149,15 +155,22 @@ files:
149
155
  - lib/redox/models/patient/identifier.rb
150
156
  - lib/redox/models/patient/insurance.rb
151
157
  - lib/redox/models/patient/p_c_p.rb
158
+ - lib/redox/models/potential_matches.rb
159
+ - lib/redox/models/transaction.rb
160
+ - lib/redox/models/visit.rb
152
161
  - lib/redox/redox_exception.rb
153
- - lib/redox/response.rb
162
+ - lib/redox/request/financial.rb
163
+ - lib/redox/request/patient_admin.rb
164
+ - lib/redox/request/patient_search.rb
165
+ - lib/redox/request/request.rb
154
166
  - lib/redox/version.rb
155
167
  - redox.gemspec
156
168
  homepage: https://github.com/WeInfuse/redox
157
- licenses: []
169
+ licenses:
170
+ - MIT
158
171
  metadata:
159
172
  allowed_push_host: https://rubygems.org
160
- post_install_message:
173
+ post_install_message:
161
174
  rdoc_options: []
162
175
  require_paths:
163
176
  - lib
@@ -172,9 +185,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
172
185
  - !ruby/object:Gem::Version
173
186
  version: '0'
174
187
  requirements: []
175
- rubyforge_project:
188
+ rubyforge_project:
176
189
  rubygems_version: 2.7.6
177
- signing_key:
190
+ signing_key:
178
191
  specification_version: 4
179
192
  summary: Ruby wrapper for the Redox Engine API
180
193
  test_files: []
@@ -1,23 +0,0 @@
1
- version: 2
2
- jobs:
3
- build:
4
- working_directory: ~/weinfuse_api
5
- docker:
6
- - image: circleci/ruby:2.4
7
- steps:
8
- - checkout
9
- - type: restore-cache
10
- key: redox_{{ checksum "Gemfile.lock" }}
11
- key: redox
12
- - run: bundle install --path vendor/bundle --jobs 20 --retry 5
13
- - type: cache-save
14
- key: redox_{{ checksum "Gemfile.lock" }}
15
- key: redox
16
- paths:
17
- - vendor/bundle
18
- - type: shell
19
- command: |
20
- bundle exec rake test
21
- - type: store_test_results
22
- path: /tmp/test-results
23
-
@@ -1,10 +0,0 @@
1
- root=true
2
-
3
- [*]
4
- indent_style = space
5
- indent_size = 2
6
- end_of_line = lf
7
- charset = utf-8
8
- trim_trailing_whitespace = true
9
- insert_final_newline = true
10
-
data/.gitignore DELETED
@@ -1,10 +0,0 @@
1
- /.bundle/
2
- /.yardoc
3
- /Gemfile.lock
4
- /_yardoc/
5
- /coverage/
6
- /doc/
7
- /pkg/
8
- /spec/reports/
9
- /tmp/
10
- /redox*.gem
@@ -1,15 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require 'bundler/setup'
4
- require 'json'
5
- require 'redox'
6
-
7
- # You can add fixtures and/or initialization code here to make experimenting
8
- # with your gem easier. You can also use a different console, if you like.
9
-
10
- # (If you use this, don't forget to add pry to your Gemfile!)
11
- # require "pry"
12
- # Pry.start
13
-
14
- require 'irb'
15
- IRB.start
data/bin/setup DELETED
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -euo pipefail
3
- IFS=$'\n\t'
4
- set -vx
5
-
6
- bundle install
7
-
8
- # Do any other automated setup that you need to do here
@@ -1,14 +0,0 @@
1
- module Redox
2
- class Response
3
- attr_reader :model, :http_response
4
-
5
- def initialize(response, model_class = nil)
6
- @http_response = response
7
- @model = model_class.new(JSON.parse(response.body)) if !model_class.nil? && self.success?
8
- end
9
-
10
- def success?
11
- return @http_response.is_a?(Net::HTTPOK)
12
- end
13
- end
14
- end