swagger_autogenerate 1.0.9 → 1.1.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: a6f8eecf8c40ba206e8a470376f763935afd41cbaea82d3422e110950301d519
4
- data.tar.gz: 7d28c1bec429667797e1641e0b07a525b405ca3ba1573771d7aa99dfa1695e5e
3
+ metadata.gz: 2a323ab35e5b839c6b85294fdf080ce0053fe43854eafbc1d1046b26cf14b7f2
4
+ data.tar.gz: 996cd6d73b26711cc59cefe81f720fb747d1a38d5442fa713b3284528f3b8d2b
5
5
  SHA512:
6
- metadata.gz: 24ee6dd3a08b845f11e9e2c62c3b91db7a50498e828177bb27390adb72c3692df5d309d2c081c6711bb0b0a79a27eeced5f4d09556e0fcec1ae30df820a7c127
7
- data.tar.gz: 334e326c57ddb61e9e3f73875fdb5e6d838a4c808f4c71dfc76d317a0192889cdb8117c76ce83bf39bc633aab34515b6ddb9620c740103ec2007284fd222d114
6
+ metadata.gz: 5794de7918cd298fab142696ff91a6873563fc2a31f6fa9ea60d8ea5a8c483c4467f64c5736f97ebdb92509059ab888032de8d903e8ef1caea486796384693b9
7
+ data.tar.gz: 82593525706f167db50f96ead26c6e6ef4f6f1ba5911b761838bd5bf6ab0772d3cd9378fd8b4e1648d9fc0bf85a87868078bfe642175fd7994c7998258a3dfa5
data/CHANGELOG.md CHANGED
@@ -9,5 +9,7 @@
9
9
  ## [1.0.7] - 2024-06-01
10
10
  ## [1.0.8] - 2024-06-03
11
11
  ## [1.0.9] - 2024-06-04
12
+ ## [1.1.0] - 2024-06-23
13
+ ## [1.1.1] - 2024-06-26
12
14
 
13
15
  - Initial release
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- swagger_autogenerate (1.0.9)
4
+ swagger_autogenerate (1.1.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,7 +1,8 @@
1
1
  module SwaggerAutogenerate
2
2
  class Configuration
3
3
  attr_accessor :with_config, :with_multiple_examples, :with_example_description,
4
- :with_response_description, :swagger_environment_variable
4
+ :with_response_description, :swagger_environment_variable,
5
+ :environment_name, :security, :swagger_config, :response_status
5
6
 
6
7
  def initialize
7
8
  @with_config = true
@@ -9,12 +10,13 @@ module SwaggerAutogenerate
9
10
  @with_example_description = true
10
11
  @with_response_description = true
11
12
  @swagger_environment_variable = 'SWAGGER'
12
- @security = security
13
- @swagger_config = swagger_config
14
- @response_status = response_status
13
+ @environment_name = :test
14
+ @security = default_security
15
+ @swagger_config = default_swagger_config
16
+ @response_status = default_response_status
15
17
  end
16
18
 
17
- def response_status
19
+ def default_response_status
18
20
  {
19
21
  100 => 'The initial part of the request has been received, and the client should proceed with sending the remainder of the request',
20
22
  101 => 'The server agrees to switch protocols and is acknowledging the client\'s request to change the protocol being used',
@@ -40,7 +42,7 @@ module SwaggerAutogenerate
40
42
  }
41
43
  end
42
44
 
43
- def swagger_config
45
+ def default_swagger_config
44
46
  {
45
47
  'openapi' => '3.0.0',
46
48
  'info' => {
@@ -61,7 +63,7 @@ module SwaggerAutogenerate
61
63
  }
62
64
  end
63
65
 
64
- def security
66
+ def default_security
65
67
  [
66
68
  { 'org_slug' => [] },
67
69
  { 'locale' => [] }
@@ -16,10 +16,8 @@ module SwaggerAutogenerate
16
16
  end
17
17
 
18
18
  def call
19
- if ENV[swagger_environment_variable].present?
20
- read_swagger_trace
21
- write_swagger_trace
22
- end
19
+ read_swagger_trace
20
+ write_swagger_trace
23
21
  end
24
22
 
25
23
  def self.swagger_environment_variable
@@ -30,6 +28,14 @@ module SwaggerAutogenerate
30
28
  SwaggerTrace.swagger_environment_variable
31
29
  end
32
30
 
31
+ def self.environment_name
32
+ ::SwaggerAutogenerate.configuration.environment_name
33
+ end
34
+
35
+ def environment_name
36
+ SwaggerTrace.environment_name
37
+ end
38
+
33
39
  private
34
40
 
35
41
  attr_reader :request, :response, :current_path, :yaml_file, :configuration,
@@ -220,7 +226,16 @@ module SwaggerAutogenerate
220
226
  end
221
227
 
222
228
  def content_form_data(data)
223
- convert_to_multipart(data)
229
+ hash_data = {}
230
+ data.map do |key, value|
231
+ if value.is_a?(Hash)
232
+ hash_data.merge!({ key => value })
233
+ else
234
+ payload_hash.merge!({ key => { 'type' => schema_type(value), 'example' => example(value) } })
235
+ end
236
+ end
237
+
238
+ convert_to_multipart(hash_data)
224
239
  converted_payload = @payload_hash.clone
225
240
  @payload_hash = nil
226
241
  @payload_keys = nil
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SwaggerAutogenerate
4
- VERSION = "1.0.9"
4
+ VERSION = "1.1.1"
5
5
  end
@@ -5,12 +5,17 @@ module SwaggerAutogenerate
5
5
  require_relative 'swagger_autogenerate/swagger_trace.rb'
6
6
 
7
7
  included do
8
- if defined?(Rails) && ENV[SwaggerTrace.swagger_environment_variable].present?
9
- def process_action(*args)
10
- super
8
+ def process_action(*args)
9
+ super
11
10
 
11
+ if ENV[SwaggerTrace.swagger_environment_variable].present? && Rails.env.send("#{SwaggerTrace.environment_name.to_s}?")
12
12
  SwaggerTrace.new(request, response).call
13
13
  end
14
14
  end
15
15
  end
16
16
  end
17
+
18
+ # fix []
19
+ # create command to direct add configuration file in test environment
20
+ # handel headers
21
+ # can the SWAGGER accespt empty value?
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: 1.0.9
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - MohammedBuraiah
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-06-04 00:00:00.000000000 Z
11
+ date: 2024-06-27 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