apireaper 1.0.5 → 1.0.6

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
  SHA1:
3
- metadata.gz: 68703374bc4d7f2bc4ac1db03cfe01b41916151d
4
- data.tar.gz: 1de13f32b58b53c117c386900c17a7c939c328a1
3
+ metadata.gz: bc9187a26723ae52c30c7691a31fa9fb3f586e93
4
+ data.tar.gz: ea5f8f43ae19f334bb9d8953ede2a8f905e62f00
5
5
  SHA512:
6
- metadata.gz: 53f51802d41a8e97b3b4e7283687a6b82fd30532d652362f8be9db3ca7a63c52a7ad4640a9396e65e9c28e379b7e71d93ddd3a9a859533e2423f0d2d9a6d6f40
7
- data.tar.gz: 63ebb75f99d52c65d88e7f188f4ddebfa7bd72a562db82fb9c529065d22e27e82a0d7399499bacc2b4059820fd3736e314fbceb7f0478854e187f0108e16955e
6
+ metadata.gz: eab61a384514d313168a2b9bb9e9428fc9e905bfc2bf2be26baf8c91af20d5a16c6f514ac953c8628e957e6bf50432c059f977bf9e5177e7f2f626ff3025e0f4
7
+ data.tar.gz: 6f0469643d2955c95d40e126f4e1959aac83892b3f9555ae9b38a16e19a6018e38988ee897279fbe6e5917abf6011d34bdeaec81205c363542603ca5eec31dd0
data/lib/apireaper/cli.rb CHANGED
@@ -38,7 +38,8 @@ module APIReaper
38
38
  :data,
39
39
  aliases: ['-d'],
40
40
  desc: 'Set of data sent with the request. ' \
41
- 'May be of type x_www_form_urlencoded or json'
41
+ 'May be of type www_form or json.' \
42
+ 'If no specific data type is detected, www_form is used.'
42
43
  )
43
44
  option(
44
45
  :schema,
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
  require 'net/http'
19
- require 'uri'
19
+ require 'cgi'
20
20
  require 'json'
21
21
 
22
22
  module APIReaper
@@ -41,8 +41,7 @@ module APIReaper
41
41
  def format_data(request)
42
42
  return request if @opts['data'].nil?
43
43
  if json?(@opts['data']) then format_json_data(request)
44
- elsif www_form?(@opts['data']) then format_www_form_data(request)
45
- else raise 'Data type is unknown.'
44
+ else format_www_form_data(request)
46
45
  end
47
46
  end
48
47
 
@@ -65,13 +64,7 @@ module APIReaper
65
64
 
66
65
  # Split the data string into a hash
67
66
  def format_www_form_data(request)
68
- data = {}
69
- pairs = @opts['data'].split('&')
70
- pairs.each do |pair|
71
- (key, value) = pair.split('=')
72
- data[key] = value
73
- end
74
- request.set_form_data(data)
67
+ request.set_form_data(CGI.parse(@opts['data']))
75
68
  request
76
69
  end
77
70
 
@@ -83,11 +76,6 @@ module APIReaper
83
76
  false
84
77
  end
85
78
 
86
- # Check if the data string is a www form like string
87
- def www_form?(str)
88
- str.match(/^[^=&]+(=[^=&]+)?(&[^=&]+(=[^=&]+)?)*$/).nil? ? false : true
89
- end
90
-
91
79
  # DELETE method
92
80
  def rest_request_delete
93
81
  exit_with_error(5, 'DELETE is not yet implemented')
@@ -16,5 +16,5 @@
16
16
  #
17
17
 
18
18
  module APIReaper
19
- VERSION = '1.0.5'.freeze
19
+ VERSION = '1.0.6'.freeze
20
20
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: apireaper
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.5
4
+ version: 1.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Delaplace