swagger_autogenerate 0.1.1 → 1.0.2

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: 2a0f62fcc9ee0b49602228fb12f2eef9705003adbfcbcd5f007e32b00482d5e4
4
- data.tar.gz: f24efab21ce5bec0391a427ef5b7e31651861eb2d78cfb881de3bd79880399e8
3
+ metadata.gz: 0b52220aecae46c5818f0640a1ca979f59d38fba0720e2d5a35685fbb6c06bbd
4
+ data.tar.gz: 995666a3bd4de256824656420231be0c38d564aa236a6bfca10659d1474908ff
5
5
  SHA512:
6
- metadata.gz: fb29b9a142927b93020502301c0149a41e5bda396c48b21b36c78ecd98cc2dfd7e2208ff6f82d4e76c324493d1d28fbc8fcb30ff297ed77d9244f37ec0a179b3
7
- data.tar.gz: 82fee73951f7f4791492f7ee37e7ff9384a52c915e6569012f071632be3296d017ff46e6e1960b1f256d2bf7be7785c6d88530d828eb3b7a53ebae476c69cacc
6
+ metadata.gz: c966988c943c3d108a30fa1abc38cef2295679e8f02b2f1dd302a64eedca45d5c97f37ff2c30f7ca35c516b92fa797ea6a0670a25ef1c587cef97ab22433f569
7
+ data.tar.gz: a6e6c285bdad27980d524f221c8ae5204e06a3ed222de805c2c5a6ebcda637c5e312712f395aa9247bae4002182fad5d264056c0b837a9a38c7ff5dd0d105d1c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,5 @@
1
1
  ## [Unreleased]
2
2
 
3
3
  ## [0.1.1] - 2024-05-27
4
-
4
+ ## [1.0.2] - 2024-05-31
5
5
  - Initial release
data/README.md CHANGED
@@ -7,6 +7,12 @@ automating Swagger YAML generation in Ruby on Rails offers a range of benefits f
7
7
 
8
8
  The gem automatically observes the request/response patterns during the execution of test scenarios, generating accurate Swagger YAML files that reflect the API's behavior. developers and consumers can better understand and interact with the APIs.
9
9
 
10
+ ## Dependencies
11
+
12
+ The SwaggerAutogenerate gem depends on the rspec-rails gem, which brings the RSpec testing framework to Ruby on Rails.
13
+ Please install rspec-rails first: https://github.com/rspec/rspec-rails
14
+ Then continue the installation process.
15
+
10
16
  ## Installation
11
17
 
12
18
  1) Open your Gemfile located at ./Gemfile
@@ -18,7 +24,9 @@ The gem automatically observes the request/response patterns during the executio
18
24
  end
19
25
  ```
20
26
  3) Install the gem and add to the application's Gemfile by executing:
21
- $ bundle install
27
+ ```
28
+ bundle install
29
+ ```
22
30
 
23
31
  ## Configuration
24
32
 
@@ -31,6 +39,11 @@ To configure the swagger_autogenerate gem in your Rails application, follow thes
31
39
  ```
32
40
  include SwaggerAutogenerate if Rails.env.test? && ENV['SWAGGER'].present?
33
41
  ```
42
+ in the #Example-step you will set the ENV['SWAGGER'],
43
+
44
+ By setting the ENV['SWAGGER'] environment variable, you can specify the path to the new file,
45
+ whether it's a specific file (e.g., ../myfile.yaml) or a directory (e.g., ../docs).
46
+ This flexibility ensures that the documentation can be easily integrated into your project's structure and workflow.
34
47
 
35
48
  ### Step 2 (optional)
36
49
  1) Create a file called swagger_autogenerate.rb in the ./config/initializers
@@ -56,7 +69,7 @@ To generate Swagger YAML documentation for the APIs implemented in the Employees
56
69
  $ spec/your_path/employees_controller_spec.rb
57
70
  This file should contain the test scenarios for each action (e.g., index, show, create) of the controller.
58
71
 
59
- 3)Run the spec code using the rspec command and set the environment variable SWAGGER to the desired YAML file name. For example:
72
+ 3) Run the spec code using the rspec command and set the environment variable SWAGGER to the desired YAML file name. For example:
60
73
  ```
61
74
  SWAGGER='employee_apis.yaml' rspec spec/your_path/employees_controller_spec.rb
62
75
  ```
@@ -69,7 +82,3 @@ that the generated documentation will depend on the test scenarios defined in yo
69
82
  ## License
70
83
 
71
84
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
72
-
73
- ## Code of Conduct
74
-
75
- Everyone interacting in the SwaggerAutogenerate project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/swagger_autogenerate/blob/master/CODE_OF_CONDUCT.md).
@@ -17,8 +17,10 @@ module SwaggerAutogenerate
17
17
  end
18
18
 
19
19
  def call
20
- read_swaggger_trace
21
- write_swaggger_trace
20
+ if ENV[SWAGGER_ENVIRONMENT_VARIABLE].present?
21
+ read_swagger_trace
22
+ write_swagger_trace
23
+ end
22
24
  end
23
25
 
24
26
  private
@@ -27,7 +29,7 @@ module SwaggerAutogenerate
27
29
 
28
30
  # main methods
29
31
 
30
- def read_swaggger_trace
32
+ def read_swagger_trace
31
33
  path = request.path
32
34
 
33
35
  request.path_parameters.except(:controller, :format, :action).each do |k, v|
@@ -53,7 +55,7 @@ module SwaggerAutogenerate
53
55
  paths[path.to_s].merge!(hash)
54
56
  end
55
57
 
56
- def write_swaggger_trace
58
+ def write_swagger_trace
57
59
  if paths[current_path][request.method.downcase].present?
58
60
  paths[current_path][request.method.downcase]['responses'] = swagger_response
59
61
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SwaggerAutogenerate
4
- VERSION = "0.1.1"
4
+ VERSION = "1.0.2"
5
5
  end
Binary file
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: swagger_autogenerate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - MohammedBuraiah
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-05-27 00:00:00.000000000 Z
11
+ date: 2024-05-31 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Generating Swagger YAML Automatically Based on Existing Test Cases in
14
14
  Ruby on Rails
@@ -29,6 +29,8 @@ files:
29
29
  - lib/swagger_autogenerate/swagger_trace.rb
30
30
  - lib/swagger_autogenerate/version.rb
31
31
  - sig/swagger_autogenerate.rbs
32
+ - swagger_autogenerate-0.1.0.gem
33
+ - swagger_autogenerate-0.1.1.gem
32
34
  - swagger_autogenerate.gemspec
33
35
  homepage: https://github.com/MohammedBuraiah/swagger_autogenerate
34
36
  licenses: