tdi 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/helper/http.rb +19 -9
- data/lib/tdi/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5b8898f508f627e740b007ad50d900d6e4c4ae5d
|
4
|
+
data.tar.gz: b8eebdef3edd43ab89b508ff9020e260dd483cdd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5a38f4bd18507d935778ce36accdccad54e4472091e5e205c361923d776dd9e768b3aab1d4cb56c18fea57cb26a1171ead5c52b21ba6fdab64a4b1b6d7abdf54
|
7
|
+
data.tar.gz: e3932200c469a3662994fadf132bf7d21770fed18bc6a44897063a9a72ad9471bfb7004f24c78d9a6852b776a96ee6969f88201a11041ad90adaee3c060f9bda
|
data/Gemfile.lock
CHANGED
data/helper/http.rb
CHANGED
@@ -42,6 +42,7 @@ class TDIPlan < TDI
|
|
42
42
|
# Params
|
43
43
|
code = params['code'].nil? ? 200 : params['code'].to_i
|
44
44
|
match = params['match']
|
45
|
+
expect_header = params['expect_header']
|
45
46
|
timeout_limit = params['timeout'].nil? ? 2 : params['timeout'].to_i
|
46
47
|
|
47
48
|
if not params['proxy'].nil?
|
@@ -49,8 +50,15 @@ class TDIPlan < TDI
|
|
49
50
|
proxy_port = 3128 unless not proxy_port.nil?
|
50
51
|
end
|
51
52
|
|
52
|
-
|
53
|
-
|
53
|
+
if not params['expect_header'].nil?
|
54
|
+
expect_header_key = params['expect_header'].split(':').first
|
55
|
+
expect_header_value = nil
|
56
|
+
if params['expect_header'].include?(':')
|
57
|
+
expect_header_value = params['expect_header'][params['expect_header'].index(':')+1..-1].strip
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
return host, port, path, proxy_addr, proxy_port, code, match, expect_header_key, expect_header_value, ssl, timeout_limit
|
54
62
|
end
|
55
63
|
|
56
64
|
def http(plan)
|
@@ -58,11 +66,11 @@ class TDIPlan < TDI
|
|
58
66
|
val.is_a?(Hash)
|
59
67
|
}.each_pair do |case_name,case_content|
|
60
68
|
|
61
|
-
host, port, path, proxy_addr, proxy_port, code, match, ssl, timeout_limit = _parse(case_name,case_content)
|
69
|
+
host, port, path, proxy_addr, proxy_port, code, match, expect_header_key, expect_header_value, ssl, timeout_limit = _parse(case_name,case_content)
|
62
70
|
|
63
71
|
# User
|
64
72
|
user = Etc.getpwuid(Process.euid).name
|
65
|
-
|
73
|
+
|
66
74
|
response = nil
|
67
75
|
|
68
76
|
if not proxy_addr.nil? and not proxy_port.nil?
|
@@ -87,7 +95,7 @@ class TDIPlan < TDI
|
|
87
95
|
rescue Timeout::Error
|
88
96
|
failure "HTTP (#{user}): #{case_name} - Timed out (#{timeout_limit}s)."
|
89
97
|
end
|
90
|
-
|
98
|
+
|
91
99
|
else
|
92
100
|
begin
|
93
101
|
Resolv.getaddress(host)
|
@@ -114,19 +122,21 @@ class TDIPlan < TDI
|
|
114
122
|
rescue Timeout::Error
|
115
123
|
failure "HTTP (#{user}): #{case_name} - Timed out."
|
116
124
|
end
|
117
|
-
|
118
125
|
end
|
119
126
|
|
120
127
|
if not response.nil?
|
121
128
|
if not match.nil? and not response.body.chomp.include?(match.chomp)
|
122
|
-
failure "HTTP (#{user}): #{case_name} - Expected string '#{match.chomp}'
|
129
|
+
failure "HTTP (#{user}): #{case_name} - Expected string '#{match.chomp}'"
|
130
|
+
elsif not expect_header_key.nil? and not expect_header_value.nil? and not response[expect_header_key].eql?(expect_header_value)
|
131
|
+
failure "HTTP (#{user}): #{case_name} - Expected header with content '#{expect_header_key}: #{expect_header_value}'"
|
132
|
+
elsif not expect_header_key.nil? and response[expect_header_key].nil?
|
133
|
+
failure "HTTP (#{user}): #{case_name} - Expected header '#{expect_header_key}'"
|
123
134
|
elsif not code.nil? and (response.code.to_i != code)
|
124
|
-
failure "HTTP (#{user}): #{case_name} - Expected HTTP #{code}
|
135
|
+
failure "HTTP (#{user}): #{case_name} - Expected HTTP #{code}"
|
125
136
|
else
|
126
137
|
success "HTTP (#{user}): #{case_name}"
|
127
138
|
end
|
128
139
|
end
|
129
|
-
|
130
140
|
end
|
131
141
|
end
|
132
142
|
end
|
data/lib/tdi/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tdi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rogério Carvalho Schneider
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2014-10-
|
13
|
+
date: 2014-10-30 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: bundler
|