kookaburra 0.24.1 → 0.25.0
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.
- data/VERSION +1 -1
- data/kookaburra.gemspec +3 -3
- data/lib/kookaburra/api_driver.rb +3 -12
- data/spec/kookaburra/api_driver_spec.rb +11 -0
- metadata +148 -145
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.
|
|
1
|
+
0.25.0
|
data/kookaburra.gemspec
CHANGED
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
|
|
6
6
|
Gem::Specification.new do |s|
|
|
7
7
|
s.name = "kookaburra"
|
|
8
|
-
s.version = "0.
|
|
8
|
+
s.version = "0.25.0"
|
|
9
9
|
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
11
11
|
s.authors = ["John Wilger", "Sam Livingston-Gray", "Ravi Gadad"]
|
|
12
|
-
s.date = "2012-
|
|
12
|
+
s.date = "2012-07-08"
|
|
13
13
|
s.description = "Cucumber + Capybara = Kookaburra? It made sense at the time."
|
|
14
14
|
s.email = "johnwilger@gmail.com"
|
|
15
15
|
s.extra_rdoc_files = [
|
|
@@ -59,7 +59,7 @@ Gem::Specification.new do |s|
|
|
|
59
59
|
s.homepage = "http://github.com/projectdx/kookaburra"
|
|
60
60
|
s.licenses = ["MIT"]
|
|
61
61
|
s.require_paths = ["lib"]
|
|
62
|
-
s.rubygems_version = "1.8.
|
|
62
|
+
s.rubygems_version = "1.8.23"
|
|
63
63
|
s.summary = "WindowDriver testing pattern for Ruby apps"
|
|
64
64
|
|
|
65
65
|
if s.respond_to? :specification_version then
|
|
@@ -79,22 +79,13 @@ class Kookaburra
|
|
|
79
79
|
end
|
|
80
80
|
|
|
81
81
|
def check_response_status!(request_type, response, options)
|
|
82
|
-
verb
|
|
83
|
-
expected_status = options[:expected_response_status] ||
|
|
84
|
-
unless expected_status
|
|
82
|
+
verb = request_type.to_s.upcase
|
|
83
|
+
expected_status = options[:expected_response_status] || (200..299)
|
|
84
|
+
unless expected_status === response.status
|
|
85
85
|
raise UnexpectedResponse, "#{verb} to #{response.url} responded with " \
|
|
86
86
|
+ "#{response.status} status, not #{expected_status} as expected\n\n" \
|
|
87
87
|
+ response.body
|
|
88
88
|
end
|
|
89
89
|
end
|
|
90
|
-
|
|
91
|
-
def verb_map
|
|
92
|
-
{
|
|
93
|
-
:get => ['GET', 200],
|
|
94
|
-
:post => ['POST', 201],
|
|
95
|
-
:put => ['PUT', 200],
|
|
96
|
-
:delete => ['DELETE', 200]
|
|
97
|
-
}
|
|
98
|
-
end
|
|
99
90
|
end
|
|
100
91
|
end
|
|
@@ -53,6 +53,17 @@ describe Kookaburra::APIDriver do
|
|
|
53
53
|
"POST to /foo responded with 201 status, not 666 as expected\n\nfoo")
|
|
54
54
|
end
|
|
55
55
|
|
|
56
|
+
it 'is OK by default with a response status of 201' do
|
|
57
|
+
lambda { api.post('/foo', 'bar') } \
|
|
58
|
+
.should_not raise_error(Kookaburra::UnexpectedResponse)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
it 'is OK by default with a response status of 200' do
|
|
62
|
+
response.stub!(:status => 200)
|
|
63
|
+
lambda { api.post('/foo', 'bar') } \
|
|
64
|
+
.should_not raise_error(Kookaburra::UnexpectedResponse)
|
|
65
|
+
end
|
|
66
|
+
|
|
56
67
|
it 'raises an ArgumentError with a useful message if no request path is specified' do
|
|
57
68
|
lambda { api.post(nil, 'bar') } \
|
|
58
69
|
.should raise_error(ArgumentError, "You must specify a request URL, but it was nil.")
|
metadata
CHANGED
|
@@ -1,161 +1,170 @@
|
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kookaburra
|
|
3
|
-
version: !ruby/object:Gem::Version
|
|
4
|
-
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.25.0
|
|
5
5
|
prerelease:
|
|
6
|
-
segments:
|
|
7
|
-
- 0
|
|
8
|
-
- 24
|
|
9
|
-
- 1
|
|
10
|
-
version: 0.24.1
|
|
11
6
|
platform: ruby
|
|
12
|
-
authors:
|
|
7
|
+
authors:
|
|
13
8
|
- John Wilger
|
|
14
9
|
- Sam Livingston-Gray
|
|
15
10
|
- Ravi Gadad
|
|
16
11
|
autorequire:
|
|
17
12
|
bindir: bin
|
|
18
13
|
cert_chain: []
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
- !ruby/object:Gem::Dependency
|
|
23
|
-
type: :runtime
|
|
24
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
|
25
|
-
none: false
|
|
26
|
-
requirements:
|
|
27
|
-
- - ">="
|
|
28
|
-
- !ruby/object:Gem::Version
|
|
29
|
-
hash: 3
|
|
30
|
-
segments:
|
|
31
|
-
- 0
|
|
32
|
-
version: "0"
|
|
33
|
-
version_requirements: *id001
|
|
14
|
+
date: 2012-07-08 00:00:00.000000000 Z
|
|
15
|
+
dependencies:
|
|
16
|
+
- !ruby/object:Gem::Dependency
|
|
34
17
|
name: patron
|
|
35
|
-
|
|
36
|
-
|
|
18
|
+
requirement: !ruby/object:Gem::Requirement
|
|
19
|
+
none: false
|
|
20
|
+
requirements:
|
|
21
|
+
- - ! '>='
|
|
22
|
+
- !ruby/object:Gem::Version
|
|
23
|
+
version: '0'
|
|
37
24
|
type: :runtime
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
version: "0"
|
|
47
|
-
version_requirements: *id002
|
|
25
|
+
prerelease: false
|
|
26
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
27
|
+
none: false
|
|
28
|
+
requirements:
|
|
29
|
+
- - ! '>='
|
|
30
|
+
- !ruby/object:Gem::Version
|
|
31
|
+
version: '0'
|
|
32
|
+
- !ruby/object:Gem::Dependency
|
|
48
33
|
name: json_pure
|
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
|
35
|
+
none: false
|
|
36
|
+
requirements:
|
|
37
|
+
- - ! '>='
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
version: '0'
|
|
40
|
+
type: :runtime
|
|
49
41
|
prerelease: false
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
hash: 3
|
|
58
|
-
segments:
|
|
59
|
-
- 0
|
|
60
|
-
version: "0"
|
|
61
|
-
version_requirements: *id003
|
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
43
|
+
none: false
|
|
44
|
+
requirements:
|
|
45
|
+
- - ! '>='
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '0'
|
|
48
|
+
- !ruby/object:Gem::Dependency
|
|
62
49
|
name: rspec
|
|
63
|
-
|
|
64
|
-
|
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
|
51
|
+
none: false
|
|
52
|
+
requirements:
|
|
53
|
+
- - ! '>='
|
|
54
|
+
- !ruby/object:Gem::Version
|
|
55
|
+
version: '0'
|
|
65
56
|
type: :development
|
|
66
|
-
requirement: &id004 !ruby/object:Gem::Requirement
|
|
67
|
-
none: false
|
|
68
|
-
requirements:
|
|
69
|
-
- - ">="
|
|
70
|
-
- !ruby/object:Gem::Version
|
|
71
|
-
hash: 3
|
|
72
|
-
segments:
|
|
73
|
-
- 0
|
|
74
|
-
version: "0"
|
|
75
|
-
version_requirements: *id004
|
|
76
|
-
name: capybara
|
|
77
57
|
prerelease: false
|
|
78
|
-
|
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
59
|
+
none: false
|
|
60
|
+
requirements:
|
|
61
|
+
- - ! '>='
|
|
62
|
+
- !ruby/object:Gem::Version
|
|
63
|
+
version: '0'
|
|
64
|
+
- !ruby/object:Gem::Dependency
|
|
65
|
+
name: capybara
|
|
66
|
+
requirement: !ruby/object:Gem::Requirement
|
|
67
|
+
none: false
|
|
68
|
+
requirements:
|
|
69
|
+
- - ! '>='
|
|
70
|
+
- !ruby/object:Gem::Version
|
|
71
|
+
version: '0'
|
|
79
72
|
type: :development
|
|
80
|
-
requirement: &id005 !ruby/object:Gem::Requirement
|
|
81
|
-
none: false
|
|
82
|
-
requirements:
|
|
83
|
-
- - ">="
|
|
84
|
-
- !ruby/object:Gem::Version
|
|
85
|
-
hash: 3
|
|
86
|
-
segments:
|
|
87
|
-
- 0
|
|
88
|
-
version: "0"
|
|
89
|
-
version_requirements: *id005
|
|
90
|
-
name: yard
|
|
91
73
|
prerelease: false
|
|
92
|
-
|
|
74
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
75
|
+
none: false
|
|
76
|
+
requirements:
|
|
77
|
+
- - ! '>='
|
|
78
|
+
- !ruby/object:Gem::Version
|
|
79
|
+
version: '0'
|
|
80
|
+
- !ruby/object:Gem::Dependency
|
|
81
|
+
name: yard
|
|
82
|
+
requirement: !ruby/object:Gem::Requirement
|
|
83
|
+
none: false
|
|
84
|
+
requirements:
|
|
85
|
+
- - ! '>='
|
|
86
|
+
- !ruby/object:Gem::Version
|
|
87
|
+
version: '0'
|
|
93
88
|
type: :development
|
|
94
|
-
|
|
89
|
+
prerelease: false
|
|
90
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
95
91
|
none: false
|
|
96
|
-
requirements:
|
|
97
|
-
- -
|
|
98
|
-
- !ruby/object:Gem::Version
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
- 1
|
|
102
|
-
- 0
|
|
103
|
-
version: "1.0"
|
|
104
|
-
version_requirements: *id006
|
|
92
|
+
requirements:
|
|
93
|
+
- - ! '>='
|
|
94
|
+
- !ruby/object:Gem::Version
|
|
95
|
+
version: '0'
|
|
96
|
+
- !ruby/object:Gem::Dependency
|
|
105
97
|
name: redcarpet
|
|
106
|
-
|
|
107
|
-
|
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
|
99
|
+
none: false
|
|
100
|
+
requirements:
|
|
101
|
+
- - ~>
|
|
102
|
+
- !ruby/object:Gem::Version
|
|
103
|
+
version: '1.0'
|
|
108
104
|
type: :development
|
|
109
|
-
requirement: &id007 !ruby/object:Gem::Requirement
|
|
110
|
-
none: false
|
|
111
|
-
requirements:
|
|
112
|
-
- - ">="
|
|
113
|
-
- !ruby/object:Gem::Version
|
|
114
|
-
hash: 3
|
|
115
|
-
segments:
|
|
116
|
-
- 0
|
|
117
|
-
version: "0"
|
|
118
|
-
version_requirements: *id007
|
|
119
|
-
name: jeweler
|
|
120
105
|
prerelease: false
|
|
121
|
-
|
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
107
|
+
none: false
|
|
108
|
+
requirements:
|
|
109
|
+
- - ~>
|
|
110
|
+
- !ruby/object:Gem::Version
|
|
111
|
+
version: '1.0'
|
|
112
|
+
- !ruby/object:Gem::Dependency
|
|
113
|
+
name: jeweler
|
|
114
|
+
requirement: !ruby/object:Gem::Requirement
|
|
115
|
+
none: false
|
|
116
|
+
requirements:
|
|
117
|
+
- - ! '>='
|
|
118
|
+
- !ruby/object:Gem::Version
|
|
119
|
+
version: '0'
|
|
122
120
|
type: :development
|
|
123
|
-
requirement: &id008 !ruby/object:Gem::Requirement
|
|
124
|
-
none: false
|
|
125
|
-
requirements:
|
|
126
|
-
- - ">="
|
|
127
|
-
- !ruby/object:Gem::Version
|
|
128
|
-
hash: 3
|
|
129
|
-
segments:
|
|
130
|
-
- 0
|
|
131
|
-
version: "0"
|
|
132
|
-
version_requirements: *id008
|
|
133
|
-
name: reek
|
|
134
121
|
prerelease: false
|
|
135
|
-
|
|
122
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
123
|
+
none: false
|
|
124
|
+
requirements:
|
|
125
|
+
- - ! '>='
|
|
126
|
+
- !ruby/object:Gem::Version
|
|
127
|
+
version: '0'
|
|
128
|
+
- !ruby/object:Gem::Dependency
|
|
129
|
+
name: reek
|
|
130
|
+
requirement: !ruby/object:Gem::Requirement
|
|
131
|
+
none: false
|
|
132
|
+
requirements:
|
|
133
|
+
- - ! '>='
|
|
134
|
+
- !ruby/object:Gem::Version
|
|
135
|
+
version: '0'
|
|
136
136
|
type: :development
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
version: "0"
|
|
146
|
-
version_requirements: *id009
|
|
137
|
+
prerelease: false
|
|
138
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
139
|
+
none: false
|
|
140
|
+
requirements:
|
|
141
|
+
- - ! '>='
|
|
142
|
+
- !ruby/object:Gem::Version
|
|
143
|
+
version: '0'
|
|
144
|
+
- !ruby/object:Gem::Dependency
|
|
147
145
|
name: sinatra
|
|
146
|
+
requirement: !ruby/object:Gem::Requirement
|
|
147
|
+
none: false
|
|
148
|
+
requirements:
|
|
149
|
+
- - ! '>='
|
|
150
|
+
- !ruby/object:Gem::Version
|
|
151
|
+
version: '0'
|
|
152
|
+
type: :development
|
|
148
153
|
prerelease: false
|
|
154
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
155
|
+
none: false
|
|
156
|
+
requirements:
|
|
157
|
+
- - ! '>='
|
|
158
|
+
- !ruby/object:Gem::Version
|
|
159
|
+
version: '0'
|
|
149
160
|
description: Cucumber + Capybara = Kookaburra? It made sense at the time.
|
|
150
161
|
email: johnwilger@gmail.com
|
|
151
162
|
executables: []
|
|
152
|
-
|
|
153
163
|
extensions: []
|
|
154
|
-
|
|
155
|
-
extra_rdoc_files:
|
|
164
|
+
extra_rdoc_files:
|
|
156
165
|
- LICENSE.txt
|
|
157
166
|
- README.markdown
|
|
158
|
-
files:
|
|
167
|
+
files:
|
|
159
168
|
- .document
|
|
160
169
|
- .rspec
|
|
161
170
|
- .rvmrc
|
|
@@ -195,37 +204,31 @@ files:
|
|
|
195
204
|
- spec/support/shared_examples/it_can_make_assertions.rb
|
|
196
205
|
- spec/support/shared_examples/it_has_a_dependency_accessor.rb
|
|
197
206
|
homepage: http://github.com/projectdx/kookaburra
|
|
198
|
-
licenses:
|
|
207
|
+
licenses:
|
|
199
208
|
- MIT
|
|
200
209
|
post_install_message:
|
|
201
210
|
rdoc_options: []
|
|
202
|
-
|
|
203
|
-
require_paths:
|
|
211
|
+
require_paths:
|
|
204
212
|
- lib
|
|
205
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
|
213
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
206
214
|
none: false
|
|
207
|
-
requirements:
|
|
208
|
-
- -
|
|
209
|
-
- !ruby/object:Gem::Version
|
|
210
|
-
|
|
211
|
-
segments:
|
|
215
|
+
requirements:
|
|
216
|
+
- - ! '>='
|
|
217
|
+
- !ruby/object:Gem::Version
|
|
218
|
+
version: '0'
|
|
219
|
+
segments:
|
|
212
220
|
- 0
|
|
213
|
-
|
|
214
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
221
|
+
hash: -3008907103704146289
|
|
222
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
215
223
|
none: false
|
|
216
|
-
requirements:
|
|
217
|
-
- -
|
|
218
|
-
- !ruby/object:Gem::Version
|
|
219
|
-
|
|
220
|
-
segments:
|
|
221
|
-
- 0
|
|
222
|
-
version: "0"
|
|
224
|
+
requirements:
|
|
225
|
+
- - ! '>='
|
|
226
|
+
- !ruby/object:Gem::Version
|
|
227
|
+
version: '0'
|
|
223
228
|
requirements: []
|
|
224
|
-
|
|
225
229
|
rubyforge_project:
|
|
226
|
-
rubygems_version: 1.8.
|
|
230
|
+
rubygems_version: 1.8.23
|
|
227
231
|
signing_key:
|
|
228
232
|
specification_version: 3
|
|
229
233
|
summary: WindowDriver testing pattern for Ruby apps
|
|
230
234
|
test_files: []
|
|
231
|
-
|