-
Notifications
You must be signed in to change notification settings - Fork 77
/
simple.txt
288 lines (218 loc) · 8.39 KB
/
simple.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
*** Settings ***
Resource variables.txt
Library HttpLibrary.HTTP
Test Setup Create HTTP Context ${HOST}
*** Test Cases ***
Error if GET before connect
[Setup] No Operation
Run Keyword And Expect Error
... Not connected to any HTTP Host. Use "Create HTTP Context" keyword first.
... GET /
Error if invalid URL
[Setup] No Operation
Run Keyword And Expect Error
... "NEITHER_URL_NOR_PATH" needs to be in form of "/path" or "http://host/path"
... GET NEITHER_URL_NOR_PATH
Simple GET
GET /200
Simple GET with complete host
[Setup] No Operation
GET http://${HOST}/200
GET 200
GET /200
Response Status Code Should Equal 200
GET Body
GET /200
Response Body Should Contain Everything is ok
Should Succeed Should Not Should
Next Request Should Not Succeed
Next Request Should Succeed
GET /200
GET 302
GET /302
Response Status Code Should Equal 302
GET 302 with follow
GET /302
Follow Response
Response Status Code Should Equal 200
GET 200 with follow
GET /200_with_location_header
Run Keyword And Expect Error
... You can only follow redirect responses (not 200 OK)
... Follow Response
Follow redirect response without location header
GET /301_no_location_header
Run Keyword And Expect Error
... Can not follow a response without a location header.
... Follow Response
GET 418
Next Request Should Not Succeed
GET /418
Response Status Code Should Equal 418 I'm a teapot
Implicit Next Request Should Succeed
Run Keyword And Expect Error
... Request should have succeeded, but was "404 Not Found".
... GET /404
Next Request May Not Succeed
Next Request May Not Succeed
GET /404 # no error
Explicit Next Request Should Succeed
Next Request Should Succeed
Run Keyword And Expect Error
... Request should have succeeded, but was "404 Not Found".
... GET /404
Next Request Should Have Status Code OK
Next Request Should Have Status Code 418
GET /418 # no error, correct status code
Next Request Should Have Status Code FAIL
Next Request Should Have Status Code 201
Run Keyword And Expect Error
... "418 I'm a teapot" does not start with "201", but should have.
... GET /418
Next Request Should Have Status Code w/ Status Line OK
Next Request Should Have Status Code 418 I'm a teapot
GET /418 # no error, correct status code
Next Request Should Have Status Code w/ Status Line FAIL
Next Request Should Have Status Code 418 I'm a teaCUP
Run Keyword And Expect Error
... "418 I'm a teapot" does not start with "418 I'm a teaCUP", but should have.
... GET /418
HTTP Request with custom HTTP verb should work
HTTP Request PATCH /patch
Response Body Should Contain Got a patch request
Response Should Have Header OK
GET /302
Response Should Have Header Location
Response Should Have Header FAIL
GET /200
Run Keyword And Expect Error
... Response did not have "Krytzmyk" header, but should have.
... Response Should Have Header Krytzmyk
Response Should Not Have Header OK
GET /200
Response Should Not Have Header Location
Response Should Not Have Header FAIL
GET /302
Run Keyword And Expect Error
... Response did have "Location" header, but should not have.
... Response Should Not Have Header Location
Response Header Should Equal OK
GET /302
Response Header Should Equal Location /200
Response Header Should Equal FAIL
GET /302
Run Keyword And Expect Error
... Response header "Location" should have been "http://some.other.host/" but was "/200".
... Response Header Should Equal Location http://some.other.host/
Response Header Should Not Equal OK
GET /302
Response Header Should Not Equal Location http://and.another.host/
Response Header Should Not Equal FAIL
GET /302
Run Keyword And Expect Error
... Response header "Location" was "/200" but should not have been.
... Response Header Should Not Equal Location /200
Simple HEAD request
HEAD /head
Log Response Headers
[Documentation]
... LOG 2:1 Response headers:
... LOG 2:2 REGEXP: ^date: .+
... LOG 2:3 x-powered-by: PHP
HEAD /head
Log Response Headers
Simple DELETE request
DELETE /method
Simple POST request
POST /echo
POST with one word request body
Set Request Body Tooot
Set Request Header Content-Type text/plain
POST /echo
Response Body Should Contain Tooot
PUT with two word request body
Set Request Body Tooot Tooooot
Set Request Header Content-Type text/plain
PUT /echo
Response Body Should Contain Tooot Tooooot
Get Response Status
GET /200
${status}= Get Response Status
Should Be Equal As Strings ${status} 200 OK
Should Start With ${status} 200
Get Response Body
Set Request Body 1234567890
Set Request Header Content-Type text/plain
POST /echo
${body}= Get Response Body
Should Contain ${body} 1234567890
Log Response Body
[Documentation]
... LOG 4:1 Response body:
... LOG 4:2 Hallo!
Set Request Body Hallo!
Set Request Header Content-Type text/plain
POST /echo
Log Response Body
Set Request Header
Set Request Header If-Modified-Since February
GET /304
Response Status Code Should Equal 304
Set Content-Type Request Header
Set Request Header Content-Type image/gif
POST /content_type
Response Status Code Should Equal 200
Response Body Should Contain image/gif
Set Basic Auth
Next Request Should Not Succeed
GET /sesame
Set Basic Auth Aladdin open sesame
GET /sesame
Response Status Code Should Equal 200
Response Body Should Contain sesame street
Request context is resetted correctly
Next Request Should Have Status Code 418 I'm a teaCUP
Run Keyword And Expect Error
... "418 I'm a teapot" does not start with "418 I'm a teaCUP", but should have.
... GET /418
# so far so good, the next request should succeed because the condition in
# the previous lines have already been executed and should be reset for the
# following line:
GET /200
Host header is sent implicitly
Create HTTP Context ${HOST}
GET /hostname
Response Body Should Contain ***${HOST}***
Name-based virtual hosting is supported
# This request will connect to localhost, but with the
# "Host" request header set to "www.example.com"
# See https://en.wikipedia.org/wiki/Virtual_hosting#Name-based
Create HTTP Context ${HOST}
Set Request Header Host www.example.com
GET /hostname
Response Body Should Contain ***www.example.com***
HEAD request with User Agent Header
Set Request Header User-Agent MYBROWSER
HEAD /
Response Header Should Equal x-request-user-agent MYBROWSER
Test Duplicate Headers
GET /duplicate_header
${x}= Get Response Header Duplicate
Length Should Be ${x} 2
Should Be Equal ${x[0]} Yes
Should Be Equal ${x[1]} Si!
Mockserver sets cookies
GET /set_cookie
Response Header Should Equal set-cookie cookie_monster=happy
No cookies should work
GET /verify_cookie
Response Body Should Contain Cookie Monster is sad
Cookies Should Work
GET /set_cookie
GET /verify_cookie
Response Body Should Contain Cookie Monster is happy
New HTTP Context should create a new cookie jar
GET /set_cookie
Create HTTP Context ${HOST}
GET /verify_cookie
Response Body Should Contain Cookie Monster is sad