red-api 0.2.2 → 0.2.6

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: d3137705ce3933690cf5048fc78576d68a7638499f8a9cdb18c59e83a7010fec
4
- data.tar.gz: c01ba2e7a05de477e32e5441677b10f5f488fcd515d81897de746a358fe1fdd4
3
+ metadata.gz: db9ec72704383f627b78cca8bc5041b932e3c3027a8689f002377527a2a39f80
4
+ data.tar.gz: 80ad7b3cfef35b8562dbb4a9b4da1de254c48e2e398fd5e224d2931f6937d4bb
5
5
  SHA512:
6
- metadata.gz: 48f9ed3cfc7b046bd5aab5b642322e42e86120905f474d76651aae224bad5fb1147024d445e23743de6bec8c66fee46b92bc29c33bbe700dfc20e070c7f2d87d
7
- data.tar.gz: 74bb4846dab7e79cec7bc43da97f0d64bd4b0013fd18ff29ec328ac6adb657d25f01f1608867c61045694111e741e4b3ef13feaa93ef1e0b886adf318bf84e40
6
+ metadata.gz: 17f17dbc3020a9ebbf28cdfc7968328a73c3cdfba8b6705e0cf531274cf0c1f5f36b5f0ea0f16655e9b8c5d09481200c7e4a94227b61e1c8c2cffdf741f40d79
7
+ data.tar.gz: 12f9aec126fe2927daaec3cb5fabec14c884e662616389bb77053106204979c6bb644c35d544419f9d29f6abf49e2143772e3b434ec81441747d6f9771c25952
data/README.md CHANGED
@@ -7,11 +7,11 @@ This simple gem has two generators to support creating a basic API consumer fram
7
7
 
8
8
  #### Usage
9
9
  ```sh
10
- rails generate service ApiName https://service/endpoint/ --key api_key service_api_key_env_name
11
- rails generate endpoint ServiceName EndpointName /endpoint/#{param1}/#{param2} --method_params param1 param2
10
+ rails generate service ApiName Version --endpoint https://service/endpoint/ --key api_key service_api_key_env_name
11
+ rails generate endpoint ServiceName Version EndpointName --endpoint /endpoint/#{param1}/#{param2} --method-params param1 param2 --include-helper-params
12
12
  ```
13
13
  The service generator will setup the framework which uses Faraday for your http calls and Oj gem for faster json parsing.
14
- The endpoint generator will setup an endpoint with an endpoint helper method for easier testing.
14
+ The endpoint generator will setup an endpoint with an endpoint helper method for easier testing and adds a spec file.
15
15
 
16
16
  #### Installation
17
17
  ```ruby
@@ -21,6 +21,7 @@ gem 'red-api'
21
21
  ```ruby
22
22
  gem 'faraday'
23
23
  gem 'oj'
24
+ gem 'rspec-rails
24
25
  ```
25
26
 
26
27
  #### Testing
@@ -8,10 +8,11 @@ Example:
8
8
  rails generate endpoint ServiceName version EndpointName --endpoint /endpoint/#{param1}/#{param2} --endpoint-params param1 param2 --include-helper-params
9
9
 
10
10
  Simple Form:
11
- rails generate endpoint ServiceName V1 EndpointName /endpoint
11
+ rails generate endpoint ServiceName V1 EndpointName
12
12
 
13
13
  This will create:
14
14
  app/services/ServiceName/version/api_call/endpoint_name.rb
15
+ with the endpoint being /v1/ if no endpoint is given
15
16
 
16
17
  This will modify:
17
18
  app/services/ServiceName/version/api_endpoints.rb
@@ -1,4 +1,4 @@
1
1
 
2
2
  def <%= @endpoint_name.underscore%>_endpoint<%="(#{@helper_params})" if @helper_params%>
3
- <%= "\"#{@endpoint}\".freeze" if @endpoint %>
3
+ <%= "\"#{@endpoint}\"" if @endpoint %>
4
4
  end
@@ -2,14 +2,16 @@ Description:
2
2
  Generates the framework for a basic API service your app consumes
3
3
 
4
4
  Example:
5
- rails generate service ServiceName version https://service/api/endpoint/ --key api_key env_key_name
5
+ rails generate service ServiceName version --api-endpoint https://service/api/endpoint/ --key api_key env_key_name
6
6
 
7
7
  Simple Form:
8
- rails generate service ServiceName V1 https://service/api/endpoint/
8
+ rails generate service ServiceName V1 --api-endpoint https://service/api/endpoint/
9
+
10
+ Not supplying an endpoint will default to https://
9
11
 
10
12
  This will create:
11
- app/services/ServiceName/version
12
- app/services/ServiceName/version/api_calls/
13
- app/services/ServiceName/version/api_endpoints.rb
14
- app/services/ServiceName/version/client.rb
15
- app/services/ServiceName/version/endpoint_helpers.rb
13
+ app/services/ServiceName/v1
14
+ app/services/ServiceName/v1/api_calls/
15
+ app/services/ServiceName/v1/api_endpoints.rb
16
+ app/services/ServiceName/v1/client.rb
17
+ app/services/ServiceName/v1/endpoint_helpers.rb
@@ -6,7 +6,7 @@ class <%=@full_api_reference%>::Client
6
6
  def self.client(params)
7
7
  <% if @env_var_opts.present? %><%= "params[:#{@env_var_opts.first.underscore.downcase}] = ENV['#{@env_var_opts.last.underscore.upcase}']"%><% else %># Additional params can be added here<% end %>
8
8
  Faraday.new(
9
- url: api_endpoint,
9
+ url: <%=@api_name.underscore%>_api_endpoint,
10
10
  params: params
11
11
  )
12
12
  end
@@ -1,7 +1,7 @@
1
1
  module EndpointHelpers
2
- def api_endpoint
2
+ def <%=@api_name.underscore%>_api_endpoint
3
3
  # The http API endpoint for this service
4
- <%= "'#{@api_endpoint}'.freeze" %>
4
+ <%= "'#{@api_endpoint}'" %>
5
5
  end
6
6
 
7
7
  # API Endpoint Helpers
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: red-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard DeSilvey
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-20 00:00:00.000000000 Z
11
+ date: 2021-07-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 5.2.5
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: 5.2.5
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: oj
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -52,20 +52,6 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: 1.5.1
55
- - !ruby/object:Gem::Dependency
56
- name: rspec
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
55
  description: Generate API service and endpoints for API consumption
70
56
  email:
71
57
  - rdesilvey@gmail.com