dock_test 0.4.5 → 0.4.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: d8581199686fbe02a48c12fe6c5c1a8054d78d98
4
- data.tar.gz: 9efc94514c0b47fdc40ad59c35753462cf823952
3
+ metadata.gz: d7d02f2bd497b1164ea2681c4d3e511d80ba5d4e
4
+ data.tar.gz: 76b280e326bb795ac5a5346bff4cfa4d8e929221
5
5
  SHA512:
6
- metadata.gz: 0568f54759aeb0218096e83cf83e3c2dad52162c8992694e1ffa515d8787ec3486779fb1fbf0060afde76f782e6ace60ddd8e3bbf3ad458cee99906b97e4f5d5
7
- data.tar.gz: 9ccf38447390a0c1600e5c2699ad1d0de6a8c2f85a4636ca3e1ce3ef259fff21b6115077726e9317bc03394573744eb62ba34fbf64001671d4f0fe23a69615d2
6
+ metadata.gz: f38ac82284f77aeeaf6f36c57d789d0bf4dcfac4664adbcbe37727ec8520628dc92901ac52feab7f50d16fd5e274a59d34e75c85c3c4ce360e947013eb50f27e
7
+ data.tar.gz: 0f48db876fea3d8b463ecc3b019cdc89c89ae4ddf4aaf32b0c389cfec13a18252acca600e4580e14cda53bdaa14968cb04c3ddaeabbe62e29f8321529334c334
@@ -6,43 +6,27 @@ module DockTest
6
6
  %w(get post put patch delete options head).each do |meth_name|
7
7
  define_method meth_name do |path, params = '', headers = {}, &block|
8
8
 
9
- with_side_effects = verb_has_side_effects?(meth_name)
10
-
11
- if with_side_effects && DockTest.skippy?
9
+ if verb_has_side_effects?(meth_name) && DockTest.skippy?
12
10
  skip_test_to_avoid_side_efforts
13
11
  end
14
12
 
15
- request_url = full_url(DockTest.url, path)
16
- uri = URI.parse(request_url)
13
+ construct_request(meth_name, path, params, headers)
17
14
 
18
- if DockTest.localhost?
19
- uri.port = DockTest.port
20
- end
15
+ execute_request
21
16
 
22
- # add the params to the GET requests
23
- if !with_side_effects && !params.empty?
24
- if(params.is_a?(Hash))
25
- uri.query = URI.encode_www_form(URI.decode_www_form(uri.query || '') + params.to_a)
26
- else
27
- uri.query = uri.query.nil? ? params : "#{uri.query}&#{params}"
28
- end
29
- end
17
+ yield @last_response if block_given?
30
18
 
31
- @last_request = Net::HTTP.const_get(meth_name.capitalize).new(uri.request_uri)
19
+ @last_response
20
+ end
32
21
 
33
- # add the params to the body of other requests
34
- if with_side_effects
35
- @last_request.body = params
36
- end
22
+ end
37
23
 
38
- # sets the headers
39
- headers.each do |key, value|
40
- @last_request[key] = value
41
- end
24
+ private
42
25
 
26
+ def execute_request
43
27
  # execute the request
44
- @last_response = Net::HTTP.start(uri.hostname, uri.port,
45
- :use_ssl => (uri.scheme == 'https'),
28
+ @last_response = Net::HTTP.start(@uri.hostname, @uri.port,
29
+ :use_ssl => (@uri.scheme == 'https'),
46
30
  :verify_mode => OpenSSL::SSL::VERIFY_NONE) do |http|
47
31
  # processing oauth signing
48
32
  if DockTest.oauth?
@@ -61,16 +45,44 @@ module DockTest
61
45
 
62
46
  http.request(@last_request)
63
47
  end
48
+ end
64
49
 
65
- yield @last_response if block_given?
50
+ def construct_request(meth_name, path, params, headers)
66
51
 
67
- @last_response
52
+ construct_uri(meth_name, path, params)
53
+
54
+ @last_request = Net::HTTP.const_get(meth_name.capitalize).new(@uri.request_uri).tap do |req|
55
+
56
+ # add the params to the body of other requests
57
+ if verb_has_side_effects?(meth_name)
58
+ req.body = params
59
+ end
60
+
61
+ # sets the headers
62
+ headers.each do |key, value|
63
+ req[key] = value
64
+ end
65
+ end
68
66
  end
69
67
 
70
- private meth_name
71
- end
68
+ def construct_uri(meth_name, path, params)
69
+ request_url = full_url(DockTest.url, path)
70
+ @uri = URI.parse(request_url).tap do |uri|
72
71
 
73
- private
72
+ if DockTest.localhost?
73
+ uri.port = DockTest.port
74
+ end
75
+
76
+ # add the params to the GET requests
77
+ if !verb_has_side_effects?(meth_name) && !params.empty?
78
+ if(params.is_a?(Hash))
79
+ uri.query = URI.encode_www_form(URI.decode_www_form(uri.query || '') + params.to_a)
80
+ else
81
+ uri.query = uri.query.nil? ? params : "#{uri.query}&#{params}"
82
+ end
83
+ end
84
+ end
85
+ end
74
86
 
75
87
  def verb_has_side_effects?(verb)
76
88
  %w(post put patch delete).include?(verb)
@@ -1,3 +1,3 @@
1
1
  module DockTest
2
- VERSION = "0.4.5"
2
+ VERSION = "0.4.6"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dock_test
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.5
4
+ version: 0.4.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jack Xu
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-15 00:00:00.000000000 Z
11
+ date: 2015-10-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement