rpdoc 0.1.7 → 0.1.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 204129b067a6bafd639a29a0a18f361526855a2472d252f7b2f5f08258c91ff3
4
- data.tar.gz: bf9fac67e3ccdd67441bd39cee555ef34af168367adae4832be6beb7cad2065a
3
+ metadata.gz: 16b0cdb642076fcefec76d09ec66960bf55bb49afd7e2bee3b55f8770c8a6cbb
4
+ data.tar.gz: de44ec4dbddaef841f969b29807f2b8c315219e9b45f8331da07f9104c456183
5
5
  SHA512:
6
- metadata.gz: 1b362d3e068426fc9eb21cd367d3caca67c9838e55a060954f5633415fdf8cca5ed10ce70199ff2a51eab65ffa54c09b9b443dd70c610cdea75beb6dcc2c8d73
7
- data.tar.gz: a7ae37b09463579a01da095527e84b0af7adc0470df89462b064c556673a278f7656409d3d18821e1b390dd87a79059c38f306b72062ac8f0e3620f7a3595a69
6
+ metadata.gz: 79850b0d3657c277641209887d1bc72beab36a350b528064e45bdc0533e102bbbd04db1dbc2f3e2fbbabf530aaebe7c8f952c0bc3701498fee99cc9b84349539
7
+ data.tar.gz: f2fa4f29d8844eec8dde825c7766975b4af1aa0e16a4b4811d35a3ee4252ddb2c9c8d696279d5314fbac43959e86268c3c56d8f09cf3fafae2f392ee7b299748
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
- ## [0.1.7] - 2022-02-14
1
+ ## [0.1.10] - 2022-07-14
2
+ - Enable form-data request body
3
+
4
+ ## [0.1.7, 0.1.8, 0.1.9] - 2022-02-14
2
5
  - Fix rspec parse zip response bug
6
+
3
7
  ## [0.1.6] - 2022-02-14
4
8
  - Update licnese
5
9
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rpdoc (0.1.2)
4
+ rpdoc (0.1.10)
5
5
  json_requester (~> 1.0)
6
6
 
7
7
  GEM
@@ -33,35 +33,19 @@ GEM
33
33
  crass (1.0.6)
34
34
  diff-lcs (1.4.4)
35
35
  erubi (1.10.0)
36
- faraday (1.8.0)
37
- faraday-em_http (~> 1.0)
38
- faraday-em_synchrony (~> 1.0)
39
- faraday-excon (~> 1.1)
40
- faraday-httpclient (~> 1.0.1)
41
- faraday-net_http (~> 1.0)
42
- faraday-net_http_persistent (~> 1.1)
43
- faraday-patron (~> 1.0)
44
- faraday-rack (~> 1.0)
45
- multipart-post (>= 1.2, < 3)
36
+ faraday (2.3.0)
37
+ faraday-net_http (~> 2.0)
46
38
  ruby2_keywords (>= 0.0.4)
47
- faraday-em_http (1.0.0)
48
- faraday-em_synchrony (1.0.0)
49
- faraday-excon (1.1.0)
50
- faraday-httpclient (1.0.1)
51
- faraday-net_http (1.0.1)
52
- faraday-net_http_persistent (1.2.0)
53
- faraday-patron (1.0.0)
54
- faraday-rack (1.0.0)
39
+ faraday-net_http (2.0.3)
55
40
  i18n (1.8.10)
56
41
  concurrent-ruby (~> 1.0)
57
- json_requester (1.0.3)
42
+ json_requester (1.0.7)
58
43
  faraday (>= 1.0.0)
59
44
  loofah (2.12.0)
60
45
  crass (~> 1.0.2)
61
46
  nokogiri (>= 1.5.9)
62
47
  method_source (1.0.0)
63
48
  minitest (5.14.4)
64
- multipart-post (2.1.1)
65
49
  nokogiri (1.12.5-x86_64-darwin)
66
50
  racc (~> 1.4)
67
51
  parallel (1.21.0)
@@ -132,4 +116,4 @@ DEPENDENCIES
132
116
  rubocop (~> 1.0)
133
117
 
134
118
  BUNDLED WITH
135
- 2.2.15
119
+ 2.2.32
data/VERSION.md CHANGED
@@ -1 +1 @@
1
- 0.1.7
1
+ 0.1.10
@@ -52,7 +52,7 @@ module Rpdoc
52
52
  data[:body] = JSON.pretty_generate(JSON.parse(@rspec_response.body)) rescue nil
53
53
  else
54
54
  body = @rspec_response.body
55
- data[:body] = body.encoding == 'ASCII-8BIT' ? body.force_encoding("ISO-8859-1").encode("UTF-8") : body
55
+ data[:body] = body.encoding.to_s == 'ASCII-8BIT' ? body.force_encoding("ISO-8859-1").encode("UTF-8") : body
56
56
  end
57
57
  data
58
58
  end
@@ -75,13 +75,14 @@ module Rpdoc
75
75
  end.compact
76
76
  query_string = @rspec_request.query_string.split('&').map do |string|
77
77
  key, value = string.split('=')
78
+ next if key.nil? || value.nil?
78
79
  {
79
80
  key: key,
80
81
  value: CGI.unescape(value),
81
82
  text: 'text'
82
83
  }
83
- end
84
- @original_request_data = {
84
+ end.compact
85
+ {
85
86
  method: @rspec_request.method,
86
87
  header: filter_headers,
87
88
  url: {
@@ -90,18 +91,57 @@ module Rpdoc
90
91
  path: @rspec_request.path.split('/'),
91
92
  query: query_string
92
93
  },
93
- body: nil
94
+ body: original_request_data_body
94
95
  }
95
- @original_request_data[:body] = {
96
- mode: 'raw',
97
- raw: JSON.pretty_generate(JSON.parse(@rspec_request.headers['RAW_POST_DATA'])),
98
- options: {
99
- raw: {
100
- language: "json"
96
+ end
97
+
98
+ def original_request_data_body
99
+ if @rspec_request.headers['RAW_POST_DATA'].present?
100
+ json_body = JSON.pretty_generate(JSON.parse(@rspec_request.headers['RAW_POST_DATA'])) rescue nil
101
+ {
102
+ mode: 'raw',
103
+ raw: json_body || @rspec_request.headers['RAW_POST_DATA'],
104
+ options: {
105
+ raw: {
106
+ language: json_body.present? ? 'json' : 'text'
107
+ }
101
108
  }
102
109
  }
103
- } if @rspec_request.headers['RAW_POST_DATA'].present?
104
- @original_request_data
105
- end
110
+ elsif @rspec_request.form_data?
111
+ {
112
+ mode: 'formdata',
113
+ formdata: form_data_object_to_array(@rspec_request.request_parameters)
114
+ }
115
+ else
116
+ nil
117
+ end
118
+ end
119
+
120
+ def form_data_object_to_array(form_data, prefix: nil)
121
+ array = []
122
+ form_data.each do |key, value|
123
+ key = "#{prefix}[#{key}]" if prefix.present?
124
+ if value.is_a?(Hash)
125
+ array += form_data_object_to_array(value, prefix: key)
126
+ elsif value.is_a?(Array)
127
+ value.each do |item|
128
+ array += form_data_object_to_array(item, prefix: "#{key}[]")
129
+ end
130
+ elsif value.is_a?(ActionDispatch::Http::UploadedFile)
131
+ array << {
132
+ key: key,
133
+ src: value.original_filename,
134
+ type: 'file'
135
+ }
136
+ else
137
+ array << {
138
+ key: key,
139
+ value: value,
140
+ type: 'text'
141
+ }
142
+ end
143
+ end
144
+ array
145
+ end
106
146
  end
107
147
  end
data/lib/rpdoc/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Rpdoc
4
- VERSION = "0.1.7"
4
+ VERSION = "0.1.10"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rpdoc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - yuntai
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-02-14 00:00:00.000000000 Z
11
+ date: 2022-07-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json_requester