diff --git a/integration/test_format.py b/integration/test_format.py index 6b1fc7709..61e614182 100755 --- a/integration/test_format.py +++ b/integration/test_format.py @@ -25,7 +25,7 @@ def test(format_type, hurl_file): cmd = ["hurlfmt", "--format", format_type, hurl_file] print(" ".join(cmd)) result = subprocess.run(cmd, stdout=subprocess.PIPE) - expected = open(output_file, encoding="utf-8").read().strip() + expected = open(output_file, encoding="utf-8").read() actual = decode_string(result.stdout) if actual != expected: print(f">>> error in stdout for {format_type}") diff --git a/integration/test_html_output.py b/integration/test_html_output.py index 1c052d97f..0cbe3c33c 100755 --- a/integration/test_html_output.py +++ b/integration/test_html_output.py @@ -16,7 +16,7 @@ def test(html_file): expected = codecs.open( hurl_file, encoding="utf-8-sig" ).read() # Input file can be saved with a BOM - if actual != expected: + if actual.strip() != expected.strip(): print(">>> error in html file") print(f"actual: <{actual}>\nexpected: <{expected}>") sys.exit(1) diff --git a/integration/tests_error_lint/spaces.hurl b/integration/tests_error_lint/spaces.hurl index 0b6ffadb5..3f13d02d3 100644 --- a/integration/tests_error_lint/spaces.hurl +++ b/integration/tests_error_lint/spaces.hurl @@ -1 +1 @@ -GET http://localhost:8000/hello \ No newline at end of file +GET http://localhost:8000/hello diff --git a/integration/tests_failed/assert_base64.html b/integration/tests_failed/assert_base64.html index fbb4e745e..6bc760763 100644 --- a/integration/tests_failed/assert_base64.html +++ b/integration/tests_failed/assert_base64.html @@ -11,4 +11,4 @@ HTTP/1.0 200 base64,bGluZTEKbGluZTIKbGluZTMK; - \ No newline at end of file + diff --git a/integration/tests_failed/assert_base64.json b/integration/tests_failed/assert_base64.json new file mode 100644 index 000000000..2dfc90174 --- /dev/null +++ b/integration/tests_failed/assert_base64.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-base64"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"bGluZTEKbGluZTIKbGluZTMK"}}}]} diff --git a/integration/tests_failed/assert_bytearray.html b/integration/tests_failed/assert_bytearray.html index 109ecd307..08fd0c000 100644 --- a/integration/tests_failed/assert_bytearray.html +++ b/integration/tests_failed/assert_bytearray.html @@ -3,4 +3,4 @@ [Asserts] bytes equals hex,00; sha256 equals hex,a8100ae6aa1940d0b663bb31cd466142ebbdbd5187131b92d93818987832eb88; - \ No newline at end of file + diff --git a/integration/tests_failed/assert_bytearray.json b/integration/tests_failed/assert_bytearray.json new file mode 100644 index 000000000..7dd5dc74a --- /dev/null +++ b/integration/tests_failed/assert_bytearray.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-bytearray"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"bytes"},"predicate":{"type":"equal","value":"AA==","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"qBAK5qoZQNC2Y7sxzUZhQuu9vVGHExuS2TgYmHgy64g=","encoding":"base64"}}]}}]} diff --git a/integration/tests_failed/assert_content_encoding.html b/integration/tests_failed/assert_content_encoding.html index 59cccc8cf..e9609bfb2 100644 --- a/integration/tests_failed/assert_content_encoding.html +++ b/integration/tests_failed/assert_content_encoding.html @@ -2,4 +2,4 @@ GET http://localhost:8000/error/content-encoding HTTP/1.0 200 ```Hello World!``` - \ No newline at end of file + diff --git a/integration/tests_failed/assert_content_encoding.json b/integration/tests_failed/assert_content_encoding.json new file mode 100644 index 000000000..0974fcde4 --- /dev/null +++ b/integration/tests_failed/assert_content_encoding.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error/content-encoding"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} diff --git a/integration/tests_failed/assert_decompress.html b/integration/tests_failed/assert_decompress.html index 2a5f4bbd3..bf1561f45 100644 --- a/integration/tests_failed/assert_decompress.html +++ b/integration/tests_failed/assert_decompress.html @@ -2,4 +2,4 @@ HTTP/1.0 200 ```Hello World!``` - \ No newline at end of file + diff --git a/integration/tests_failed/assert_decompress.json b/integration/tests_failed/assert_decompress.json new file mode 100644 index 000000000..c3d9c52bc --- /dev/null +++ b/integration/tests_failed/assert_decompress.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-decompress"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} diff --git a/integration/tests_failed/assert_file.html b/integration/tests_failed/assert_file.html index 5388b8eea..822a38cfc 100644 --- a/integration/tests_failed/assert_file.html +++ b/integration/tests_failed/assert_file.html @@ -7,4 +7,4 @@ HTTP/1.0 200 file,data.txt; - \ No newline at end of file + diff --git a/integration/tests_failed/assert_file.json b/integration/tests_failed/assert_file.json new file mode 100644 index 000000000..57dbe2c85 --- /dev/null +++ b/integration/tests_failed/assert_file.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-file"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"data.txt"}}}]} diff --git a/integration/tests_failed/assert_header_not_found.html b/integration/tests_failed/assert_header_not_found.html index 5c0e23b16..26090d11f 100644 --- a/integration/tests_failed/assert_header_not_found.html +++ b/integration/tests_failed/assert_header_not_found.html @@ -1,4 +1,4 @@
GET http://localhost:8000/error-assert-header-not-found
 HTTP/1.0 200
 Custom: ???
-
\ No newline at end of file + diff --git a/integration/tests_failed/assert_header_not_found.json b/integration/tests_failed/assert_header_not_found.json new file mode 100644 index 000000000..94bfd5207 --- /dev/null +++ b/integration/tests_failed/assert_header_not_found.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-header-not-found"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Custom","value":"???"}]}}]} diff --git a/integration/tests_failed/assert_header_value.html b/integration/tests_failed/assert_header_value.html index 972510f6c..fd022d6a4 100644 --- a/integration/tests_failed/assert_header_value.html +++ b/integration/tests_failed/assert_header_value.html @@ -4,4 +4,5 @@ GET http://localhost:8000/error-assert-header-value HTTP/1.0 200 -Content-Type: ??? \ No newline at end of file +Content-Type: ??? + diff --git a/integration/tests_failed/assert_header_value.hurl b/integration/tests_failed/assert_header_value.hurl index 53a96e016..e09724c9e 100644 --- a/integration/tests_failed/assert_header_value.hurl +++ b/integration/tests_failed/assert_header_value.hurl @@ -4,4 +4,4 @@ Content-Type: ??? GET http://localhost:8000/error-assert-header-value HTTP/1.0 200 -Content-Type: ??? \ No newline at end of file +Content-Type: ??? diff --git a/integration/tests_failed/assert_header_value.json b/integration/tests_failed/assert_header_value.json new file mode 100644 index 000000000..548914c96 --- /dev/null +++ b/integration/tests_failed/assert_header_value.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-header-value"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"???"}]}},{"request":{"method":"GET","url":"http://localhost:8000/error-assert-header-value"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"???"}]}}]} diff --git a/integration/tests_failed/assert_http_version.html b/integration/tests_failed/assert_http_version.html index b177c2132..c40ea2a35 100644 --- a/integration/tests_failed/assert_http_version.html +++ b/integration/tests_failed/assert_http_version.html @@ -1,4 +1,4 @@
GET http://localhost:8000/error-assert/http-version
 HTTP/2 200
 
-
\ No newline at end of file + diff --git a/integration/tests_failed/assert_http_version.json b/integration/tests_failed/assert_http_version.json new file mode 100644 index 000000000..2d88462d3 --- /dev/null +++ b/integration/tests_failed/assert_http_version.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert/http-version"},"response":{"version":"HTTP/2","status":200}}]} diff --git a/integration/tests_failed/assert_invalid_predicate_type.html b/integration/tests_failed/assert_invalid_predicate_type.html index ec92885c8..e6056081e 100644 --- a/integration/tests_failed/assert_invalid_predicate_type.html +++ b/integration/tests_failed/assert_invalid_predicate_type.html @@ -3,4 +3,4 @@ [Asserts] header "content-type" equals 1 - \ No newline at end of file + diff --git a/integration/tests_failed/assert_invalid_predicate_type.json b/integration/tests_failed/assert_invalid_predicate_type.json new file mode 100644 index 000000000..1fa49d3ef --- /dev/null +++ b/integration/tests_failed/assert_invalid_predicate_type.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-invalid-predicate-type"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"header","name":"content-type"},"predicate":{"type":"equal","value":1}}]}}]} diff --git a/integration/tests_failed/assert_match_utf8.html b/integration/tests_failed/assert_match_utf8.html index 25836c0b2..71caeed7b 100644 --- a/integration/tests_failed/assert_match_utf8.html +++ b/integration/tests_failed/assert_match_utf8.html @@ -3,4 +3,4 @@ [Asserts] body matches ".*" - \ No newline at end of file + diff --git a/integration/tests_failed/assert_match_utf8.json b/integration/tests_failed/assert_match_utf8.json new file mode 100644 index 000000000..09eb52e84 --- /dev/null +++ b/integration/tests_failed/assert_match_utf8.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert/match-utf8"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"body"},"predicate":{"type":"match","value":".*"}}]}}]} diff --git a/integration/tests_failed/assert_newline.json b/integration/tests_failed/assert_newline.json new file mode 100644 index 000000000..464c5dfe7 --- /dev/null +++ b/integration/tests_failed/assert_newline.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-newline"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"

Hello

\n"}}}]} diff --git a/integration/tests_failed/assert_query_cookie.html b/integration/tests_failed/assert_query_cookie.html index 34d01eef9..06696a655 100644 --- a/integration/tests_failed/assert_query_cookie.html +++ b/integration/tests_failed/assert_query_cookie.html @@ -13,4 +13,4 @@ - \ No newline at end of file + diff --git a/integration/tests_failed/assert_query_cookie.json b/integration/tests_failed/assert_query_cookie.json new file mode 100644 index 000000000..78b4b2b6c --- /dev/null +++ b/integration/tests_failed/assert_query_cookie.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-query-cookie"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"cookie","expr":"cookie1[Secure]"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"cookie","expr":"cookie1[Secure]"},"predicate":{"type":"equal","value":false}},{"query":{"type":"cookie","expr":"cookie1[Secure]"},"predicate":{"not":true,"type":"equal","value":true}},{"query":{"type":"cookie","expr":"cookie2[Secure]"},"predicate":{"type":"exist"}},{"query":{"type":"cookie","expr":"cookie2[Secure]"},"predicate":{"type":"equal","value":true}},{"query":{"type":"cookie","expr":"cookie2[Secure]"},"predicate":{"not":true,"type":"equal","value":true}}]}}]} diff --git a/integration/tests_failed/assert_query_invalid_regex.html b/integration/tests_failed/assert_query_invalid_regex.html index fa4743e3a..7bb3f6a7a 100644 --- a/integration/tests_failed/assert_query_invalid_regex.html +++ b/integration/tests_failed/assert_query_invalid_regex.html @@ -2,4 +2,4 @@ HTTP/1.0 200 [Asserts] regex "[x" exists - \ No newline at end of file + diff --git a/integration/tests_failed/assert_query_invalid_regex.json b/integration/tests_failed/assert_query_invalid_regex.json new file mode 100644 index 000000000..8a3496f6b --- /dev/null +++ b/integration/tests_failed/assert_query_invalid_regex.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-query-invalid-regex"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"regex","expr":"[x"},"predicate":{"type":"exist"}}]}}]} diff --git a/integration/tests_failed/assert_query_invalid_xpath.html b/integration/tests_failed/assert_query_invalid_xpath.html index 4518d2801..1a97ce35a 100644 --- a/integration/tests_failed/assert_query_invalid_xpath.html +++ b/integration/tests_failed/assert_query_invalid_xpath.html @@ -2,4 +2,4 @@ HTTP/1.0 200 [Asserts] xpath "//" equals 1 - \ No newline at end of file + diff --git a/integration/tests_failed/assert_query_invalid_xpath.json b/integration/tests_failed/assert_query_invalid_xpath.json new file mode 100644 index 000000000..8c8849769 --- /dev/null +++ b/integration/tests_failed/assert_query_invalid_xpath.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/utf8"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"//"},"predicate":{"type":"equal","value":1}}]}}]} diff --git a/integration/tests_failed/assert_status.html b/integration/tests_failed/assert_status.html index 038eba96f..384a29315 100644 --- a/integration/tests_failed/assert_status.html +++ b/integration/tests_failed/assert_status.html @@ -1,4 +1,4 @@
GET http://localhost:8000/not_found
 HTTP/1.0 200
 
-
\ No newline at end of file + diff --git a/integration/tests_failed/assert_status.json b/integration/tests_failed/assert_status.json new file mode 100644 index 000000000..be5adad7c --- /dev/null +++ b/integration/tests_failed/assert_status.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/not_found"},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_failed/assert_template_variable_not_found.html b/integration/tests_failed/assert_template_variable_not_found.html index bc270bac6..cbe7c6737 100644 --- a/integration/tests_failed/assert_template_variable_not_found.html +++ b/integration/tests_failed/assert_template_variable_not_found.html @@ -3,4 +3,4 @@ [Asserts] header "content-type" equals "{{content_type}}" - \ No newline at end of file + diff --git a/integration/tests_failed/assert_template_variable_not_found.json b/integration/tests_failed/assert_template_variable_not_found.json index 6741548ad..7c41cefd9 100644 --- a/integration/tests_failed/assert_template_variable_not_found.json +++ b/integration/tests_failed/assert_template_variable_not_found.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-template-variable-not-found"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"header","name":"content-type"},"predicate":{"type":"equal","value":"{{content_type}}"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-template-variable-not-found"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"header","name":"content-type"},"predicate":{"type":"equal","value":"{{content_type}}"}}]}}]} diff --git a/integration/tests_failed/assert_value_error.html b/integration/tests_failed/assert_value_error.html index 1e241fc68..f3b1c395e 100644 --- a/integration/tests_failed/assert_value_error.html +++ b/integration/tests_failed/assert_value_error.html @@ -8,4 +8,5 @@ jsonpath "$.values" not contains "Hello" jsonpath "$.count" greaterThan 5 jsonpath "$.count" isFloat -bytes contains hex,00; \ No newline at end of file +bytes contains hex,00; + diff --git a/integration/tests_failed/assert_value_error.hurl b/integration/tests_failed/assert_value_error.hurl index d3388a64c..04b51f3d7 100644 --- a/integration/tests_failed/assert_value_error.hurl +++ b/integration/tests_failed/assert_value_error.hurl @@ -8,4 +8,4 @@ jsonpath "$.values" includes 100 jsonpath "$.values" not contains "Hello" jsonpath "$.count" greaterThan 5 jsonpath "$.count" isFloat -bytes contains hex,00; \ No newline at end of file +bytes contains hex,00; diff --git a/integration/tests_failed/assert_value_error.json b/integration/tests_failed/assert_value_error.json new file mode 100644 index 000000000..39ce050ab --- /dev/null +++ b/integration/tests_failed/assert_value_error.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-value"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"header","name":"content-type"},"predicate":{"type":"equal","value":"XXX"}},{"query":{"type":"header","name":"content-type"},"predicate":{"type":"not-equal","value":"text/html; charset=utf-8"}},{"query":{"type":"jsonpath","expr":"$.id"},"predicate":{"type":"equal","value":"000001"}},{"query":{"type":"jsonpath","expr":"$.values"},"predicate":{"type":"include","value":100}},{"query":{"type":"jsonpath","expr":"$.values"},"predicate":{"not":true,"type":"contain","value":"Hello"}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"greater","value":5}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"isFloat"}},{"query":{"type":"bytes"},"predicate":{"type":"contain","value":"AA==","encoding":"base64"}}]}}]} diff --git a/integration/tests_failed/assert_variable.html b/integration/tests_failed/assert_variable.html index 1f7a31dd5..399544750 100644 --- a/integration/tests_failed/assert_variable.html +++ b/integration/tests_failed/assert_variable.html @@ -9,4 +9,4 @@ variable "status" equals {{unknown}} variable "status" equals {{type}} variable "status" equals {{length}} - \ No newline at end of file + diff --git a/integration/tests_failed/assert_variable.json b/integration/tests_failed/assert_variable.json new file mode 100644 index 000000000..a94be653a --- /dev/null +++ b/integration/tests_failed/assert_variable.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-variable"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"status","query":{"type":"status"}},{"name":"length","query":{"type":"header","name":"content-length"}},{"name":"type","query":{"type":"header","name":"content-type"}}],"asserts":[{"query":{"type":"variable","name":"toto"},"predicate":{"type":"equal","value":"tata"}},{"query":{"type":"variable","name":"status"},"predicate":{"type":"equal","value":"unknown"}},{"query":{"type":"variable","name":"status"},"predicate":{"type":"equal","value":"type"}},{"query":{"type":"variable","name":"status"},"predicate":{"type":"equal","value":"length"}}]}}]} diff --git a/integration/tests_failed/assert_xpath.html b/integration/tests_failed/assert_xpath.html index 11ff9bb93..4d40d1748 100644 --- a/integration/tests_failed/assert_xpath.html +++ b/integration/tests_failed/assert_xpath.html @@ -2,4 +2,4 @@ HTTP/1.0 200 [Asserts] xpath "strong(//head/title)" equals "Welcome to Quiz!" - \ No newline at end of file + diff --git a/integration/tests_failed/assert_xpath.json b/integration/tests_failed/assert_xpath.json new file mode 100644 index 000000000..ac76e0462 --- /dev/null +++ b/integration/tests_failed/assert_xpath.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-assert-xpath"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"strong(//head/title)"},"predicate":{"type":"equal","value":"Welcome to Quiz!"}}]}}]} diff --git a/integration/tests_failed/body_json.html b/integration/tests_failed/body_json.html index 676d2f7b4..5edd56e23 100644 --- a/integration/tests_failed/body_json.html +++ b/integration/tests_failed/body_json.html @@ -2,4 +2,4 @@ { "success": {{success}} } - \ No newline at end of file + diff --git a/integration/tests_failed/body_json.json b/integration/tests_failed/body_json.json new file mode 100644 index 000000000..d31990ab6 --- /dev/null +++ b/integration/tests_failed/body_json.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"POST","url":"https://unused","body":{"type":"json","value":{"success":"{{success}}"}}}}]} diff --git a/integration/tests_failed/connect_timeout.html b/integration/tests_failed/connect_timeout.html index dda96af0f..48199056a 100644 --- a/integration/tests_failed/connect_timeout.html +++ b/integration/tests_failed/connect_timeout.html @@ -1,4 +1,4 @@
GET http://10.0.0.0
 
 
-
\ No newline at end of file + diff --git a/integration/tests_failed/connect_timeout.json b/integration/tests_failed/connect_timeout.json new file mode 100644 index 000000000..56355d686 --- /dev/null +++ b/integration/tests_failed/connect_timeout.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://10.0.0.0"}}]} diff --git a/integration/tests_failed/file_read_access.html b/integration/tests_failed/file_read_access.html index baab0a98e..0bd9faa7a 100644 --- a/integration/tests_failed/file_read_access.html +++ b/integration/tests_failed/file_read_access.html @@ -2,4 +2,4 @@ file,does_not_exist; HTTP/1.1 200 - \ No newline at end of file + diff --git a/integration/tests_failed/file_read_access.json b/integration/tests_failed/file_read_access.json new file mode 100644 index 000000000..f171ed58c --- /dev/null +++ b/integration/tests_failed/file_read_access.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/error-file-read-access","body":{"type":"file","filename":"does_not_exist"}},"response":{"version":"HTTP/1.1","status":200}}]} diff --git a/integration/tests_failed/file_unauthorized.html b/integration/tests_failed/file_unauthorized.html index 2ae59839d..b14d5e9e6 100644 --- a/integration/tests_failed/file_unauthorized.html +++ b/integration/tests_failed/file_unauthorized.html @@ -18,4 +18,5 @@ [MultipartFormData] file1: file,../secret.txt; -HTTP/1.0 200 \ No newline at end of file +HTTP/1.0 200 + diff --git a/integration/tests_failed/file_unauthorized.hurl b/integration/tests_failed/file_unauthorized.hurl index 9a79bcb63..2e9a14e82 100644 --- a/integration/tests_failed/file_unauthorized.hurl +++ b/integration/tests_failed/file_unauthorized.hurl @@ -18,4 +18,4 @@ POST http://localhost:8000/post-file [MultipartFormData] file1: file,../secret.txt; -HTTP/1.0 200 \ No newline at end of file +HTTP/1.0 200 diff --git a/integration/tests_failed/file_unauthorized.json b/integration/tests_failed/file_unauthorized.json new file mode 100644 index 000000000..d68e5bd40 --- /dev/null +++ b/integration/tests_failed/file_unauthorized.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-file","body":{"type":"file","filename":"/secret.txt"}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-file","body":{"type":"file","filename":"../secret.txt"}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-file","multipart_form_data":[{"name":"file1","filename":"/secret.txt"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-file","multipart_form_data":[{"name":"file1","filename":"../secret.txt"}]},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_failed/http_connection.html b/integration/tests_failed/http_connection.html index 59aa6c896..6661eca24 100644 --- a/integration/tests_failed/http_connection.html +++ b/integration/tests_failed/http_connection.html @@ -1,3 +1,3 @@
GET http://unknown
 
-
\ No newline at end of file + diff --git a/integration/tests_failed/http_connection.json b/integration/tests_failed/http_connection.json new file mode 100644 index 000000000..9ae00d4ea --- /dev/null +++ b/integration/tests_failed/http_connection.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://unknown"}}]} diff --git a/integration/tests_failed/invalid_jsonpath.html b/integration/tests_failed/invalid_jsonpath.html index fbe891d7f..e91a84a12 100644 --- a/integration/tests_failed/invalid_jsonpath.html +++ b/integration/tests_failed/invalid_jsonpath.html @@ -2,4 +2,4 @@ HTTP/1.0 200 [Asserts] jsonpath "" equals false - \ No newline at end of file + diff --git a/integration/tests_failed/invalid_jsonpath.json b/integration/tests_failed/invalid_jsonpath.json new file mode 100644 index 000000000..cb76e797a --- /dev/null +++ b/integration/tests_failed/invalid_jsonpath.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-invalid-jsonpath"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":""},"predicate":{"type":"equal","value":false}}]}}]} diff --git a/integration/tests_failed/invalid_url.html b/integration/tests_failed/invalid_url.html index cf7db06e3..0fa330e46 100644 --- a/integration/tests_failed/invalid_url.html +++ b/integration/tests_failed/invalid_url.html @@ -1,3 +1,3 @@
GET https://???
 
-
\ No newline at end of file + diff --git a/integration/tests_failed/invalid_url.json b/integration/tests_failed/invalid_url.json new file mode 100644 index 000000000..0ee8d8b70 --- /dev/null +++ b/integration/tests_failed/invalid_url.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"https://???"}}]} diff --git a/integration/tests_failed/invalid_xml.html b/integration/tests_failed/invalid_xml.html index 10d01a60c..1e934d20e 100644 --- a/integration/tests_failed/invalid_xml.html +++ b/integration/tests_failed/invalid_xml.html @@ -2,4 +2,4 @@ HTTP/1.0 200 [Asserts] xpath "xx" equals 1 - \ No newline at end of file + diff --git a/integration/tests_failed/invalid_xml.json b/integration/tests_failed/invalid_xml.json new file mode 100644 index 000000000..51b226941 --- /dev/null +++ b/integration/tests_failed/invalid_xml.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-invalid-xml"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"xx"},"predicate":{"type":"equal","value":1}}]}}]} diff --git a/integration/tests_failed/max_redirect.html b/integration/tests_failed/max_redirect.html index 66fb2cc7d..24ce62740 100644 --- a/integration/tests_failed/max_redirect.html +++ b/integration/tests_failed/max_redirect.html @@ -2,4 +2,4 @@ HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_failed/max_redirect.json b/integration/tests_failed/max_redirect.json new file mode 100644 index 000000000..df59e0035 --- /dev/null +++ b/integration/tests_failed/max_redirect.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/redirect/7"},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_failed/multipart_form_data.html b/integration/tests_failed/multipart_form_data.html index 39c7b0bd5..5ba6587e3 100644 --- a/integration/tests_failed/multipart_form_data.html +++ b/integration/tests_failed/multipart_form_data.html @@ -6,4 +6,4 @@ - \ No newline at end of file + diff --git a/integration/tests_failed/multipart_form_data.json b/integration/tests_failed/multipart_form_data.json new file mode 100644 index 000000000..f878cf4d2 --- /dev/null +++ b/integration/tests_failed/multipart_form_data.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/unused","multipart_form_data":[{"name":"key1","value":"value1"},{"name":"upload1","filename":"unknown"}]}}]} diff --git a/integration/tests_failed/option_max_redirect.html b/integration/tests_failed/option_max_redirect.html index 2d1f9956b..b9c1546e5 100644 --- a/integration/tests_failed/option_max_redirect.html +++ b/integration/tests_failed/option_max_redirect.html @@ -6,4 +6,4 @@ HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_failed/option_max_redirect.json b/integration/tests_failed/option_max_redirect.json new file mode 100644 index 000000000..df59e0035 --- /dev/null +++ b/integration/tests_failed/option_max_redirect.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/redirect/7"},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_failed/option_retry.html b/integration/tests_failed/option_retry.html index 7350f1f97..4618dd7e6 100644 --- a/integration/tests_failed/option_retry.html +++ b/integration/tests_failed/option_retry.html @@ -4,4 +4,4 @@ retry-interval: 0 retry-max-count: 2 HTTP/* 200 - \ No newline at end of file + diff --git a/integration/tests_failed/option_retry.json b/integration/tests_failed/option_retry.json new file mode 100644 index 000000000..d9b578dc2 --- /dev/null +++ b/integration/tests_failed/option_retry.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/not-found"},"response":{"status":200}}]} diff --git a/integration/tests_failed/output_decompress.html b/integration/tests_failed/output_decompress.html index 5a93d6ec7..6d9758098 100644 --- a/integration/tests_failed/output_decompress.html +++ b/integration/tests_failed/output_decompress.html @@ -5,4 +5,4 @@ GET http://localhost:8000/error-output-decompress HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_failed/output_decompress.json b/integration/tests_failed/output_decompress.json new file mode 100644 index 000000000..bbae172ea --- /dev/null +++ b/integration/tests_failed/output_decompress.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-output-decompress"},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_failed/predicate.html b/integration/tests_failed/predicate.html index 8100b7739..b4a0bc572 100644 --- a/integration/tests_failed/predicate.html +++ b/integration/tests_failed/predicate.html @@ -14,4 +14,5 @@ jsonpath "$.message" count == 1 jsonpath "$.toto" exists jsonpath "$.message" not exists -jsonpath "$.list" count == 2 \ No newline at end of file +jsonpath "$.list" count == 2 + diff --git a/integration/tests_failed/predicate.hurl b/integration/tests_failed/predicate.hurl index b52378dee..22784901d 100644 --- a/integration/tests_failed/predicate.hurl +++ b/integration/tests_failed/predicate.hurl @@ -14,4 +14,4 @@ jsonpath "$.message" matches "hi" jsonpath "$.message" count == 1 jsonpath "$.toto" exists jsonpath "$.message" not exists -jsonpath "$.list" count == 2 \ No newline at end of file +jsonpath "$.list" count == 2 diff --git a/integration/tests_failed/predicate.json b/integration/tests_failed/predicate.json new file mode 100644 index 000000000..b38b269c9 --- /dev/null +++ b/integration/tests_failed/predicate.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/predicate/error/type"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.status"},"predicate":{"type":"equal","value":"true"}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"equal","value":0}},{"query":{"type":"jsonpath","expr":"$.message"},"predicate":{"type":"equal","value":0}},{"query":{"type":"jsonpath","expr":"$.empty"},"predicate":{"type":"equal","value":0}},{"query":{"type":"jsonpath","expr":"$.number"},"predicate":{"type":"equal","value":1.1}},{"query":{"type":"jsonpath","expr":"$.message"},"predicate":{"type":"start-with","value":"hi"}},{"query":{"type":"jsonpath","expr":"$.message"},"predicate":{"type":"end-with","value":"hi"}},{"query":{"type":"jsonpath","expr":"$.message"},"predicate":{"type":"contain","value":"hi"}},{"query":{"type":"jsonpath","expr":"$.message"},"predicate":{"type":"match","value":"hi"}},{"query":{"type":"jsonpath","expr":"$.message","subquery":{"type":"count"}},"predicate":{"type":"equal","value":1}},{"query":{"type":"jsonpath","expr":"$.toto"},"predicate":{"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.message"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.list","subquery":{"type":"count"}},"predicate":{"type":"equal","value":2}}]}}]} diff --git a/integration/tests_failed/query_header_not_found.html b/integration/tests_failed/query_header_not_found.html index b17f1552d..9766b0111 100644 --- a/integration/tests_failed/query_header_not_found.html +++ b/integration/tests_failed/query_header_not_found.html @@ -2,4 +2,4 @@ HTTP/1.0 200 Custom: XXX - \ No newline at end of file + diff --git a/integration/tests_failed/query_header_not_found.json b/integration/tests_failed/query_header_not_found.json new file mode 100644 index 000000000..fbfa7f8c5 --- /dev/null +++ b/integration/tests_failed/query_header_not_found.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-query-header-not-found"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Custom","value":"XXX"}]}}]} diff --git a/integration/tests_failed/query_invalid_json.html b/integration/tests_failed/query_invalid_json.html index b27c1245f..46d055f48 100644 --- a/integration/tests_failed/query_invalid_json.html +++ b/integration/tests_failed/query_invalid_json.html @@ -3,4 +3,4 @@ [Asserts] jsonpath "$.errors" count == 2 - \ No newline at end of file + diff --git a/integration/tests_failed/query_invalid_json.json b/integration/tests_failed/query_invalid_json.json new file mode 100644 index 000000000..672a14bd5 --- /dev/null +++ b/integration/tests_failed/query_invalid_json.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-query-invalid-json"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.errors","subquery":{"type":"count"}},"predicate":{"type":"equal","value":2}}]}}]} diff --git a/integration/tests_failed/query_invalid_utf8.html b/integration/tests_failed/query_invalid_utf8.html index 5be94b0aa..881956d26 100644 --- a/integration/tests_failed/query_invalid_utf8.html +++ b/integration/tests_failed/query_invalid_utf8.html @@ -3,4 +3,4 @@ [Asserts] jsonpath "$.errors" count == 2 - \ No newline at end of file + diff --git a/integration/tests_failed/query_invalid_utf8.json b/integration/tests_failed/query_invalid_utf8.json new file mode 100644 index 000000000..558ee517a --- /dev/null +++ b/integration/tests_failed/query_invalid_utf8.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/error-query-invalid-utf8"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.errors","subquery":{"type":"count"}},"predicate":{"type":"equal","value":2}}]}}]} diff --git a/integration/tests_failed/query_match_none.html b/integration/tests_failed/query_match_none.html index 9867caad6..f64b529fa 100644 --- a/integration/tests_failed/query_match_none.html +++ b/integration/tests_failed/query_match_none.html @@ -4,4 +4,4 @@ header "Location" matches /^foo$/ - \ No newline at end of file + diff --git a/integration/tests_failed/query_match_none.json b/integration/tests_failed/query_match_none.json new file mode 100644 index 000000000..84b40709f --- /dev/null +++ b/integration/tests_failed/query_match_none.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/query-match-none"},"response":{"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"type":"match","value":"^foo$","encoding":"regex"}}]}}]} diff --git a/integration/tests_failed/retry.html b/integration/tests_failed/retry.html index fdc47a364..319106c5c 100644 --- a/integration/tests_failed/retry.html +++ b/integration/tests_failed/retry.html @@ -1,2 +1,3 @@
GET http://localhost:8000/not-found
-HTTP/* 200
\ No newline at end of file +HTTP/* 200 + diff --git a/integration/tests_failed/retry.hurl b/integration/tests_failed/retry.hurl index c50d76eff..a3e301c80 100644 --- a/integration/tests_failed/retry.hurl +++ b/integration/tests_failed/retry.hurl @@ -1,2 +1,2 @@ GET http://localhost:8000/not-found -HTTP/* 200 \ No newline at end of file +HTTP/* 200 diff --git a/integration/tests_failed/retry.json b/integration/tests_failed/retry.json new file mode 100644 index 000000000..d9b578dc2 --- /dev/null +++ b/integration/tests_failed/retry.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/not-found"},"response":{"status":200}}]} diff --git a/integration/tests_failed/template_variable_not_found.html b/integration/tests_failed/template_variable_not_found.html index eafb9012d..0c42e1c6f 100644 --- a/integration/tests_failed/template_variable_not_found.html +++ b/integration/tests_failed/template_variable_not_found.html @@ -1,3 +1,3 @@
GET {{url}}
 
-
\ No newline at end of file + diff --git a/integration/tests_failed/template_variable_not_found.json b/integration/tests_failed/template_variable_not_found.json new file mode 100644 index 000000000..d0e1376f2 --- /dev/null +++ b/integration/tests_failed/template_variable_not_found.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"{{url}}"}}]} diff --git a/integration/tests_failed/template_variable_not_renderable.html b/integration/tests_failed/template_variable_not_renderable.html index 462147085..130497cc4 100644 --- a/integration/tests_failed/template_variable_not_renderable.html +++ b/integration/tests_failed/template_variable_not_renderable.html @@ -8,4 +8,4 @@ param1: {{list}} HTTP/1.1 200 - \ No newline at end of file + diff --git a/integration/tests_failed/template_variable_not_renderable.json b/integration/tests_failed/template_variable_not_renderable.json new file mode 100644 index 000000000..ca8bdeef0 --- /dev/null +++ b/integration/tests_failed/template_variable_not_renderable.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/get-list"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"list","query":{"type":"jsonpath","expr":"$.values"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/undefined","query_string_params":[{"name":"param1","value":"{{list}}"}]},"response":{"version":"HTTP/1.1","status":200}}]} diff --git a/integration/tests_failed/timeout.html b/integration/tests_failed/timeout.html index 62858f08b..25e27d04f 100644 --- a/integration/tests_failed/timeout.html +++ b/integration/tests_failed/timeout.html @@ -1,4 +1,4 @@
GET http://localhost:8000/timeout
 
 
-
\ No newline at end of file + diff --git a/integration/tests_failed/timeout.json b/integration/tests_failed/timeout.json new file mode 100644 index 000000000..1b0e3a5d1 --- /dev/null +++ b/integration/tests_failed/timeout.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/timeout"}}]} diff --git a/integration/tests_ok/assert_base64.html b/integration/tests_ok/assert_base64.html index a3434b8ff..6708b1fa9 100644 --- a/integration/tests_ok/assert_base64.html +++ b/integration/tests_ok/assert_base64.html @@ -9,4 +9,4 @@ HTTP/1.0 200 base64,bGluZTEKbGluZTINCmxpbmUzCg==; - \ No newline at end of file + diff --git a/integration/tests_ok/assert_base64.json b/integration/tests_ok/assert_base64.json index 484f838aa..74d520dbc 100644 --- a/integration/tests_ok/assert_base64.json +++ b/integration/tests_ok/assert_base64.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-base64"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"bGluZTEKbGluZTINCmxpbmUzCg=="}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-base64"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"bGluZTEKbGluZTINCmxpbmUzCg=="}}}]} diff --git a/integration/tests_ok/assert_header.html b/integration/tests_ok/assert_header.html index 5e5bb5973..547fe2760 100644 --- a/integration/tests_ok/assert_header.html +++ b/integration/tests_ok/assert_header.html @@ -11,4 +11,5 @@ header "Set-Cookie" exists header "Set-Cookie" count == 3 header "Set-Cookie" includes "cookie1=value1; Path=/" -header "Set-Cookie" not includes "cookie4=value4; Path=/" \ No newline at end of file +header "Set-Cookie" not includes "cookie4=value4; Path=/" + diff --git a/integration/tests_ok/assert_header.hurl b/integration/tests_ok/assert_header.hurl index b0931ae1a..5190ecde2 100644 --- a/integration/tests_ok/assert_header.hurl +++ b/integration/tests_ok/assert_header.hurl @@ -11,4 +11,4 @@ header "ETag" == "\"33a64df551425fcc55e4d42a148795d9f25f89d4\"" header "Set-Cookie" exists header "Set-Cookie" count == 3 header "Set-Cookie" includes "cookie1=value1; Path=/" -header "Set-Cookie" not includes "cookie4=value4; Path=/" \ No newline at end of file +header "Set-Cookie" not includes "cookie4=value4; Path=/" diff --git a/integration/tests_ok/assert_header.json b/integration/tests_ok/assert_header.json index e73d5c574..9f579c720 100644 --- a/integration/tests_ok/assert_header.json +++ b/integration/tests_ok/assert_header.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-header"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"text/html; charset=utf-8"},{"name":"Set-Cookie","value":"cookie1=value1; Path=/"},{"name":"Set-Cookie","value":"cookie2=value2; Path=/"}],"asserts":[{"query":{"type":"header","name":"Custom"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"header","name":"Content-Type"},"predicate":{"type":"exist"}},{"query":{"type":"header","name":"Header1"},"predicate":{"type":"equal","value":"value1"}},{"query":{"type":"header","name":"ETag"},"predicate":{"type":"equal","value":"\"33a64df551425fcc55e4d42a148795d9f25f89d4\""}},{"query":{"type":"header","name":"Set-Cookie"},"predicate":{"type":"exist"}},{"query":{"type":"header","name":"Set-Cookie","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"header","name":"Set-Cookie"},"predicate":{"type":"include","value":"cookie1=value1; Path=/"}},{"query":{"type":"header","name":"Set-Cookie"},"predicate":{"not":true,"type":"include","value":"cookie4=value4; Path=/"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-header"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"text/html; charset=utf-8"},{"name":"Set-Cookie","value":"cookie1=value1; Path=/"},{"name":"Set-Cookie","value":"cookie2=value2; Path=/"}],"asserts":[{"query":{"type":"header","name":"Custom"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"header","name":"Content-Type"},"predicate":{"type":"exist"}},{"query":{"type":"header","name":"Header1"},"predicate":{"type":"equal","value":"value1"}},{"query":{"type":"header","name":"ETag"},"predicate":{"type":"equal","value":"\"33a64df551425fcc55e4d42a148795d9f25f89d4\""}},{"query":{"type":"header","name":"Set-Cookie"},"predicate":{"type":"exist"}},{"query":{"type":"header","name":"Set-Cookie","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"header","name":"Set-Cookie"},"predicate":{"type":"include","value":"cookie1=value1; Path=/"}},{"query":{"type":"header","name":"Set-Cookie"},"predicate":{"not":true,"type":"include","value":"cookie4=value4; Path=/"}}]}}]} diff --git a/integration/tests_ok/assert_json.html b/integration/tests_ok/assert_json.html index dd265e008..216e930bd 100644 --- a/integration/tests_ok/assert_json.html +++ b/integration/tests_ok/assert_json.html @@ -89,4 +89,5 @@ GET http://localhost:8000/assert-json/filter HTTP/1.0 200 [Asserts] -jsonpath "$.fruit[?(@.price.US==200)].name" equals "grape" \ No newline at end of file +jsonpath "$.fruit[?(@.price.US==200)].name" equals "grape" + diff --git a/integration/tests_ok/assert_json.hurl b/integration/tests_ok/assert_json.hurl index 2491d0e34..cac24c906 100644 --- a/integration/tests_ok/assert_json.hurl +++ b/integration/tests_ok/assert_json.hurl @@ -89,4 +89,4 @@ jsonpath "$[0].name" == "Bob" GET http://localhost:8000/assert-json/filter HTTP/1.0 200 [Asserts] -jsonpath "$.fruit[?(@.price.US==200)].name" equals "grape" \ No newline at end of file +jsonpath "$.fruit[?(@.price.US==200)].name" equals "grape" diff --git a/integration/tests_ok/assert_json.json b/integration/tests_ok/assert_json.json index bce4d3dff..cd0fa133b 100644 --- a/integration/tests_ok/assert_json.json +++ b/integration/tests_ok/assert_json.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-json"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"count","query":{"type":"jsonpath","expr":"$.count"}}],"asserts":[{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"equal","value":5}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"equal","value":5.0}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"equal","value":"five"}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"equal","value":5}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"not-equal","value":4}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"not-equal","value":"four"}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"not":true,"type":"equal","value":4}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"greater","value":1}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"greater","value":"one"}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"greater","value":1.0}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"greater","value":1.0}},{"query":{"type":"jsonpath","expr":"$.success"},"predicate":{"type":"equal","value":false}},{"query":{"type":"jsonpath","expr":"$.success"},"predicate":{"type":"not-equal","value":null}},{"query":{"type":"jsonpath","expr":"$.success"},"predicate":{"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.success"},"predicate":{"type":"isBoolean"}},{"query":{"type":"jsonpath","expr":"$.errors","subquery":{"type":"count"}},"predicate":{"type":"equal","value":2}},{"query":{"type":"jsonpath","expr":"$.errors"},"predicate":{"type":"isCollection"}},{"query":{"type":"jsonpath","expr":"$.warnings","subquery":{"type":"count"}},"predicate":{"type":"equal","value":0}},{"query":{"type":"jsonpath","expr":"$.toto"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.warnings"},"predicate":{"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.warnings"},"predicate":{"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.errors[0]"},"predicate":{"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.errors[0]"},"predicate":{"type":"isCollection"}},{"query":{"type":"jsonpath","expr":"$.errors[0].id"},"predicate":{"type":"equal","value":"error1"}},{"query":{"type":"jsonpath","expr":"$.errors[0]['id']"},"predicate":{"type":"equal","value":"error1"}},{"query":{"type":"jsonpath","expr":"$.errors[*].id"},"predicate":{"type":"include","value":"error1"}},{"query":{"type":"jsonpath","expr":"$.errors[?(@.id=='error1')].id"},"predicate":{"type":"equal","value":"error1"}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"equal","value":1.5}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"less-or-equal","value":2.0}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"less","value":2}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"less","value":"two"}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"less-or-equal","value":2.0}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"less","value":2}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"isFloat"}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"not":true,"type":"isInteger"}},{"query":{"type":"jsonpath","expr":"$.nullable"},"predicate":{"type":"equal","value":null}},{"query":{"type":"jsonpath","expr":"$.tags[0]"},"predicate":{"type":"equal","value":"test"}},{"query":{"type":"jsonpath","expr":"$.tags[0]"},"predicate":{"type":"greater","value":"te"}},{"query":{"type":"jsonpath","expr":"$.tags[0]"},"predicate":{"type":"less","value":"testabc"}},{"query":{"type":"jsonpath","expr":"$.tags[0]"},"predicate":{"type":"less-or-equal","value":"test"}},{"query":{"type":"jsonpath","expr":"$.tags[0]"},"predicate":{"type":"greater","value":"{{foo}}"}}],"body":{"type":"json","value":{"count":5,"success":false,"errors":[{"id":"error1"},{"id":"error2"}],"warnings":[],"duration":1.5,"tags":["test"],"nullable":null}}}},{"request":{"method":"GET","url":"http://localhost:8000/assert-json/index"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"index","query":{"type":"body"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-json"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.errors[{{index}}].id"},"predicate":{"type":"equal","value":"error2"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"type":"include","value":"test"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"not":true,"type":"include","value":"prod"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"not":true,"type":"include","value":null}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-json/list"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$","subquery":{"type":"count"}},"predicate":{"type":"equal","value":2}},{"query":{"type":"jsonpath","expr":"$.[0].name"},"predicate":{"type":"equal","value":"Bob"}},{"query":{"type":"jsonpath","expr":"$[0].name"},"predicate":{"type":"equal","value":"Bob"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-json/filter"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.fruit[?(@.price.US==200)].name"},"predicate":{"type":"equal","value":"grape"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-json"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"count","query":{"type":"jsonpath","expr":"$.count"}}],"asserts":[{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"equal","value":5}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"equal","value":5.0}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"equal","value":"five"}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"equal","value":5}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"not-equal","value":4}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"not-equal","value":"four"}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"not":true,"type":"equal","value":4}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"greater","value":1}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"greater","value":"one"}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"greater","value":1.0}},{"query":{"type":"jsonpath","expr":"$.count"},"predicate":{"type":"greater","value":1.0}},{"query":{"type":"jsonpath","expr":"$.success"},"predicate":{"type":"equal","value":false}},{"query":{"type":"jsonpath","expr":"$.success"},"predicate":{"type":"not-equal","value":null}},{"query":{"type":"jsonpath","expr":"$.success"},"predicate":{"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.success"},"predicate":{"type":"isBoolean"}},{"query":{"type":"jsonpath","expr":"$.errors","subquery":{"type":"count"}},"predicate":{"type":"equal","value":2}},{"query":{"type":"jsonpath","expr":"$.errors"},"predicate":{"type":"isCollection"}},{"query":{"type":"jsonpath","expr":"$.warnings","subquery":{"type":"count"}},"predicate":{"type":"equal","value":0}},{"query":{"type":"jsonpath","expr":"$.toto"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.warnings"},"predicate":{"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.warnings"},"predicate":{"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.errors[0]"},"predicate":{"type":"exist"}},{"query":{"type":"jsonpath","expr":"$.errors[0]"},"predicate":{"type":"isCollection"}},{"query":{"type":"jsonpath","expr":"$.errors[0].id"},"predicate":{"type":"equal","value":"error1"}},{"query":{"type":"jsonpath","expr":"$.errors[0]['id']"},"predicate":{"type":"equal","value":"error1"}},{"query":{"type":"jsonpath","expr":"$.errors[*].id"},"predicate":{"type":"include","value":"error1"}},{"query":{"type":"jsonpath","expr":"$.errors[?(@.id=='error1')].id"},"predicate":{"type":"equal","value":"error1"}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"equal","value":1.5}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"less-or-equal","value":2.0}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"less","value":2}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"less","value":"two"}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"less-or-equal","value":2.0}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"less","value":2}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"type":"isFloat"}},{"query":{"type":"jsonpath","expr":"$.duration"},"predicate":{"not":true,"type":"isInteger"}},{"query":{"type":"jsonpath","expr":"$.nullable"},"predicate":{"type":"equal","value":null}},{"query":{"type":"jsonpath","expr":"$.tags[0]"},"predicate":{"type":"equal","value":"test"}},{"query":{"type":"jsonpath","expr":"$.tags[0]"},"predicate":{"type":"greater","value":"te"}},{"query":{"type":"jsonpath","expr":"$.tags[0]"},"predicate":{"type":"less","value":"testabc"}},{"query":{"type":"jsonpath","expr":"$.tags[0]"},"predicate":{"type":"less-or-equal","value":"test"}},{"query":{"type":"jsonpath","expr":"$.tags[0]"},"predicate":{"type":"greater","value":"{{foo}}"}}],"body":{"type":"json","value":{"count":5,"success":false,"errors":[{"id":"error1"},{"id":"error2"}],"warnings":[],"duration":1.5,"tags":["test"],"nullable":null}}}},{"request":{"method":"GET","url":"http://localhost:8000/assert-json/index"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"index","query":{"type":"body"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-json"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.errors[{{index}}].id"},"predicate":{"type":"equal","value":"error2"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"type":"include","value":"test"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"not":true,"type":"include","value":"prod"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"not":true,"type":"include","value":null}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-json/list"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$","subquery":{"type":"count"}},"predicate":{"type":"equal","value":2}},{"query":{"type":"jsonpath","expr":"$.[0].name"},"predicate":{"type":"equal","value":"Bob"}},{"query":{"type":"jsonpath","expr":"$[0].name"},"predicate":{"type":"equal","value":"Bob"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-json/filter"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.fruit[?(@.price.US==200)].name"},"predicate":{"type":"equal","value":"grape"}}]}}]} diff --git a/integration/tests_ok/assert_match.html b/integration/tests_ok/assert_match.html index 4e0104a3c..72228f02a 100644 --- a/integration/tests_ok/assert_match.html +++ b/integration/tests_ok/assert_match.html @@ -7,4 +7,5 @@ jsonpath "$.date1" matches /^\d{4}-\d{2}-\d{2}$/ jsonpath "$.date2" not matches /^\d{4}-\d{2}-\d{2}$/ jsonpath "$.path1" matches /aa\/bb/ -jsonpath "$.path2" matches /aa\\bb/ \ No newline at end of file +jsonpath "$.path2" matches /aa\\bb/ + diff --git a/integration/tests_ok/assert_match.hurl b/integration/tests_ok/assert_match.hurl index 7383d1bed..72ec66e75 100644 --- a/integration/tests_ok/assert_match.hurl +++ b/integration/tests_ok/assert_match.hurl @@ -7,4 +7,4 @@ jsonpath "$.date2" matches /\d{4}-\d{2}-\d{2}/ jsonpath "$.date1" matches /^\d{4}-\d{2}-\d{2}$/ jsonpath "$.date2" not matches /^\d{4}-\d{2}-\d{2}$/ jsonpath "$.path1" matches /aa\/bb/ -jsonpath "$.path2" matches /aa\\bb/ \ No newline at end of file +jsonpath "$.path2" matches /aa\\bb/ diff --git a/integration/tests_ok/assert_match.json b/integration/tests_ok/assert_match.json index c69baf4a1..a00b8c5d9 100644 --- a/integration/tests_ok/assert_match.json +++ b/integration/tests_ok/assert_match.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-match"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.date1"},"predicate":{"type":"match","value":"\\d{4}-\\d{2}-\\d{2}"}},{"query":{"type":"jsonpath","expr":"$.date1"},"predicate":{"type":"match","value":"\\d{4}-\\d{2}-\\d{2}","encoding":"regex"}},{"query":{"type":"jsonpath","expr":"$.date2"},"predicate":{"type":"match","value":"\\d{4}-\\d{2}-\\d{2}","encoding":"regex"}},{"query":{"type":"jsonpath","expr":"$.date1"},"predicate":{"type":"match","value":"^\\d{4}-\\d{2}-\\d{2}$","encoding":"regex"}},{"query":{"type":"jsonpath","expr":"$.date2"},"predicate":{"not":true,"type":"match","value":"^\\d{4}-\\d{2}-\\d{2}$","encoding":"regex"}},{"query":{"type":"jsonpath","expr":"$.path1"},"predicate":{"type":"match","value":"aa/bb","encoding":"regex"}},{"query":{"type":"jsonpath","expr":"$.path2"},"predicate":{"type":"match","value":"aa\\\\bb","encoding":"regex"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-match"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.date1"},"predicate":{"type":"match","value":"\\d{4}-\\d{2}-\\d{2}"}},{"query":{"type":"jsonpath","expr":"$.date1"},"predicate":{"type":"match","value":"\\d{4}-\\d{2}-\\d{2}","encoding":"regex"}},{"query":{"type":"jsonpath","expr":"$.date2"},"predicate":{"type":"match","value":"\\d{4}-\\d{2}-\\d{2}","encoding":"regex"}},{"query":{"type":"jsonpath","expr":"$.date1"},"predicate":{"type":"match","value":"^\\d{4}-\\d{2}-\\d{2}$","encoding":"regex"}},{"query":{"type":"jsonpath","expr":"$.date2"},"predicate":{"not":true,"type":"match","value":"^\\d{4}-\\d{2}-\\d{2}$","encoding":"regex"}},{"query":{"type":"jsonpath","expr":"$.path1"},"predicate":{"type":"match","value":"aa/bb","encoding":"regex"}},{"query":{"type":"jsonpath","expr":"$.path2"},"predicate":{"type":"match","value":"aa\\\\bb","encoding":"regex"}}]}}]} diff --git a/integration/tests_ok/assert_regex.html b/integration/tests_ok/assert_regex.html index b56723e41..908882c09 100644 --- a/integration/tests_ok/assert_regex.html +++ b/integration/tests_ok/assert_regex.html @@ -5,4 +5,5 @@ regex "Hello ([0-9]+)!" not exists regex /Hello ([0-9]+)!/ not exists regex "Hello ([a-zA-Z]+)!" == "World" -regex /Hello ([a-zA-Z]+)!/ == "World" \ No newline at end of file +regex /Hello ([a-zA-Z]+)!/ == "World" + diff --git a/integration/tests_ok/assert_regex.hurl b/integration/tests_ok/assert_regex.hurl index 8fc2a9b80..d31551362 100644 --- a/integration/tests_ok/assert_regex.hurl +++ b/integration/tests_ok/assert_regex.hurl @@ -5,4 +5,4 @@ HTTP/1.0 200 regex "Hello ([0-9]+)!" not exists regex /Hello ([0-9]+)!/ not exists regex "Hello ([a-zA-Z]+)!" == "World" -regex /Hello ([a-zA-Z]+)!/ == "World" \ No newline at end of file +regex /Hello ([a-zA-Z]+)!/ == "World" diff --git a/integration/tests_ok/assert_regex.json b/integration/tests_ok/assert_regex.json index 13a781913..528dff78c 100644 --- a/integration/tests_ok/assert_regex.json +++ b/integration/tests_ok/assert_regex.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-regex"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"regex","expr":"Hello ([0-9]+)!"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"regex","expr":{"type":"regex","value":"Hello ([0-9]+)!"}},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"regex","expr":"Hello ([a-zA-Z]+)!"},"predicate":{"type":"equal","value":"World"}},{"query":{"type":"regex","expr":{"type":"regex","value":"Hello ([a-zA-Z]+)!"}},"predicate":{"type":"equal","value":"World"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-regex"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"regex","expr":"Hello ([0-9]+)!"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"regex","expr":{"type":"regex","value":"Hello ([0-9]+)!"}},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"regex","expr":"Hello ([a-zA-Z]+)!"},"predicate":{"type":"equal","value":"World"}},{"query":{"type":"regex","expr":{"type":"regex","value":"Hello ([a-zA-Z]+)!"}},"predicate":{"type":"equal","value":"World"}}]}}]} diff --git a/integration/tests_ok/assert_status_code.html b/integration/tests_ok/assert_status_code.html index 9a650646b..c4af52bb0 100644 --- a/integration/tests_ok/assert_status_code.html +++ b/integration/tests_ok/assert_status_code.html @@ -14,4 +14,5 @@ HTTP/* * [Asserts] status >= 200 -status < 300 \ No newline at end of file +status < 300 + diff --git a/integration/tests_ok/assert_status_code.hurl b/integration/tests_ok/assert_status_code.hurl index c0985b7df..a7a2cfae0 100644 --- a/integration/tests_ok/assert_status_code.hurl +++ b/integration/tests_ok/assert_status_code.hurl @@ -14,4 +14,4 @@ GET http://localhost:8000/assert-status-code HTTP/* * [Asserts] status >= 200 -status < 300 \ No newline at end of file +status < 300 diff --git a/integration/tests_ok/assert_status_code.json b/integration/tests_ok/assert_status_code.json index c409619f0..69d5fdcbf 100644 --- a/integration/tests_ok/assert_status_code.json +++ b/integration/tests_ok/assert_status_code.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-status-code"},"response":{"version":"HTTP/1.0","status":201}},{"request":{"method":"GET","url":"http://localhost:8000/assert-status-code"},"response":{"asserts":[{"query":{"type":"status"},"predicate":{"type":"not-equal","value":200}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-status-code"},"response":{"asserts":[{"query":{"type":"status"},"predicate":{"type":"greater-or-equal","value":200}},{"query":{"type":"status"},"predicate":{"type":"less","value":300}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-status-code"},"response":{"version":"HTTP/1.0","status":201}},{"request":{"method":"GET","url":"http://localhost:8000/assert-status-code"},"response":{"asserts":[{"query":{"type":"status"},"predicate":{"type":"not-equal","value":200}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-status-code"},"response":{"asserts":[{"query":{"type":"status"},"predicate":{"type":"greater-or-equal","value":200}},{"query":{"type":"status"},"predicate":{"type":"less","value":300}}]}}]} diff --git a/integration/tests_ok/assert_xpath.html b/integration/tests_ok/assert_xpath.html index 534e1b23b..31a3aa86e 100644 --- a/integration/tests_ok/assert_xpath.html +++ b/integration/tests_ok/assert_xpath.html @@ -49,4 +49,4 @@ xpath "//*[local-name()='book']/*[local-name()='notes']" count == 1 xpath "//_:book/_:notes/*[local-name()='p']" count == 1 - \ No newline at end of file + diff --git a/integration/tests_ok/assert_xpath.json b/integration/tests_ok/assert_xpath.json index 650e62918..b30153aab 100644 --- a/integration/tests_ok/assert_xpath.json +++ b/integration/tests_ok/assert_xpath.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-xpath"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"normalize-space(//data)"},"predicate":{"type":"equal","value":"café"}},{"query":{"type":"xpath","expr":"normalize-space(//data)"},"predicate":{"type":"equal","value":"café"}},{"query":{"type":"xpath","expr":"normalize-space(//data)"},"predicate":{"type":"greater","value":"CAFÉ"}},{"query":{"type":"xpath","expr":"//toto"},"predicate":{"not":true,"type":"exist"}}],"body":{"type":"xml","value":"café"}}},{"request":{"method":"GET","url":"http://localhost:8000/assert-xpath-simple-namespaces"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"string(//bk:book/bk:title)"},"predicate":{"type":"equal","value":"Cheaper by the Dozen"}},{"query":{"type":"xpath","expr":"string(//*[name()='bk:book']/*[name()='bk:title'])"},"predicate":{"type":"equal","value":"Cheaper by the Dozen"}},{"query":{"type":"xpath","expr":"string(//*[local-name()='book']/*[local-name()='title'])"},"predicate":{"type":"equal","value":"Cheaper by the Dozen"}},{"query":{"type":"xpath","expr":"string(//bk:book/isbn:number)"},"predicate":{"type":"equal","value":"1568491379"}},{"query":{"type":"xpath","expr":"string(//*[name()='bk:book']/*[name()='isbn:number'])"},"predicate":{"type":"equal","value":"1568491379"}},{"query":{"type":"xpath","expr":"string(//*[local-name()='book']/*[local-name()='number'])"},"predicate":{"type":"equal","value":"1568491379"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-xpath-svg"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"//_:svg/_:g/_:circle","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"xpath","expr":"//*[local-name()='svg']/*[local-name()='g']/*[local-name()='circle']","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"xpath","expr":"//*[name()='svg']/*[name()='g']/*[name()='circle']","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-xpath-namespaces"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"string(//_:book/_:title)"},"predicate":{"type":"equal","value":"Cheaper by the Dozen"}},{"query":{"type":"xpath","expr":"string(//_:book/_:title)"},"predicate":{"type":"greater","value":"Cheaper"}},{"query":{"type":"xpath","expr":"string(//_:book/isbn:number)"},"predicate":{"type":"equal","value":"1568491379"}},{"query":{"type":"xpath","expr":"//*[name()='book']/*[name()='notes']","subquery":{"type":"count"}},"predicate":{"type":"equal","value":1}},{"query":{"type":"xpath","expr":"//*[local-name()='book']/*[local-name()='notes']","subquery":{"type":"count"}},"predicate":{"type":"equal","value":1}},{"query":{"type":"xpath","expr":"//_:book/_:notes/*[local-name()='p']","subquery":{"type":"count"}},"predicate":{"type":"equal","value":1}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/assert-xpath"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"normalize-space(//data)"},"predicate":{"type":"equal","value":"café"}},{"query":{"type":"xpath","expr":"normalize-space(//data)"},"predicate":{"type":"equal","value":"café"}},{"query":{"type":"xpath","expr":"normalize-space(//data)"},"predicate":{"type":"greater","value":"CAFÉ"}},{"query":{"type":"xpath","expr":"//toto"},"predicate":{"not":true,"type":"exist"}}],"body":{"type":"xml","value":"café"}}},{"request":{"method":"GET","url":"http://localhost:8000/assert-xpath-simple-namespaces"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"string(//bk:book/bk:title)"},"predicate":{"type":"equal","value":"Cheaper by the Dozen"}},{"query":{"type":"xpath","expr":"string(//*[name()='bk:book']/*[name()='bk:title'])"},"predicate":{"type":"equal","value":"Cheaper by the Dozen"}},{"query":{"type":"xpath","expr":"string(//*[local-name()='book']/*[local-name()='title'])"},"predicate":{"type":"equal","value":"Cheaper by the Dozen"}},{"query":{"type":"xpath","expr":"string(//bk:book/isbn:number)"},"predicate":{"type":"equal","value":"1568491379"}},{"query":{"type":"xpath","expr":"string(//*[name()='bk:book']/*[name()='isbn:number'])"},"predicate":{"type":"equal","value":"1568491379"}},{"query":{"type":"xpath","expr":"string(//*[local-name()='book']/*[local-name()='number'])"},"predicate":{"type":"equal","value":"1568491379"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-xpath-svg"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"//_:svg/_:g/_:circle","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"xpath","expr":"//*[local-name()='svg']/*[local-name()='g']/*[local-name()='circle']","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"xpath","expr":"//*[name()='svg']/*[name()='g']/*[name()='circle']","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-xpath-namespaces"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"string(//_:book/_:title)"},"predicate":{"type":"equal","value":"Cheaper by the Dozen"}},{"query":{"type":"xpath","expr":"string(//_:book/_:title)"},"predicate":{"type":"greater","value":"Cheaper"}},{"query":{"type":"xpath","expr":"string(//_:book/isbn:number)"},"predicate":{"type":"equal","value":"1568491379"}},{"query":{"type":"xpath","expr":"//*[name()='book']/*[name()='notes']","subquery":{"type":"count"}},"predicate":{"type":"equal","value":1}},{"query":{"type":"xpath","expr":"//*[local-name()='book']/*[local-name()='notes']","subquery":{"type":"count"}},"predicate":{"type":"equal","value":1}},{"query":{"type":"xpath","expr":"//_:book/_:notes/*[local-name()='p']","subquery":{"type":"count"}},"predicate":{"type":"equal","value":1}}]}}]} diff --git a/integration/tests_ok/basic_authentication.html b/integration/tests_ok/basic_authentication.html index 4b37d0958..c048f6f3c 100644 --- a/integration/tests_ok/basic_authentication.html +++ b/integration/tests_ok/basic_authentication.html @@ -3,4 +3,4 @@ ```You are authenticated``` - \ No newline at end of file + diff --git a/integration/tests_ok/basic_authentication.json b/integration/tests_ok/basic_authentication.json index 9d2e66e3c..d86fd5eba 100644 --- a/integration/tests_ok/basic_authentication.json +++ b/integration/tests_ok/basic_authentication.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/basic-authentication"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"You are authenticated"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/basic-authentication"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"You are authenticated"}}}]} diff --git a/integration/tests_ok/basic_authentication_per_request.html b/integration/tests_ok/basic_authentication_per_request.html index 6a998dd26..0e344fdad 100644 --- a/integration/tests_ok/basic_authentication_per_request.html +++ b/integration/tests_ok/basic_authentication_per_request.html @@ -23,4 +23,4 @@ bob@email.com: secret HTTP/1.0 200 ```You are authenticated``` - \ No newline at end of file + diff --git a/integration/tests_ok/basic_authentication_per_request.json b/integration/tests_ok/basic_authentication_per_request.json index 85a877a57..e56d0ca3e 100644 --- a/integration/tests_ok/basic_authentication_per_request.json +++ b/integration/tests_ok/basic_authentication_per_request.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://bob%40email.com:secret@localhost:8000/basic-authentication-per-request"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"You are authenticated"}}},{"request":{"method":"GET","url":"http://localhost:8000/basic-authentication-per-request","headers":[{"name":"Authorization","value":"Basic Ym9iQGVtYWlsLmNvbTpzZWNyZXQ="}]},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"You are authenticated"}}},{"request":{"method":"GET","url":"http://localhost:8000/basic-authentication-per-request"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"You are authenticated"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://bob%40email.com:secret@localhost:8000/basic-authentication-per-request"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"You are authenticated"}}},{"request":{"method":"GET","url":"http://localhost:8000/basic-authentication-per-request","headers":[{"name":"Authorization","value":"Basic Ym9iQGVtYWlsLmNvbTpzZWNyZXQ="}]},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"You are authenticated"}}},{"request":{"method":"GET","url":"http://localhost:8000/basic-authentication-per-request"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"You are authenticated"}}}]} diff --git a/integration/tests_ok/bom.html b/integration/tests_ok/bom.html index 98a27e754..b87e65b71 100644 --- a/integration/tests_ok/bom.html +++ b/integration/tests_ok/bom.html @@ -3,4 +3,4 @@ HTTP/1.0 200 ```Hello World!``` - \ No newline at end of file + diff --git a/integration/tests_ok/bom.json b/integration/tests_ok/bom.json index cea86d71e..1e22efb81 100644 --- a/integration/tests_ok/bom.json +++ b/integration/tests_ok/bom.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/utf8_bom"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/utf8_bom"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} diff --git a/integration/tests_ok/bytes.html b/integration/tests_ok/bytes.html index 5d3174be8..913f89cf2 100644 --- a/integration/tests_ok/bytes.html +++ b/integration/tests_ok/bytes.html @@ -10,4 +10,4 @@ bytes contains hex,02; sha256 == hex,039058c6f2c0cb492c533b0a4d14ef77cc0f78abccced5287d84a1a2011cfb81; md5 == hex,5289df737df57326fcdd22597afb1fac; - \ No newline at end of file + diff --git a/integration/tests_ok/bytes.json b/integration/tests_ok/bytes.json index 7b856edad..3377d1dd8 100644 --- a/integration/tests_ok/bytes.json +++ b/integration/tests_ok/bytes.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/bytes"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"application/octet-stream"}],"asserts":[{"query":{"type":"bytes"},"predicate":{"type":"equal","value":"AQID","encoding":"base64"}},{"query":{"type":"bytes"},"predicate":{"type":"equal","value":"AQID","encoding":"base64"}},{"query":{"type":"bytes","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"AQ==","encoding":"base64"}},{"query":{"type":"bytes"},"predicate":{"type":"end-with","value":"Aw==","encoding":"base64"}},{"query":{"type":"bytes"},"predicate":{"type":"contain","value":"Ag==","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"A5BYxvLAy0ksUzsKTRTvd8wPeKvMztUofYShogEc+4E=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"Uonfc331cyb83SJZevsfrA==","encoding":"base64"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/bytes"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"application/octet-stream"}],"asserts":[{"query":{"type":"bytes"},"predicate":{"type":"equal","value":"AQID","encoding":"base64"}},{"query":{"type":"bytes"},"predicate":{"type":"equal","value":"AQID","encoding":"base64"}},{"query":{"type":"bytes","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"AQ==","encoding":"base64"}},{"query":{"type":"bytes"},"predicate":{"type":"end-with","value":"Aw==","encoding":"base64"}},{"query":{"type":"bytes"},"predicate":{"type":"contain","value":"Ag==","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"A5BYxvLAy0ksUzsKTRTvd8wPeKvMztUofYShogEc+4E=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"Uonfc331cyb83SJZevsfrA==","encoding":"base64"}}]}}]} diff --git a/integration/tests_ok/capture_and_assert.html b/integration/tests_ok/capture_and_assert.html index d9e73f200..962d161b3 100644 --- a/integration/tests_ok/capture_and_assert.html +++ b/integration/tests_ok/capture_and_assert.html @@ -6,4 +6,4 @@ header "content-type" == "{{content_type}}" - \ No newline at end of file + diff --git a/integration/tests_ok/capture_and_assert.json b/integration/tests_ok/capture_and_assert.json index c0226e70e..d796ede60 100644 --- a/integration/tests_ok/capture_and_assert.json +++ b/integration/tests_ok/capture_and_assert.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/capture-and-assert"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"content_type","query":{"type":"header","name":"content-type"}}],"asserts":[{"query":{"type":"header","name":"content-type"},"predicate":{"type":"equal","value":"{{content_type}}"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/capture-and-assert"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"content_type","query":{"type":"header","name":"content-type"}}],"asserts":[{"query":{"type":"header","name":"content-type"},"predicate":{"type":"equal","value":"{{content_type}}"}}]}}]} diff --git a/integration/tests_ok/captures.html b/integration/tests_ok/captures.html index 8c07a5f40..f0ca55462 100644 --- a/integration/tests_ok/captures.html +++ b/integration/tests_ok/captures.html @@ -42,4 +42,4 @@ variable "a_list" == {{a_list}} - \ No newline at end of file + diff --git a/integration/tests_ok/captures.json b/integration/tests_ok/captures.json index cc29bd147..8a9028888 100644 --- a/integration/tests_ok/captures.json +++ b/integration/tests_ok/captures.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/captures"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"param1","query":{"type":"header","name":"header1"}},{"name":"param2","query":{"type":"header","name":"header2","subquery":{"type":"regex","expr":"Hello (.*)!"}}},{"name":"param3","query":{"type":"header","name":"header2","subquery":{"type":"regex","expr":{"type":"regex","value":"Hello (.*)!"}}}}],"asserts":[{"query":{"type":"variable","name":"param1"},"predicate":{"type":"equal","value":"value1"}},{"query":{"type":"variable","name":"param2"},"predicate":{"type":"equal","value":"Bob"}},{"query":{"type":"variable","name":"param3"},"predicate":{"type":"equal","value":"Bob"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/captures-check","query_string_params":[{"name":"param1","value":"{{param1}}"},{"name":"param2","value":"{{param2}}"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/captures-json"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"an_object","query":{"type":"jsonpath","expr":"$['an_object']"}},{"name":"a_list","query":{"type":"jsonpath","expr":"$['a_list']"}},{"name":"a_null","query":{"type":"jsonpath","expr":"$['a_null']"}},{"name":"an_integer","query":{"type":"jsonpath","expr":"$['an_integer']"}},{"name":"a_float","query":{"type":"jsonpath","expr":"$['a_float']"}},{"name":"a_bool","query":{"type":"jsonpath","expr":"$['a_bool']"}},{"name":"a_string","query":{"type":"jsonpath","expr":"$['a_string']"}},{"name":"all","query":{"type":"jsonpath","expr":"$"}}],"asserts":[{"query":{"type":"variable","name":"a_null"},"predicate":{"type":"exist"}},{"query":{"type":"variable","name":"undefined"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"variable","name":"a_null"},"predicate":{"type":"equal","value":"a_null"}},{"query":{"type":"variable","name":"an_integer"},"predicate":{"type":"equal","value":"an_integer"}},{"query":{"type":"variable","name":"a_float"},"predicate":{"type":"equal","value":"a_float"}},{"query":{"type":"variable","name":"a_bool"},"predicate":{"type":"equal","value":"a_bool"}},{"query":{"type":"variable","name":"a_string"},"predicate":{"type":"equal","value":"a_string"}},{"query":{"type":"variable","name":"a_string"},"predicate":{"type":"equal","value":"{{a_string}}"}},{"query":{"type":"variable","name":"a_list"},"predicate":{"type":"equal","value":"a_list"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/captures"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"param1","query":{"type":"header","name":"header1"}},{"name":"param2","query":{"type":"header","name":"header2","subquery":{"type":"regex","expr":"Hello (.*)!"}}},{"name":"param3","query":{"type":"header","name":"header2","subquery":{"type":"regex","expr":{"type":"regex","value":"Hello (.*)!"}}}}],"asserts":[{"query":{"type":"variable","name":"param1"},"predicate":{"type":"equal","value":"value1"}},{"query":{"type":"variable","name":"param2"},"predicate":{"type":"equal","value":"Bob"}},{"query":{"type":"variable","name":"param3"},"predicate":{"type":"equal","value":"Bob"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/captures-check","query_string_params":[{"name":"param1","value":"{{param1}}"},{"name":"param2","value":"{{param2}}"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/captures-json"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"an_object","query":{"type":"jsonpath","expr":"$['an_object']"}},{"name":"a_list","query":{"type":"jsonpath","expr":"$['a_list']"}},{"name":"a_null","query":{"type":"jsonpath","expr":"$['a_null']"}},{"name":"an_integer","query":{"type":"jsonpath","expr":"$['an_integer']"}},{"name":"a_float","query":{"type":"jsonpath","expr":"$['a_float']"}},{"name":"a_bool","query":{"type":"jsonpath","expr":"$['a_bool']"}},{"name":"a_string","query":{"type":"jsonpath","expr":"$['a_string']"}},{"name":"all","query":{"type":"jsonpath","expr":"$"}}],"asserts":[{"query":{"type":"variable","name":"a_null"},"predicate":{"type":"exist"}},{"query":{"type":"variable","name":"undefined"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"variable","name":"a_null"},"predicate":{"type":"equal","value":"a_null"}},{"query":{"type":"variable","name":"an_integer"},"predicate":{"type":"equal","value":"an_integer"}},{"query":{"type":"variable","name":"a_float"},"predicate":{"type":"equal","value":"a_float"}},{"query":{"type":"variable","name":"a_bool"},"predicate":{"type":"equal","value":"a_bool"}},{"query":{"type":"variable","name":"a_string"},"predicate":{"type":"equal","value":"a_string"}},{"query":{"type":"variable","name":"a_string"},"predicate":{"type":"equal","value":"{{a_string}}"}},{"query":{"type":"variable","name":"a_list"},"predicate":{"type":"equal","value":"a_list"}}]}}]} diff --git a/integration/tests_ok/charset.html b/integration/tests_ok/charset.html new file mode 100644 index 000000000..0e69174f3 --- /dev/null +++ b/integration/tests_ok/charset.html @@ -0,0 +1,11 @@ +
GET http://localhost:8000/charset/default
+HTTP/1.0 200
+Content-Type: text/html; charset=utf-8
+```<p>Hello World!</p>```
+
+GET http://localhost:8000/charset/uppercase
+HTTP/1.0 200
+Content-Type: text/html; charset=UTF-8
+[Asserts]
+body == "<p>Hello World!</p>"
+
diff --git a/integration/tests_ok/charset.json b/integration/tests_ok/charset.json new file mode 100644 index 000000000..36f152b3e --- /dev/null +++ b/integration/tests_ok/charset.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/charset/default"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"text/html; charset=utf-8"}],"body":{"type":"raw-string","value":"

Hello World!

"}}},{"request":{"method":"GET","url":"http://localhost:8000/charset/uppercase"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"text/html; charset=UTF-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"

Hello World!

"}}]}}]} diff --git a/integration/tests_ok/color.html b/integration/tests_ok/color.html index 904bf180c..cd70f46a7 100644 --- a/integration/tests_ok/color.html +++ b/integration/tests_ok/color.html @@ -1 +1,3 @@ -
\ No newline at end of file +

+
+
diff --git a/integration/tests_ok/color.hurl b/integration/tests_ok/color.hurl index e69de29bb..139597f9c 100644 --- a/integration/tests_ok/color.hurl +++ b/integration/tests_ok/color.hurl @@ -0,0 +1,2 @@ + + diff --git a/integration/tests_ok/color.json b/integration/tests_ok/color.json index ea5f75f17..6a480c677 100644 --- a/integration/tests_ok/color.json +++ b/integration/tests_ok/color.json @@ -1 +1 @@ -{"entries":[]} \ No newline at end of file +{"entries":[]} diff --git a/integration/tests_ok/compressed.html b/integration/tests_ok/compressed.html index 06e3f2d29..b7924fbf9 100644 --- a/integration/tests_ok/compressed.html +++ b/integration/tests_ok/compressed.html @@ -141,4 +141,4 @@ sha256 == hex,7f83b1657ff1fc53b92dc18148a1d65dfc2d4b1fa3d677284addd200126d9069; md5 == hex,ed076287532e86365e841e92bfc50d8c; ```Hello World!``` - \ No newline at end of file + diff --git a/integration/tests_ok/compressed.json b/integration/tests_ok/compressed.json index 2482a3811..f70b91902 100644 --- a/integration/tests_ok/compressed.json +++ b/integration/tests_ok/compressed.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"12"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"32"},{"name":"Content-Encoding","value":"gzip"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"20"},{"name":"Content-Encoding","value":"deflate"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"17"},{"name":"Content-Encoding","value":"br"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli_large"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Encoding","value":"br"},{"name":"Content-Type","value":"image/jpeg"}],"asserts":[{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"/9j/4A==","encoding":"base64"}}],"body":{"type":"file","filename":"cat.jpg"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli_identity"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"17"},{"name":"Content-Encoding","value":"br, identity"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"12"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"32"},{"name":"Content-Encoding","value":"gzip"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"20"},{"name":"Content-Encoding","value":"deflate"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"17"},{"name":"Content-Encoding","value":"br"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli_large"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Encoding","value":"br"},{"name":"Content-Type","value":"image/jpeg"}],"asserts":[{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"/9j/4A==","encoding":"base64"}}],"body":{"type":"file","filename":"cat.jpg"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli_identity"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"17"},{"name":"Content-Encoding","value":"br, identity"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}}]} diff --git a/integration/tests_ok/cookie_file.html b/integration/tests_ok/cookie_file.html index 01d04450e..6a18e72a4 100644 --- a/integration/tests_ok/cookie_file.html +++ b/integration/tests_ok/cookie_file.html @@ -1,3 +1,3 @@
GET http://localhost:8000/cookie_file
 HTTP/* 200
-
\ No newline at end of file + diff --git a/integration/tests_ok/cookie_file.json b/integration/tests_ok/cookie_file.json index 926a97880..0baf2dff7 100644 --- a/integration/tests_ok/cookie_file.json +++ b/integration/tests_ok/cookie_file.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/cookie_file"},"response":{"status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/cookie_file"},"response":{"status":200}}]} diff --git a/integration/tests_ok/cookie_storage.html b/integration/tests_ok/cookie_storage.html index e05215984..ac9005163 100644 --- a/integration/tests_ok/cookie_storage.html +++ b/integration/tests_ok/cookie_storage.html @@ -12,4 +12,4 @@ HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/cookie_storage.json b/integration/tests_ok/cookie_storage.json index 2cdf8eaaf..228348559 100644 --- a/integration/tests_ok/cookie_storage.json +++ b/integration/tests_ok/cookie_storage.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/cookie-storage/assert-that-cookie1-is-valueA"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookie-storage/assert-that-cookie1-is-not-in-session"},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/cookie-storage/assert-that-cookie1-is-valueA"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookie-storage/assert-that-cookie1-is-not-in-session"},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/cookies.html b/integration/tests_ok/cookies.html index abb774fdb..2661ba5d5 100644 --- a/integration/tests_ok/cookies.html +++ b/integration/tests_ok/cookies.html @@ -62,4 +62,4 @@ cookie "LSID[SameSite]" not exists - \ No newline at end of file + diff --git a/integration/tests_ok/cookies.json b/integration/tests_ok/cookies.json index d196e86ed..d69642e26 100644 --- a/integration/tests_ok/cookies.json +++ b/integration/tests_ok/cookies.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/cookies/set-request-cookie1-valueA","cookies":[{"name":"cookie1","value":"valueA"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/assert-that-cookie1-is-not-in-session"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/set-multiple-request-cookies","cookies":[{"name":"user1","value":"Bob"},{"name":"user2","value":"Bill"},{"name":"user3","value":"{{name}}"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/set-session-cookie2-valueA"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"cookie","expr":"cookie2"},"predicate":{"type":"equal","value":"valueA"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/assert-that-cookie2-is-valueA"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/assert-that-cookie2-is-valueA-and-valueB","cookies":[{"name":"cookie2","value":"valueB"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/delete-cookie2"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"cookie","expr":"cookie2"},"predicate":{"type":"equal","value":""}},{"query":{"type":"cookie","expr":"cookie2[Max-Age]"},"predicate":{"type":"equal","value":0}}]}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/assert-that-cookie2-is-not-in-session"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/set"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Set-Cookie","value":"LSID=DQAAAKEaem_vYg; Expires=Wed, 13 Jan 2021 22:23:01 GMT; Secure; HttpOnly; Path=/accounts"},{"name":"Set-Cookie","value":"HSID=AYQEVnDKrdst; Domain=.localhost; Expires=Wed, 13 Jan 2021 22:23:01 GMT; HttpOnly; Path=/"},{"name":"Set-Cookie","value":"SSID=Ap4PGTEq; Domain=.localhost; Expires=Wed, 13 Jan 2021 22:23:01 GMT; Secure; HttpOnly; Path=/"}],"asserts":[{"query":{"type":"header","name":"Set-Cookie","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"cookie","expr":"LSID"},"predicate":{"type":"equal","value":"DQAAAKEaem_vYg"}},{"query":{"type":"cookie","expr":"LSID[Value]"},"predicate":{"type":"equal","value":"DQAAAKEaem_vYg"}},{"query":{"type":"cookie","expr":"LSID[Expires]"},"predicate":{"type":"exist"}},{"query":{"type":"cookie","expr":"LSID[Expires]"},"predicate":{"type":"equal","value":"Wed, 13 Jan 2021 22:23:01 GMT"}},{"query":{"type":"cookie","expr":"LSID[Max-Age]"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"cookie","expr":"LSID[Domain]"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"cookie","expr":"LSID[Path]"},"predicate":{"type":"equal","value":"/accounts"}},{"query":{"type":"cookie","expr":"LSID[Secure]"},"predicate":{"type":"exist"}},{"query":{"type":"cookie","expr":"LSID[HttpOnly]"},"predicate":{"type":"exist"}},{"query":{"type":"cookie","expr":"LSID[SameSite]"},"predicate":{"not":true,"type":"exist"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/cookies/set-request-cookie1-valueA","cookies":[{"name":"cookie1","value":"valueA"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/assert-that-cookie1-is-not-in-session"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/set-multiple-request-cookies","cookies":[{"name":"user1","value":"Bob"},{"name":"user2","value":"Bill"},{"name":"user3","value":"{{name}}"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/set-session-cookie2-valueA"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"cookie","expr":"cookie2"},"predicate":{"type":"equal","value":"valueA"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/assert-that-cookie2-is-valueA"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/assert-that-cookie2-is-valueA-and-valueB","cookies":[{"name":"cookie2","value":"valueB"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/delete-cookie2"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"cookie","expr":"cookie2"},"predicate":{"type":"equal","value":""}},{"query":{"type":"cookie","expr":"cookie2[Max-Age]"},"predicate":{"type":"equal","value":0}}]}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/assert-that-cookie2-is-not-in-session"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/set"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Set-Cookie","value":"LSID=DQAAAKEaem_vYg; Expires=Wed, 13 Jan 2021 22:23:01 GMT; Secure; HttpOnly; Path=/accounts"},{"name":"Set-Cookie","value":"HSID=AYQEVnDKrdst; Domain=.localhost; Expires=Wed, 13 Jan 2021 22:23:01 GMT; HttpOnly; Path=/"},{"name":"Set-Cookie","value":"SSID=Ap4PGTEq; Domain=.localhost; Expires=Wed, 13 Jan 2021 22:23:01 GMT; Secure; HttpOnly; Path=/"}],"asserts":[{"query":{"type":"header","name":"Set-Cookie","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"cookie","expr":"LSID"},"predicate":{"type":"equal","value":"DQAAAKEaem_vYg"}},{"query":{"type":"cookie","expr":"LSID[Value]"},"predicate":{"type":"equal","value":"DQAAAKEaem_vYg"}},{"query":{"type":"cookie","expr":"LSID[Expires]"},"predicate":{"type":"exist"}},{"query":{"type":"cookie","expr":"LSID[Expires]"},"predicate":{"type":"equal","value":"Wed, 13 Jan 2021 22:23:01 GMT"}},{"query":{"type":"cookie","expr":"LSID[Max-Age]"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"cookie","expr":"LSID[Domain]"},"predicate":{"not":true,"type":"exist"}},{"query":{"type":"cookie","expr":"LSID[Path]"},"predicate":{"type":"equal","value":"/accounts"}},{"query":{"type":"cookie","expr":"LSID[Secure]"},"predicate":{"type":"exist"}},{"query":{"type":"cookie","expr":"LSID[HttpOnly]"},"predicate":{"type":"exist"}},{"query":{"type":"cookie","expr":"LSID[SameSite]"},"predicate":{"not":true,"type":"exist"}}]}}]} diff --git a/integration/tests_ok/delete.html b/integration/tests_ok/delete.html index 72978f787..2789ca9af 100644 --- a/integration/tests_ok/delete.html +++ b/integration/tests_ok/delete.html @@ -1,4 +1,4 @@
DELETE http://localhost:8000/delete
 HTTP/1.0 200
 
-
\ No newline at end of file + diff --git a/integration/tests_ok/delete.json b/integration/tests_ok/delete.json index 468a73b03..99bab6a37 100644 --- a/integration/tests_ok/delete.json +++ b/integration/tests_ok/delete.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"DELETE","url":"http://localhost:8000/delete"},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"DELETE","url":"http://localhost:8000/delete"},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/empty.html b/integration/tests_ok/empty.html index 904bf180c..cd70f46a7 100644 --- a/integration/tests_ok/empty.html +++ b/integration/tests_ok/empty.html @@ -1 +1,3 @@ -
\ No newline at end of file +

+
+
diff --git a/integration/tests_ok/empty.hurl b/integration/tests_ok/empty.hurl index e69de29bb..139597f9c 100644 --- a/integration/tests_ok/empty.hurl +++ b/integration/tests_ok/empty.hurl @@ -0,0 +1,2 @@ + + diff --git a/integration/tests_ok/empty.json b/integration/tests_ok/empty.json index ea5f75f17..6a480c677 100644 --- a/integration/tests_ok/empty.json +++ b/integration/tests_ok/empty.json @@ -1 +1 @@ -{"entries":[]} \ No newline at end of file +{"entries":[]} diff --git a/integration/tests_ok/encoding.html b/integration/tests_ok/encoding.html index 5075ee698..c1deb8766 100644 --- a/integration/tests_ok/encoding.html +++ b/integration/tests_ok/encoding.html @@ -12,4 +12,4 @@ body == "caf\u{e9}" - \ No newline at end of file + diff --git a/integration/tests_ok/encoding.json b/integration/tests_ok/encoding.json index cace082c6..7e9ca6e45 100644 --- a/integration/tests_ok/encoding.json +++ b/integration/tests_ok/encoding.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/encoding/utf8"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"café"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/encoding/latin1"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"text/html; charset=ISO-8859-1"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"café"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/encoding/utf8"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"café"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/encoding/latin1"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"text/html; charset=ISO-8859-1"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"café"}}]}}]} diff --git a/integration/tests_ok/env_var.html b/integration/tests_ok/env_var.html index e6232ab29..f57df9d71 100644 --- a/integration/tests_ok/env_var.html +++ b/integration/tests_ok/env_var.html @@ -3,4 +3,4 @@ name: {{name}} HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/env_var.json b/integration/tests_ok/env_var.json index 7fe585df7..1c9e98189 100644 --- a/integration/tests_ok/env_var.json +++ b/integration/tests_ok/env_var.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/env-var","query_string_params":[{"name":"name","value":"{{name}}"}]},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/env-var","query_string_params":[{"name":"name","value":"{{name}}"}]},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/expect.html b/integration/tests_ok/expect.html index 42959359b..2820e2851 100644 --- a/integration/tests_ok/expect.html +++ b/integration/tests_ok/expect.html @@ -6,4 +6,4 @@ - \ No newline at end of file + diff --git a/integration/tests_ok/expect.json b/integration/tests_ok/expect.json index d3885a232..bda6c4745 100644 --- a/integration/tests_ok/expect.json +++ b/integration/tests_ok/expect.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/expect","headers":[{"name":"Expect","value":"100-continue"}],"body":{"type":"raw-string","value":"data"}},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/expect","headers":[{"name":"Expect","value":"100-continue"}],"body":{"type":"raw-string","value":"data"}},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/float.html b/integration/tests_ok/float.html index d6c3d5cc1..2995bac20 100644 --- a/integration/tests_ok/float.html +++ b/integration/tests_ok/float.html @@ -19,4 +19,4 @@ jsonpath "$[11]" == 1.1 jsonpath "$[12]" == 1.5 [ -2.2, 0.0, 0.0000000000000001, 0.000000000000001, 0.333, 0.3333333333333333, 0.333333333333333333, 1.0, 1.001, 1.07, 1.070, 1.1, 1.5 ] - \ No newline at end of file + diff --git a/integration/tests_ok/float.json b/integration/tests_ok/float.json index 13f5a534a..bc82cd366 100644 --- a/integration/tests_ok/float.json +++ b/integration/tests_ok/float.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/float"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$[1]"},"predicate":{"type":"equal","value":0.0}},{"query":{"type":"jsonpath","expr":"$[2]"},"predicate":{"type":"equal","value":0.0}},{"query":{"type":"jsonpath","expr":"$[2]"},"predicate":{"type":"equal","value":0.0000000000000001}},{"query":{"type":"jsonpath","expr":"$[3]"},"predicate":{"type":"equal","value":0.000000000000001}},{"query":{"type":"jsonpath","expr":"$[4]"},"predicate":{"type":"equal","value":0.333}},{"query":{"type":"jsonpath","expr":"$[4]"},"predicate":{"type":"not-equal","value":0.3333333333333333}},{"query":{"type":"jsonpath","expr":"$[5]"},"predicate":{"type":"equal","value":0.3333333333333333}},{"query":{"type":"jsonpath","expr":"$[5]"},"predicate":{"type":"equal","value":0.333333333333333333}},{"query":{"type":"jsonpath","expr":"$[6]"},"predicate":{"type":"equal","value":0.333333333333333333}},{"query":{"type":"jsonpath","expr":"$[7]"},"predicate":{"type":"equal","value":1.0}},{"query":{"type":"jsonpath","expr":"$[7]"},"predicate":{"type":"equal","value":1}},{"query":{"type":"jsonpath","expr":"$[8]"},"predicate":{"type":"equal","value":1.001}},{"query":{"type":"jsonpath","expr":"$[9]"},"predicate":{"type":"equal","value":1.07}},{"query":{"type":"jsonpath","expr":"$[9]"},"predicate":{"type":"equal","value":1.070}},{"query":{"type":"jsonpath","expr":"$[10]"},"predicate":{"type":"equal","value":1.07}},{"query":{"type":"jsonpath","expr":"$[11]"},"predicate":{"type":"equal","value":1.1}},{"query":{"type":"jsonpath","expr":"$[12]"},"predicate":{"type":"equal","value":1.5}}],"body":{"type":"json","value":[-2.2,0.0,0.0000000000000001,0.000000000000001,0.333,0.3333333333333333,0.333333333333333333,1.0,1.001,1.07,1.070,1.1,1.5]}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/float"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$[1]"},"predicate":{"type":"equal","value":0.0}},{"query":{"type":"jsonpath","expr":"$[2]"},"predicate":{"type":"equal","value":0.0}},{"query":{"type":"jsonpath","expr":"$[2]"},"predicate":{"type":"equal","value":0.0000000000000001}},{"query":{"type":"jsonpath","expr":"$[3]"},"predicate":{"type":"equal","value":0.000000000000001}},{"query":{"type":"jsonpath","expr":"$[4]"},"predicate":{"type":"equal","value":0.333}},{"query":{"type":"jsonpath","expr":"$[4]"},"predicate":{"type":"not-equal","value":0.3333333333333333}},{"query":{"type":"jsonpath","expr":"$[5]"},"predicate":{"type":"equal","value":0.3333333333333333}},{"query":{"type":"jsonpath","expr":"$[5]"},"predicate":{"type":"equal","value":0.333333333333333333}},{"query":{"type":"jsonpath","expr":"$[6]"},"predicate":{"type":"equal","value":0.333333333333333333}},{"query":{"type":"jsonpath","expr":"$[7]"},"predicate":{"type":"equal","value":1.0}},{"query":{"type":"jsonpath","expr":"$[7]"},"predicate":{"type":"equal","value":1}},{"query":{"type":"jsonpath","expr":"$[8]"},"predicate":{"type":"equal","value":1.001}},{"query":{"type":"jsonpath","expr":"$[9]"},"predicate":{"type":"equal","value":1.07}},{"query":{"type":"jsonpath","expr":"$[9]"},"predicate":{"type":"equal","value":1.070}},{"query":{"type":"jsonpath","expr":"$[10]"},"predicate":{"type":"equal","value":1.07}},{"query":{"type":"jsonpath","expr":"$[11]"},"predicate":{"type":"equal","value":1.1}},{"query":{"type":"jsonpath","expr":"$[12]"},"predicate":{"type":"equal","value":1.5}}],"body":{"type":"json","value":[-2.2,0.0,0.0000000000000001,0.000000000000001,0.333,0.3333333333333333,0.333333333333333333,1.0,1.001,1.07,1.070,1.1,1.5]}}}]} diff --git a/integration/tests_ok/follow_redirect.html b/integration/tests_ok/follow_redirect.html index 752118238..536e964ab 100644 --- a/integration/tests_ok/follow_redirect.html +++ b/integration/tests_ok/follow_redirect.html @@ -1,3 +1,5 @@
GET http://localhost:8000/follow-redirect
 HTTP/1.0 200
-```Followed redirect!```
\ No newline at end of file +```Followed redirect!``` + + diff --git a/integration/tests_ok/follow_redirect.hurl b/integration/tests_ok/follow_redirect.hurl index 115e1e5a2..29fb369cb 100644 --- a/integration/tests_ok/follow_redirect.hurl +++ b/integration/tests_ok/follow_redirect.hurl @@ -1,3 +1,4 @@ GET http://localhost:8000/follow-redirect HTTP/1.0 200 -```Followed redirect!``` \ No newline at end of file +```Followed redirect!``` + diff --git a/integration/tests_ok/follow_redirect.json b/integration/tests_ok/follow_redirect.json index 5daa9619d..04f720056 100644 --- a/integration/tests_ok/follow_redirect.json +++ b/integration/tests_ok/follow_redirect.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Followed redirect!"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Followed redirect!"}}}]} diff --git a/integration/tests_ok/form_params.html b/integration/tests_ok/form_params.html index f99643714..10c0e9fcd 100644 --- a/integration/tests_ok/form_params.html +++ b/integration/tests_ok/form_params.html @@ -17,4 +17,4 @@ HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/form_params.json b/integration/tests_ok/form_params.json index 1143348f9..73f64d314 100644 --- a/integration/tests_ok/form_params.json +++ b/integration/tests_ok/form_params.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/form-params","form_params":[{"name":"param1","value":"value1"},{"name":"param2","value":""},{"name":"param3","value":"a=b"},{"name":"param4","value":"a%3db"},{"name":"values[0]","value":"0"},{"name":"values[1]","value":"1"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/form-params","headers":[{"name":"Content-Type","value":"application/x-www-form-urlencoded"}],"body":{"type":"raw-string","value":"param1=value1¶m2=¶m3=a%3db¶m4=a%253db&values[0]=0&values[1]=1"}},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/form-params","form_params":[{"name":"param1","value":"value1"},{"name":"param2","value":""},{"name":"param3","value":"a=b"},{"name":"param4","value":"a%3db"},{"name":"values[0]","value":"0"},{"name":"values[1]","value":"1"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/form-params","headers":[{"name":"Content-Type","value":"application/x-www-form-urlencoded"}],"body":{"type":"raw-string","value":"param1=value1¶m2=¶m3=a%3db¶m4=a%253db&values[0]=0&values[1]=1"}},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/head.html b/integration/tests_ok/head.html index bea83ed6d..f6fb7f161 100644 --- a/integration/tests_ok/head.html +++ b/integration/tests_ok/head.html @@ -6,4 +6,4 @@ [Asserts] bytes count == 0 - \ No newline at end of file + diff --git a/integration/tests_ok/head.json b/integration/tests_ok/head.json index 372de3468..49ab9c927 100644 --- a/integration/tests_ok/head.json +++ b/integration/tests_ok/head.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"HEAD","url":"http://localhost:8000/head"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"text/html; charset=utf-8"},{"name":"Content-Length","value":"10"},{"name":"Server","value":"Flask Server"}],"asserts":[{"query":{"type":"bytes","subquery":{"type":"count"}},"predicate":{"type":"equal","value":0}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"HEAD","url":"http://localhost:8000/head"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Type","value":"text/html; charset=utf-8"},{"name":"Content-Length","value":"10"},{"name":"Server","value":"Flask Server"}],"asserts":[{"query":{"type":"bytes","subquery":{"type":"count"}},"predicate":{"type":"equal","value":0}}]}}]} diff --git a/integration/tests_ok/headers.html b/integration/tests_ok/headers.html index 787ec83dc..6b5d4ce73 100644 --- a/integration/tests_ok/headers.html +++ b/integration/tests_ok/headers.html @@ -35,4 +35,4 @@ GET http://localhost:8000/response-headers HTTP/1.0 200 Beverage: cafe # TBC send utf8 - \ No newline at end of file + diff --git a/integration/tests_ok/headers.json b/integration/tests_ok/headers.json index 0e830d573..e20646150 100644 --- a/integration/tests_ok/headers.json +++ b/integration/tests_ok/headers.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/default-headers"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/default-headers","headers":[{"name":"User-Agent","value":"hurl/1.0"},{"name":"Host","value":"localhost:8000"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/default-headers","headers":[{"name":"User-Agent","value":"hurl/1.0"},{"name":"Host","value":"localhost:8000"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/custom-headers","headers":[{"name":"Fruit","value":"Raspberry"},{"name":"Fruit","value":"Apple"},{"name":"Fruit","value":"Banana"},{"name":"Fruit","value":"Grape"},{"name":"Color","value":"Green"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/custom-headers-utf8","headers":[{"name":"Beverage","value":"café"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/custom-headers-value","headers":[{"name":"Id","value":"#123"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/custom-headers-quote","headers":[{"name":"Header1","value":"'"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/response-headers"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Beverage","value":"cafe"}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/default-headers"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/default-headers","headers":[{"name":"User-Agent","value":"hurl/1.0"},{"name":"Host","value":"localhost:8000"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/default-headers","headers":[{"name":"User-Agent","value":"hurl/1.0"},{"name":"Host","value":"localhost:8000"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/custom-headers","headers":[{"name":"Fruit","value":"Raspberry"},{"name":"Fruit","value":"Apple"},{"name":"Fruit","value":"Banana"},{"name":"Fruit","value":"Grape"},{"name":"Color","value":"Green"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/custom-headers-utf8","headers":[{"name":"Beverage","value":"café"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/custom-headers-value","headers":[{"name":"Id","value":"#123"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/custom-headers-quote","headers":[{"name":"Header1","value":"'"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/response-headers"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Beverage","value":"cafe"}]}}]} diff --git a/integration/tests_ok/hello.html b/integration/tests_ok/hello.html index 9d0342cf0..3c26e144b 100644 --- a/integration/tests_ok/hello.html +++ b/integration/tests_ok/hello.html @@ -13,4 +13,4 @@ GET http://localhost:8000/hello HTTP/1.0 200 base64, SGVsbG8gV29ybGQh; - \ No newline at end of file + diff --git a/integration/tests_ok/hello.json b/integration/tests_ok/hello.json index 8042874a9..08de89845 100644 --- a/integration/tests_ok/hello.json +++ b/integration/tests_ok/hello.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"data.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"data.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}}]} diff --git a/integration/tests_ok/ignore_asserts.html b/integration/tests_ok/ignore_asserts.html index 7842b048a..f48c35bdd 100644 --- a/integration/tests_ok/ignore_asserts.html +++ b/integration/tests_ok/ignore_asserts.html @@ -5,4 +5,4 @@ body == "Whatever" - \ No newline at end of file + diff --git a/integration/tests_ok/ignore_asserts.json b/integration/tests_ok/ignore_asserts.json index e2ccdc574..03d1bf6dd 100644 --- a/integration/tests_ok/ignore_asserts.json +++ b/integration/tests_ok/ignore_asserts.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/ignore_asserts"},"response":{"version":"HTTP/1.0","status":666,"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"Whatever"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/ignore_asserts"},"response":{"version":"HTTP/1.0","status":666,"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"Whatever"}}]}}]} diff --git a/integration/tests_ok/include.html b/integration/tests_ok/include.html index 3ee6960f3..0b652730b 100644 --- a/integration/tests_ok/include.html +++ b/integration/tests_ok/include.html @@ -3,4 +3,4 @@ HTTP/1.0 200 ```Hello``` - \ No newline at end of file + diff --git a/integration/tests_ok/include.json b/integration/tests_ok/include.json index 738f40aeb..dc726439b 100644 --- a/integration/tests_ok/include.json +++ b/integration/tests_ok/include.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/include"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/include"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello"}}}]} diff --git a/integration/tests_ok/json_output.html b/integration/tests_ok/json_output.html index 72c8109f2..0bf0f81d8 100644 --- a/integration/tests_ok/json_output.html +++ b/integration/tests_ok/json_output.html @@ -56,4 +56,4 @@ jsonpath "$.tags" not includes null - \ No newline at end of file + diff --git a/integration/tests_ok/json_output.json b/integration/tests_ok/json_output.json index d1eea2010..4bb52253c 100644 --- a/integration/tests_ok/json_output.json +++ b/integration/tests_ok/json_output.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/set-session-cookie2-valueA"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"cookie","expr":"cookie2"},"predicate":{"type":"equal","value":"valueA"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":302,"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"type":"equal","value":"http://localhost:8000/following-redirect"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"not":true,"type":"exist"}}],"body":{"type":"raw-string","value":"Followed redirect!"}}},{"request":{"method":"GET","url":"http://localhost:8000/captures"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"param1","query":{"type":"header","name":"header1"}},{"name":"param2","query":{"type":"header","name":"header2","subquery":{"type":"regex","expr":"Hello (.*)!"}}},{"name":"param3","query":{"type":"header","name":"header2","subquery":{"type":"regex","expr":{"type":"regex","value":"Hello (.*)!"}}}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-json"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.errors[1].id"},"predicate":{"type":"equal","value":"error2"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"type":"include","value":"test"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"not":true,"type":"include","value":"prod"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"not":true,"type":"include","value":null}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/cookies/set-session-cookie2-valueA"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"cookie","expr":"cookie2"},"predicate":{"type":"equal","value":"valueA"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":302,"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"type":"equal","value":"http://localhost:8000/following-redirect"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"not":true,"type":"exist"}}],"body":{"type":"raw-string","value":"Followed redirect!"}}},{"request":{"method":"GET","url":"http://localhost:8000/captures"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"param1","query":{"type":"header","name":"header1"}},{"name":"param2","query":{"type":"header","name":"header2","subquery":{"type":"regex","expr":"Hello (.*)!"}}},{"name":"param3","query":{"type":"header","name":"header2","subquery":{"type":"regex","expr":{"type":"regex","value":"Hello (.*)!"}}}}]}},{"request":{"method":"GET","url":"http://localhost:8000/assert-json"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.errors[1].id"},"predicate":{"type":"equal","value":"error2"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"type":"include","value":"test"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"not":true,"type":"include","value":"prod"}},{"query":{"type":"jsonpath","expr":"$.tags"},"predicate":{"not":true,"type":"include","value":null}}]}}]} diff --git a/integration/tests_ok/large.html b/integration/tests_ok/large.html index 93a54330b..e00fdb3b9 100644 --- a/integration/tests_ok/large.html +++ b/integration/tests_ok/large.html @@ -9,4 +9,4 @@ - \ No newline at end of file + diff --git a/integration/tests_ok/multilines.html b/integration/tests_ok/multilines.html index a2e68fe8b..6755f7035 100644 --- a/integration/tests_ok/multilines.html +++ b/integration/tests_ok/multilines.html @@ -12,4 +12,4 @@ line3 ``` - \ No newline at end of file + diff --git a/integration/tests_ok/multilines.json b/integration/tests_ok/multilines.json index adda29e8d..dd7ecf39b 100644 --- a/integration/tests_ok/multilines.json +++ b/integration/tests_ok/multilines.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/multilines"},"response":{"status":200,"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"line1\nline2\nline3\n"}},{"query":{"type":"body"},"predicate":{"type":"equal","value":"line1\nline2\nline3\n"}},{"query":{"type":"body"},"predicate":{"type":"equal","value":"line1\nline2\nline3\n"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/multilines"},"response":{"status":200,"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"line1\nline2\nline3\n"}},{"query":{"type":"body"},"predicate":{"type":"equal","value":"line1\nline2\nline3\n"}},{"query":{"type":"body"},"predicate":{"type":"equal","value":"line1\nline2\nline3\n"}}]}}]} diff --git a/integration/tests_ok/multipart_form_data.html b/integration/tests_ok/multipart_form_data.html index dac9d680f..346e0e10b 100644 --- a/integration/tests_ok/multipart_form_data.html +++ b/integration/tests_ok/multipart_form_data.html @@ -9,4 +9,4 @@ - \ No newline at end of file + diff --git a/integration/tests_ok/multipart_form_data.json b/integration/tests_ok/multipart_form_data.json index 6afd992bd..053e9dfc4 100644 --- a/integration/tests_ok/multipart_form_data.json +++ b/integration/tests_ok/multipart_form_data.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/multipart-form-data","multipart_form_data":[{"name":"key1","value":"value1"},{"name":"upload1","filename":"data.txt"},{"name":"upload2","filename":"data.html"},{"name":"upload3","filename":"data.txt","content_type":"text/html"}]},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/multipart-form-data","multipart_form_data":[{"name":"key1","value":"value1"},{"name":"upload1","filename":"data.txt"},{"name":"upload2","filename":"data.html"},{"name":"upload3","filename":"data.txt","content_type":"text/html"}]},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/no_entry.html b/integration/tests_ok/no_entry.html index 241e33920..548c41a80 100644 --- a/integration/tests_ok/no_entry.html +++ b/integration/tests_ok/no_entry.html @@ -1,3 +1,3 @@
# all the entries
 # have been commented
-
\ No newline at end of file + diff --git a/integration/tests_ok/no_entry.json b/integration/tests_ok/no_entry.json index ea5f75f17..6a480c677 100644 --- a/integration/tests_ok/no_entry.json +++ b/integration/tests_ok/no_entry.json @@ -1 +1 @@ -{"entries":[]} \ No newline at end of file +{"entries":[]} diff --git a/integration/tests_ok/non_utf8.html b/integration/tests_ok/non_utf8.html index 1fd7679c4..ee4916c23 100644 --- a/integration/tests_ok/non_utf8.html +++ b/integration/tests_ok/non_utf8.html @@ -1,4 +1,4 @@
GET http://localhost:8000/non-utf8
 HTTP/1.0 200
 
-
\ No newline at end of file + diff --git a/integration/tests_ok/non_utf8.json b/integration/tests_ok/non_utf8.json index 5f1a95a54..186ff9aab 100644 --- a/integration/tests_ok/non_utf8.json +++ b/integration/tests_ok/non_utf8.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/non-utf8"},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/non-utf8"},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/option_compressed.html b/integration/tests_ok/option_compressed.html index 28ea030b5..2d6477993 100644 --- a/integration/tests_ok/option_compressed.html +++ b/integration/tests_ok/option_compressed.html @@ -210,4 +210,4 @@ sha256 == hex,7f83b1657ff1fc53b92dc18148a1d65dfc2d4b1fa3d677284addd200126d9069; md5 == hex,ed076287532e86365e841e92bfc50d8c; ```Hello World!``` - \ No newline at end of file + diff --git a/integration/tests_ok/option_compressed.json b/integration/tests_ok/option_compressed.json index da8e15371..a6e6c2d87 100644 --- a/integration/tests_ok/option_compressed.json +++ b/integration/tests_ok/option_compressed.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"12"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"12"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"32"},{"name":"Content-Encoding","value":"gzip"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"20"},{"name":"Content-Encoding","value":"deflate"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"17"},{"name":"Content-Encoding","value":"br"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli_large"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Encoding","value":"br"},{"name":"Content-Type","value":"image/jpeg"}],"asserts":[{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"/9j/4A==","encoding":"base64"}}],"body":{"type":"file","filename":"cat.jpg"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli_identity"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"17"},{"name":"Content-Encoding","value":"br, identity"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"12"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"12"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/none"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"32"},{"name":"Content-Encoding","value":"gzip"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/gzip"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"20"},{"name":"Content-Encoding","value":"deflate"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/zlib"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"17"},{"name":"Content-Encoding","value":"br"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"file","filename":"hello.txt"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli_large"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Encoding","value":"br"},{"name":"Content-Type","value":"image/jpeg"}],"asserts":[{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"/9j/4A==","encoding":"base64"}}],"body":{"type":"file","filename":"cat.jpg"}}},{"request":{"method":"GET","url":"http://localhost:8000/compressed/brotli_identity"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"Content-Length","value":"17"},{"name":"Content-Encoding","value":"br, identity"},{"name":"Content-Type","value":"text/html; charset=utf-8"}],"asserts":[{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"bytes"},"predicate":{"type":"start-with","value":"SGVsbG8=","encoding":"base64"}},{"query":{"type":"sha256"},"predicate":{"type":"equal","value":"f4OxZX/x/FO5LcGBSKHWXfwtSx+j1ncoSt3SABJtkGk=","encoding":"base64"}},{"query":{"type":"md5"},"predicate":{"type":"equal","value":"7Qdih1MuhjZehB6Sv8UNjA==","encoding":"base64"}}],"body":{"type":"raw-string","value":"Hello World!"}}}]} diff --git a/integration/tests_ok/option_follow_redirect.html b/integration/tests_ok/option_follow_redirect.html index d40315d3b..a9ca378d5 100644 --- a/integration/tests_ok/option_follow_redirect.html +++ b/integration/tests_ok/option_follow_redirect.html @@ -24,4 +24,4 @@ header "Location" not exists ```Followed redirect!``` - \ No newline at end of file + diff --git a/integration/tests_ok/option_follow_redirect.json b/integration/tests_ok/option_follow_redirect.json index 1ac379f7c..c09cfb0b3 100644 --- a/integration/tests_ok/option_follow_redirect.json +++ b/integration/tests_ok/option_follow_redirect.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":302,"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"type":"equal","value":"http://localhost:8000/following-redirect"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":302,"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"type":"equal","value":"http://localhost:8000/following-redirect"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"not":true,"type":"exist"}}],"body":{"type":"raw-string","value":"Followed redirect!"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":302,"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"type":"equal","value":"http://localhost:8000/following-redirect"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":302,"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"type":"equal","value":"http://localhost:8000/following-redirect"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/follow-redirect"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"header","name":"Location"},"predicate":{"not":true,"type":"exist"}}],"body":{"type":"raw-string","value":"Followed redirect!"}}}]} diff --git a/integration/tests_ok/option_insecure.html b/integration/tests_ok/option_insecure.html index b829c88a5..ac2a48b05 100644 --- a/integration/tests_ok/option_insecure.html +++ b/integration/tests_ok/option_insecure.html @@ -4,4 +4,5 @@ insecure: false HTTP/* 200 -```Hello World!``` \ No newline at end of file +```Hello World!``` + diff --git a/integration/tests_ok/option_insecure.hurl b/integration/tests_ok/option_insecure.hurl index d8c87ac04..e8e9ca3a6 100644 --- a/integration/tests_ok/option_insecure.hurl +++ b/integration/tests_ok/option_insecure.hurl @@ -4,4 +4,4 @@ GET http://localhost:8000/hello insecure: false HTTP/* 200 -```Hello World!``` \ No newline at end of file +```Hello World!``` diff --git a/integration/tests_ok/option_insecure.json b/integration/tests_ok/option_insecure.json index d0b989fd8..3cdd5d5a2 100644 --- a/integration/tests_ok/option_insecure.json +++ b/integration/tests_ok/option_insecure.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} diff --git a/integration/tests_ok/option_retry.html b/integration/tests_ok/option_retry.html index 02de95d04..753e0e707 100644 --- a/integration/tests_ok/option_retry.html +++ b/integration/tests_ok/option_retry.html @@ -25,4 +25,4 @@ GET http://localhost:8000/jobs/{{job_id}} HTTP/* 404 - \ No newline at end of file + diff --git a/integration/tests_ok/option_retry.json b/integration/tests_ok/option_retry.json index 182e718ea..a11516674 100644 --- a/integration/tests_ok/option_retry.json +++ b/integration/tests_ok/option_retry.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/jobs"},"response":{"status":201,"captures":[{"name":"job_id","query":{"type":"jsonpath","expr":"$.id"}}],"asserts":[{"query":{"type":"jsonpath","expr":"$.state"},"predicate":{"type":"equal","value":"RUNNING"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.state"},"predicate":{"type":"equal","value":"COMPLETED"}}]}},{"request":{"method":"DELETE","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":200}},{"request":{"method":"GET","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":404}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/jobs"},"response":{"status":201,"captures":[{"name":"job_id","query":{"type":"jsonpath","expr":"$.id"}}],"asserts":[{"query":{"type":"jsonpath","expr":"$.state"},"predicate":{"type":"equal","value":"RUNNING"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.state"},"predicate":{"type":"equal","value":"COMPLETED"}}]}},{"request":{"method":"DELETE","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":200}},{"request":{"method":"GET","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":404}}]} diff --git a/integration/tests_ok/option_verbose.html b/integration/tests_ok/option_verbose.html index 986d7d0b7..9a665c2db 100644 --- a/integration/tests_ok/option_verbose.html +++ b/integration/tests_ok/option_verbose.html @@ -12,4 +12,4 @@ GET http://localhost:8000/hello [Options] very-verbose: true - \ No newline at end of file + diff --git a/integration/tests_ok/option_verbose.json b/integration/tests_ok/option_verbose.json index 37c1790cb..cf2fbc51b 100644 --- a/integration/tests_ok/option_verbose.json +++ b/integration/tests_ok/option_verbose.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"}},{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"status":200,"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/hello"}},{"request":{"method":"GET","url":"http://localhost:8000/hello"}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"}},{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"status":200,"body":{"type":"raw-string","value":"Hello World!"}}},{"request":{"method":"GET","url":"http://localhost:8000/hello"}},{"request":{"method":"GET","url":"http://localhost:8000/hello"}}]} diff --git a/integration/tests_ok/output.html b/integration/tests_ok/output.html index c27ed3550..80fd20759 100644 --- a/integration/tests_ok/output.html +++ b/integration/tests_ok/output.html @@ -6,4 +6,4 @@ GET http://localhost:8000/output/endpoint2 HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/output.json b/integration/tests_ok/output.json index ac3283bfa..931ee99e9 100644 --- a/integration/tests_ok/output.json +++ b/integration/tests_ok/output.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/output/endpoint1","body":{"type":"json","value":{"user":"bob"}}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/output/endpoint2"},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/output/endpoint1","body":{"type":"json","value":{"user":"bob"}}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/output/endpoint2"},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/patch.html b/integration/tests_ok/patch.html index 919a9ebb8..a708413de 100644 --- a/integration/tests_ok/patch.html +++ b/integration/tests_ok/patch.html @@ -10,4 +10,4 @@ ETag: "e0023aa4f" - \ No newline at end of file + diff --git a/integration/tests_ok/patch.json b/integration/tests_ok/patch.json index eec45047b..995569f7c 100644 --- a/integration/tests_ok/patch.json +++ b/integration/tests_ok/patch.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"PATCH","url":"http://localhost:8000/patch/file.txt","headers":[{"name":"Host","value":"www.example.com"},{"name":"Content-Type","value":"application/example"},{"name":"If-Match","value":"\"e0023aa4e\""}]},"response":{"version":"HTTP/1.0","status":204,"headers":[{"name":"Content-Location","value":"/file.txt"},{"name":"ETag","value":"\"e0023aa4f\""}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"PATCH","url":"http://localhost:8000/patch/file.txt","headers":[{"name":"Host","value":"www.example.com"},{"name":"Content-Type","value":"application/example"},{"name":"If-Match","value":"\"e0023aa4e\""}]},"response":{"version":"HTTP/1.0","status":204,"headers":[{"name":"Content-Location","value":"/file.txt"},{"name":"ETag","value":"\"e0023aa4f\""}]}}]} diff --git a/integration/tests_ok/post_base64.html b/integration/tests_ok/post_base64.html index 2baa0020b..cd26993e6 100644 --- a/integration/tests_ok/post_base64.html +++ b/integration/tests_ok/post_base64.html @@ -4,4 +4,4 @@ HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/post_base64.json b/integration/tests_ok/post_base64.json index 3517a16b4..94ff63f13 100644 --- a/integration/tests_ok/post_base64.json +++ b/integration/tests_ok/post_base64.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-base64","body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-base64","body":{"encoding":"base64","value":"SGVsbG8gV29ybGQh"}},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/post_bytes.html b/integration/tests_ok/post_bytes.html index e52242cfc..8c58ada6b 100644 --- a/integration/tests_ok/post_bytes.html +++ b/integration/tests_ok/post_bytes.html @@ -3,4 +3,4 @@ base64, AQID; # echo -e -n '\x01\x02\x03' | base64 HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/post_bytes.json b/integration/tests_ok/post_bytes.json index 612f638c5..92976b219 100644 --- a/integration/tests_ok/post_bytes.json +++ b/integration/tests_ok/post_bytes.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-bytes","headers":[{"name":"Content-Type","value":"application/octet-stream"}],"body":{"encoding":"base64","value":"AQID"}},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-bytes","headers":[{"name":"Content-Type","value":"application/octet-stream"}],"body":{"encoding":"base64","value":"AQID"}},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/post_file.html b/integration/tests_ok/post_file.html index c463f6ea6..072e689d8 100644 --- a/integration/tests_ok/post_file.html +++ b/integration/tests_ok/post_file.html @@ -7,4 +7,4 @@ file,post_file_with\ space; HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/post_file.json b/integration/tests_ok/post_file.json index 549dd8527..4a0b99272 100644 --- a/integration/tests_ok/post_file.json +++ b/integration/tests_ok/post_file.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-file","body":{"type":"file","filename":"data.bin"}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-file","body":{"type":"file","filename":"post_file_with space"}},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-file","body":{"type":"file","filename":"data.bin"}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-file","body":{"type":"file","filename":"post_file_with space"}},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/post_json.html b/integration/tests_ok/post_json.html index bc404bfbb..94e2ceb0b 100644 --- a/integration/tests_ok/post_json.html +++ b/integration/tests_ok/post_json.html @@ -57,4 +57,4 @@ { "name": "{{name}}" } - \ No newline at end of file + diff --git a/integration/tests_ok/post_json.json b/integration/tests_ok/post_json.json index 913efe9fd..c8e84d83e 100644 --- a/integration/tests_ok/post_json.json +++ b/integration/tests_ok/post_json.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-json","body":{"type":"json","value":{"name":"Bob","password":"&secret\\'<>","age":30,"strict":true,"spacing":"\n","g_clef":"ƻǿ","items":[true,"true",1],"variable":"{{string_variable}}"}}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-json-array","body":{"type":"json","value":[1,2,3]}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-json-string","body":{"type":"json","value":"Hello"}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-json-number","body":{"type":"json","value":100}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-json-numbers","body":{"type":"json","value":{"natural":100,"negative":-1,"float":"3.333333333333333","exponent":100e100}}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-json-boolean","body":{"type":"json","value":true}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/get-name"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"name","query":{"type":"body"}}]}},{"request":{"method":"POST","url":"http://localhost:8000/check_name","body":{"type":"json","value":{"name":"{{name}}"}}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-json","body":{"type":"json","value":{"name":"Bob","password":"&secret\\'<>","age":30,"strict":true,"spacing":"\n","g_clef":"ƻǿ","items":[true,"true",1],"variable":"{{string_variable}}"}}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-json-array","body":{"type":"json","value":[1,2,3]}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-json-string","body":{"type":"json","value":"Hello"}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-json-number","body":{"type":"json","value":100}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-json-numbers","body":{"type":"json","value":{"natural":100,"negative":-1,"float":"3.333333333333333","exponent":100e100}}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-json-boolean","body":{"type":"json","value":true}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/get-name"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"name","query":{"type":"body"}}]}},{"request":{"method":"POST","url":"http://localhost:8000/check_name","body":{"type":"json","value":{"name":"{{name}}"}}}}]} diff --git a/integration/tests_ok/post_multilines.html b/integration/tests_ok/post_multilines.html index 48ddd7dd7..fd646e2ee 100644 --- a/integration/tests_ok/post_multilines.html +++ b/integration/tests_ok/post_multilines.html @@ -21,4 +21,4 @@ bill,22 ``` HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/post_multilines.json b/integration/tests_ok/post_multilines.json index 527b79302..250e5d943 100644 --- a/integration/tests_ok/post_multilines.json +++ b/integration/tests_ok/post_multilines.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-multilines","body":{"type":"raw-string","value":"name,age\nbob,10\nbill,22\n"}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/get-bob-age"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"bob_age","query":{"type":"body"}}]}},{"request":{"method":"POST","url":"http://localhost:8000/post-multilines","body":{"type":"raw-string","value":"name,age\nbob,{{bob_age}}\nbill,22\n"}},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-multilines","body":{"type":"raw-string","value":"name,age\nbob,10\nbill,22\n"}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/get-bob-age"},"response":{"version":"HTTP/1.0","status":200,"captures":[{"name":"bob_age","query":{"type":"body"}}]}},{"request":{"method":"POST","url":"http://localhost:8000/post-multilines","body":{"type":"raw-string","value":"name,age\nbob,{{bob_age}}\nbill,22\n"}},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/post_xml.html b/integration/tests_ok/post_xml.html index 5af7cfc0d..e357933be 100644 --- a/integration/tests_ok/post_xml.html +++ b/integration/tests_ok/post_xml.html @@ -12,4 +12,4 @@ <drink>café</drink> HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/post_xml.json b/integration/tests_ok/post_xml.json index e485eae69..b637e95d4 100644 --- a/integration/tests_ok/post_xml.json +++ b/integration/tests_ok/post_xml.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-xml","body":{"type":"xml","value":"\ncafé"}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-xml-no-prolog","body":{"type":"xml","value":"café"}},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/post-xml","body":{"type":"xml","value":"\ncafé"}},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"POST","url":"http://localhost:8000/post-xml-no-prolog","body":{"type":"xml","value":"café"}},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/predicates-string.html b/integration/tests_ok/predicates-string.html index 2bd60c63e..58901064d 100644 --- a/integration/tests_ok/predicates-string.html +++ b/integration/tests_ok/predicates-string.html @@ -21,4 +21,4 @@ [Asserts] body == "\u{2708}" bytes count == 3 - \ No newline at end of file + diff --git a/integration/tests_ok/predicates-string.json b/integration/tests_ok/predicates-string.json index 980ceecad..a1ae14883 100644 --- a/integration/tests_ok/predicates-string.json +++ b/integration/tests_ok/predicates-string.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/predicates-string"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"Hello World!"}},{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"body"},"predicate":{"type":"end-with","value":"!"}},{"query":{"type":"body"},"predicate":{"type":"contain","value":"llo"}},{"query":{"type":"body"},"predicate":{"type":"match","value":"Hello [a-zA-Z]+!"}},{"query":{"type":"body"},"predicate":{"type":"match","value":"Hello [a-zA-Z]+!","encoding":"regex"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/predicates-string-empty"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":""}},{"query":{"type":"body"},"predicate":{"type":"exist"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/predicates-string-unicode"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"✈"}},{"query":{"type":"bytes","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/predicates-string"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"Hello World!"}},{"query":{"type":"body"},"predicate":{"type":"start-with","value":"Hello"}},{"query":{"type":"body"},"predicate":{"type":"end-with","value":"!"}},{"query":{"type":"body"},"predicate":{"type":"contain","value":"llo"}},{"query":{"type":"body"},"predicate":{"type":"match","value":"Hello [a-zA-Z]+!"}},{"query":{"type":"body"},"predicate":{"type":"match","value":"Hello [a-zA-Z]+!","encoding":"regex"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/predicates-string-empty"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":""}},{"query":{"type":"body"},"predicate":{"type":"exist"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/predicates-string-unicode"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"body"},"predicate":{"type":"equal","value":"✈"}},{"query":{"type":"bytes","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}}]}}]} diff --git a/integration/tests_ok/proxy.html b/integration/tests_ok/proxy.html index 9f198232e..70b3b51e8 100644 --- a/integration/tests_ok/proxy.html +++ b/integration/tests_ok/proxy.html @@ -7,4 +7,4 @@ From-Proxy: Hello - \ No newline at end of file + diff --git a/integration/tests_ok/proxy.json b/integration/tests_ok/proxy.json index 0ab25a2ed..9abace364 100644 --- a/integration/tests_ok/proxy.json +++ b/integration/tests_ok/proxy.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/proxy"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"From-Proxy","value":"Hello"}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/proxy"},"response":{"version":"HTTP/1.0","status":200,"headers":[{"name":"From-Proxy","value":"Hello"}]}}]} diff --git a/integration/tests_ok/put.html b/integration/tests_ok/put.html index a173f350c..a5d5c9561 100644 --- a/integration/tests_ok/put.html +++ b/integration/tests_ok/put.html @@ -1,4 +1,4 @@
PUT http://localhost:8000/put
 HTTP/1.0 200
 
-
\ No newline at end of file + diff --git a/integration/tests_ok/put.json b/integration/tests_ok/put.json index 7731b1309..0214b45c7 100644 --- a/integration/tests_ok/put.json +++ b/integration/tests_ok/put.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"PUT","url":"http://localhost:8000/put"},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"PUT","url":"http://localhost:8000/put"},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/querystring_params.html b/integration/tests_ok/querystring_params.html index 7f2d5a355..11836fc82 100644 --- a/integration/tests_ok/querystring_params.html +++ b/integration/tests_ok/querystring_params.html @@ -27,4 +27,4 @@ [QueryStringParams] value3:/ HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/querystring_params.json b/integration/tests_ok/querystring_params.json index bfd359d51..a91b9e0df 100644 --- a/integration/tests_ok/querystring_params.json +++ b/integration/tests_ok/querystring_params.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/querystring-params","query_string_params":[{"name":"param1","value":"value1"},{"name":"param2","value":""},{"name":"param3","value":"a=b"},{"name":"param4","value":"1,2,3"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/querystring-params?param1=value1¶m2=¶m3=a%3db¶m4=1,2,3"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/querystring-params?param1=value1","query_string_params":[{"name":"param2","value":""},{"name":"param3","value":"a=b"},{"name":"param4","value":"1,2,3"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/querystring-params-encoded?value1=/&value2=%2F","query_string_params":[{"name":"value3","value":"/"}]},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/querystring-params","query_string_params":[{"name":"param1","value":"value1"},{"name":"param2","value":""},{"name":"param3","value":"a=b"},{"name":"param4","value":"1,2,3"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/querystring-params?param1=value1¶m2=¶m3=a%3db¶m4=1,2,3"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/querystring-params?param1=value1","query_string_params":[{"name":"param2","value":""},{"name":"param3","value":"a=b"},{"name":"param4","value":"1,2,3"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/querystring-params-encoded?value1=/&value2=%2F","query_string_params":[{"name":"value3","value":"/"}]},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/redirect.html b/integration/tests_ok/redirect.html index 269c98c5e..d48f444c3 100644 --- a/integration/tests_ok/redirect.html +++ b/integration/tests_ok/redirect.html @@ -39,4 +39,4 @@ [Asserts] url == "http://localhost:8000/redirected" ```Redirected``` - \ No newline at end of file + diff --git a/integration/tests_ok/redirect.json b/integration/tests_ok/redirect.json index 0c4112482..a565d6fac 100644 --- a/integration/tests_ok/redirect.json +++ b/integration/tests_ok/redirect.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/redirected"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"url"},"predicate":{"type":"equal","value":"http://localhost:8000/redirected"}}],"body":{"type":"raw-string","value":"Redirected"}}},{"request":{"method":"GET","url":"http://localhost:8000/redirect-absolute"},"response":{"version":"HTTP/1.0","status":302,"headers":[{"name":"Location","value":"http://localhost:8000/redirected"}],"asserts":[{"query":{"type":"url"},"predicate":{"type":"equal","value":"http://localhost:8000/redirect-absolute"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/redirect-absolute"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"url"},"predicate":{"type":"equal","value":"http://localhost:8000/redirected"}}],"body":{"type":"raw-string","value":"Redirected"}}},{"request":{"method":"GET","url":"http://localhost:8000/redirect-relative"},"response":{"version":"HTTP/1.0","status":302,"headers":[{"name":"Location","value":"/redirected"}],"asserts":[{"query":{"type":"url"},"predicate":{"type":"equal","value":"http://localhost:8000/redirect-relative"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/redirect-relative"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"url"},"predicate":{"type":"equal","value":"http://localhost:8000/redirected"}}],"body":{"type":"raw-string","value":"Redirected"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/redirected"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"url"},"predicate":{"type":"equal","value":"http://localhost:8000/redirected"}}],"body":{"type":"raw-string","value":"Redirected"}}},{"request":{"method":"GET","url":"http://localhost:8000/redirect-absolute"},"response":{"version":"HTTP/1.0","status":302,"headers":[{"name":"Location","value":"http://localhost:8000/redirected"}],"asserts":[{"query":{"type":"url"},"predicate":{"type":"equal","value":"http://localhost:8000/redirect-absolute"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/redirect-absolute"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"url"},"predicate":{"type":"equal","value":"http://localhost:8000/redirected"}}],"body":{"type":"raw-string","value":"Redirected"}}},{"request":{"method":"GET","url":"http://localhost:8000/redirect-relative"},"response":{"version":"HTTP/1.0","status":302,"headers":[{"name":"Location","value":"/redirected"}],"asserts":[{"query":{"type":"url"},"predicate":{"type":"equal","value":"http://localhost:8000/redirect-relative"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/redirect-relative"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"url"},"predicate":{"type":"equal","value":"http://localhost:8000/redirected"}}],"body":{"type":"raw-string","value":"Redirected"}}}]} diff --git a/integration/tests_ok/retry.html b/integration/tests_ok/retry.html index 132d9bd07..49144eecd 100644 --- a/integration/tests_ok/retry.html +++ b/integration/tests_ok/retry.html @@ -22,4 +22,4 @@ GET http://localhost:8000/jobs/{{job_id}} HTTP/* 404 - \ No newline at end of file + diff --git a/integration/tests_ok/retry.json b/integration/tests_ok/retry.json index 182e718ea..a11516674 100644 --- a/integration/tests_ok/retry.json +++ b/integration/tests_ok/retry.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/jobs"},"response":{"status":201,"captures":[{"name":"job_id","query":{"type":"jsonpath","expr":"$.id"}}],"asserts":[{"query":{"type":"jsonpath","expr":"$.state"},"predicate":{"type":"equal","value":"RUNNING"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.state"},"predicate":{"type":"equal","value":"COMPLETED"}}]}},{"request":{"method":"DELETE","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":200}},{"request":{"method":"GET","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":404}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/jobs"},"response":{"status":201,"captures":[{"name":"job_id","query":{"type":"jsonpath","expr":"$.id"}}],"asserts":[{"query":{"type":"jsonpath","expr":"$.state"},"predicate":{"type":"equal","value":"RUNNING"}}]}},{"request":{"method":"GET","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.state"},"predicate":{"type":"equal","value":"COMPLETED"}}]}},{"request":{"method":"DELETE","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":200}},{"request":{"method":"GET","url":"http://localhost:8000/jobs/{{job_id}}"},"response":{"status":404}}]} diff --git a/integration/tests_ok/subquery_count.html b/integration/tests_ok/subquery_count.html index 267666a2b..b71a30e9e 100644 --- a/integration/tests_ok/subquery_count.html +++ b/integration/tests_ok/subquery_count.html @@ -5,4 +5,4 @@ jsonpath "$.users" count > 1 jsonpath "$.users" count <= 10 - \ No newline at end of file + diff --git a/integration/tests_ok/subquery_count.json b/integration/tests_ok/subquery_count.json index c51c18cc3..9e804831f 100644 --- a/integration/tests_ok/subquery_count.json +++ b/integration/tests_ok/subquery_count.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/subquery-count"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.users","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"jsonpath","expr":"$.users","subquery":{"type":"count"}},"predicate":{"type":"greater","value":1}},{"query":{"type":"jsonpath","expr":"$.users","subquery":{"type":"count"}},"predicate":{"type":"less-or-equal","value":10}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/subquery-count"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"jsonpath","expr":"$.users","subquery":{"type":"count"}},"predicate":{"type":"equal","value":3}},{"query":{"type":"jsonpath","expr":"$.users","subquery":{"type":"count"}},"predicate":{"type":"greater","value":1}},{"query":{"type":"jsonpath","expr":"$.users","subquery":{"type":"count"}},"predicate":{"type":"less-or-equal","value":10}}]}}]} diff --git a/integration/tests_ok/test.1.html b/integration/tests_ok/test.1.html new file mode 100644 index 000000000..b4930b803 --- /dev/null +++ b/integration/tests_ok/test.1.html @@ -0,0 +1,3 @@ +
GET http://localhost:8000/hello
+HTTP/1.0 200
+```Hello World!```
diff --git a/integration/tests_ok/test.1.json b/integration/tests_ok/test.1.json new file mode 100644 index 000000000..1bdf365ae --- /dev/null +++ b/integration/tests_ok/test.1.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} diff --git a/integration/tests_ok/test.2.html b/integration/tests_ok/test.2.html new file mode 100644 index 000000000..b4930b803 --- /dev/null +++ b/integration/tests_ok/test.2.html @@ -0,0 +1,3 @@ +
GET http://localhost:8000/hello
+HTTP/1.0 200
+```Hello World!```
diff --git a/integration/tests_ok/test.2.json b/integration/tests_ok/test.2.json new file mode 100644 index 000000000..1bdf365ae --- /dev/null +++ b/integration/tests_ok/test.2.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} diff --git a/integration/tests_ok/test.3.html b/integration/tests_ok/test.3.html new file mode 100644 index 000000000..b4930b803 --- /dev/null +++ b/integration/tests_ok/test.3.html @@ -0,0 +1,3 @@ +
GET http://localhost:8000/hello
+HTTP/1.0 200
+```Hello World!```
diff --git a/integration/tests_ok/test.3.json b/integration/tests_ok/test.3.json new file mode 100644 index 000000000..1bdf365ae --- /dev/null +++ b/integration/tests_ok/test.3.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} diff --git a/integration/tests_ok/test.html b/integration/tests_ok/test.html index c6a01ee77..557611676 100644 --- a/integration/tests_ok/test.html +++ b/integration/tests_ok/test.html @@ -1,3 +1,4 @@
GET http://localhost:8000/hello
 HTTP/1.0 200
-```Hello World!```
\ No newline at end of file +```Hello World!``` + diff --git a/integration/tests_ok/test.hurl b/integration/tests_ok/test.hurl index 4ef7b19b1..e1fe08e15 100644 --- a/integration/tests_ok/test.hurl +++ b/integration/tests_ok/test.hurl @@ -1,3 +1,3 @@ GET http://localhost:8000/hello HTTP/1.0 200 -```Hello World!``` \ No newline at end of file +```Hello World!``` diff --git a/integration/tests_ok/test.json b/integration/tests_ok/test.json index 00d6aa9e4..1bdf365ae 100644 --- a/integration/tests_ok/test.json +++ b/integration/tests_ok/test.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/hello"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"Hello World!"}}}]} diff --git a/integration/tests_ok/to_entry.html b/integration/tests_ok/to_entry.html index d9003e1ff..0cc3bd4b2 100644 --- a/integration/tests_ok/to_entry.html +++ b/integration/tests_ok/to_entry.html @@ -17,4 +17,4 @@ GET http://localhost:8000/to-entry/5 HTTP/* 200 ```Reached entry 5``` - \ No newline at end of file + diff --git a/integration/tests_ok/to_entry.json b/integration/tests_ok/to_entry.json index 1948b0887..03f1a65f8 100644 --- a/integration/tests_ok/to_entry.json +++ b/integration/tests_ok/to_entry.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/to-entry/1"},"response":{"status":200,"body":{"type":"raw-string","value":"Reached entry 1"}}},{"request":{"method":"GET","url":"http://localhost:8000/to-entry/2"},"response":{"status":200,"body":{"type":"raw-string","value":"Reached entry 2"}}},{"request":{"method":"GET","url":"http://localhost:8000/to-entry/3"},"response":{"status":200,"body":{"type":"raw-string","value":"Reached entry 3"}}},{"request":{"method":"GET","url":"http://localhost:8000/to-entry/4"},"response":{"status":200,"body":{"type":"raw-string","value":"Reached entry 4"}}},{"request":{"method":"GET","url":"http://localhost:8000/to-entry/5"},"response":{"status":200,"body":{"type":"raw-string","value":"Reached entry 5"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/to-entry/1"},"response":{"status":200,"body":{"type":"raw-string","value":"Reached entry 1"}}},{"request":{"method":"GET","url":"http://localhost:8000/to-entry/2"},"response":{"status":200,"body":{"type":"raw-string","value":"Reached entry 2"}}},{"request":{"method":"GET","url":"http://localhost:8000/to-entry/3"},"response":{"status":200,"body":{"type":"raw-string","value":"Reached entry 3"}}},{"request":{"method":"GET","url":"http://localhost:8000/to-entry/4"},"response":{"status":200,"body":{"type":"raw-string","value":"Reached entry 4"}}},{"request":{"method":"GET","url":"http://localhost:8000/to-entry/5"},"response":{"status":200,"body":{"type":"raw-string","value":"Reached entry 5"}}}]} diff --git a/integration/tests_ok/url.html b/integration/tests_ok/url.html index cecca78e2..dd23029c0 100644 --- a/integration/tests_ok/url.html +++ b/integration/tests_ok/url.html @@ -11,4 +11,4 @@ HTTP/1.0 200 ```weird``` - \ No newline at end of file + diff --git a/integration/tests_ok/url.json b/integration/tests_ok/url.json index 584b9373b..77f27fef2 100644 --- a/integration/tests_ok/url.json +++ b/integration/tests_ok/url.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/~user"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"user"}}},{"request":{"method":"GET","url":"http://localhost:8000/%7Euser"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"user"}}},{"request":{"method":"GET","url":"http://localhost:8000/!$&()*+,;=:@[]"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"weird"}}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/~user"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"user"}}},{"request":{"method":"GET","url":"http://localhost:8000/%7Euser"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"user"}}},{"request":{"method":"GET","url":"http://localhost:8000/!$&()*+,;=:@[]"},"response":{"version":"HTTP/1.0","status":200,"body":{"type":"raw-string","value":"weird"}}}]} diff --git a/integration/tests_ok/user_agent.html b/integration/tests_ok/user_agent.html index abdd8d432..b2319bde6 100644 --- a/integration/tests_ok/user_agent.html +++ b/integration/tests_ok/user_agent.html @@ -8,4 +8,4 @@ GET http://localhost:8000/user-agent/a HTTP/1.0 200 - \ No newline at end of file + diff --git a/integration/tests_ok/user_agent.json b/integration/tests_ok/user_agent.json index 495a07852..d3c86c4c7 100644 --- a/integration/tests_ok/user_agent.json +++ b/integration/tests_ok/user_agent.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/user-agent/a"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/user-agent/b","headers":[{"name":"User-Agent","value":"Mozilla/5.0 B"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/user-agent/a"},"response":{"version":"HTTP/1.0","status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/user-agent/a"},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/user-agent/b","headers":[{"name":"User-Agent","value":"Mozilla/5.0 B"}]},"response":{"version":"HTTP/1.0","status":200}},{"request":{"method":"GET","url":"http://localhost:8000/user-agent/a"},"response":{"version":"HTTP/1.0","status":200}}]} diff --git a/integration/tests_ok/utf8.html b/integration/tests_ok/utf8.html index e1a3d634b..6137431fe 100644 --- a/integration/tests_ok/utf8.html +++ b/integration/tests_ok/utf8.html @@ -4,4 +4,4 @@ [Asserts] xpath "normalize-space(//data)" == "café" xpath "normalize-space(//data)" == "caf\u{e9}" - \ No newline at end of file + diff --git a/integration/tests_ok/utf8.json b/integration/tests_ok/utf8.json index a88a44b26..dcc3046ec 100644 --- a/integration/tests_ok/utf8.json +++ b/integration/tests_ok/utf8.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/utf8"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"normalize-space(//data)"},"predicate":{"type":"equal","value":"café"}},{"query":{"type":"xpath","expr":"normalize-space(//data)"},"predicate":{"type":"equal","value":"café"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/utf8"},"response":{"version":"HTTP/1.0","status":200,"asserts":[{"query":{"type":"xpath","expr":"normalize-space(//data)"},"predicate":{"type":"equal","value":"café"}},{"query":{"type":"xpath","expr":"normalize-space(//data)"},"predicate":{"type":"equal","value":"café"}}]}}]} diff --git a/integration/tests_ok/variables.html b/integration/tests_ok/variables.html index 0a621eec8..75a40c6f6 100644 --- a/integration/tests_ok/variables.html +++ b/integration/tests_ok/variables.html @@ -32,4 +32,5 @@ variable "height" == 1.70 variable "a_null" == null variable "my-id" == "123" -variable "country" == "Italy" \ No newline at end of file +variable "country" == "Italy" + diff --git a/integration/tests_ok/variables.hurl b/integration/tests_ok/variables.hurl index 9f130e419..554f2b51a 100644 --- a/integration/tests_ok/variables.hurl +++ b/integration/tests_ok/variables.hurl @@ -32,4 +32,4 @@ variable "age" == 30 variable "height" == 1.70 variable "a_null" == null variable "my-id" == "123" -variable "country" == "Italy" \ No newline at end of file +variable "country" == "Italy" diff --git a/integration/tests_ok/variables.json b/integration/tests_ok/variables.json index 5522c3bf3..7f4d828df 100644 --- a/integration/tests_ok/variables.json +++ b/integration/tests_ok/variables.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/variables","headers":[{"name":"Name","value":"{{name}}"},{"name":"Age","value":"{{age}}"},{"name":"Height","value":"{{height}}"},{"name":"Female","value":"{{female}}"},{"name":"Id","value":"{{my-id}}"},{"name":"A_Null","value":"{{a_null}}"},{"name":"Country","value":"{{country}}"}],"body":{"type":"json","value":{"name":"{{name}}","age":"{{age}}","height":"{{height}}","female":"{{female}}","id":"{{my-id}}","a_null":"{{a_null}}","country":"{{country}}"}}},"response":{"status":200,"asserts":[{"query":{"type":"variable","name":"name"},"predicate":{"type":"equal","value":"Jennifer"}},{"query":{"type":"variable","name":"female"},"predicate":{"type":"equal","value":true}},{"query":{"type":"variable","name":"age"},"predicate":{"type":"equal","value":30}},{"query":{"type":"variable","name":"height"},"predicate":{"type":"equal","value":1.70}},{"query":{"type":"variable","name":"a_null"},"predicate":{"type":"equal","value":null}},{"query":{"type":"variable","name":"my-id"},"predicate":{"type":"equal","value":"123"}},{"query":{"type":"variable","name":"country"},"predicate":{"type":"equal","value":"Italy"}}]}}]} \ No newline at end of file +{"entries":[{"request":{"method":"POST","url":"http://localhost:8000/variables","headers":[{"name":"Name","value":"{{name}}"},{"name":"Age","value":"{{age}}"},{"name":"Height","value":"{{height}}"},{"name":"Female","value":"{{female}}"},{"name":"Id","value":"{{my-id}}"},{"name":"A_Null","value":"{{a_null}}"},{"name":"Country","value":"{{country}}"}],"body":{"type":"json","value":{"name":"{{name}}","age":"{{age}}","height":"{{height}}","female":"{{female}}","id":"{{my-id}}","a_null":"{{a_null}}","country":"{{country}}"}}},"response":{"status":200,"asserts":[{"query":{"type":"variable","name":"name"},"predicate":{"type":"equal","value":"Jennifer"}},{"query":{"type":"variable","name":"female"},"predicate":{"type":"equal","value":true}},{"query":{"type":"variable","name":"age"},"predicate":{"type":"equal","value":30}},{"query":{"type":"variable","name":"height"},"predicate":{"type":"equal","value":1.70}},{"query":{"type":"variable","name":"a_null"},"predicate":{"type":"equal","value":null}},{"query":{"type":"variable","name":"my-id"},"predicate":{"type":"equal","value":"123"}},{"query":{"type":"variable","name":"country"},"predicate":{"type":"equal","value":"Italy"}}]}}]} diff --git a/integration/tests_ok/verbose.html b/integration/tests_ok/verbose.html new file mode 100644 index 000000000..dd2318cdf --- /dev/null +++ b/integration/tests_ok/verbose.html @@ -0,0 +1,3 @@ +
GET http://localhost:8000/verbose
+
+
diff --git a/integration/tests_ok/verbose.hurl b/integration/tests_ok/verbose.hurl index 3db2df5db..bbc9a9624 100644 --- a/integration/tests_ok/verbose.hurl +++ b/integration/tests_ok/verbose.hurl @@ -1 +1,2 @@ -GET http://localhost:8000/verbose \ No newline at end of file +GET http://localhost:8000/verbose + diff --git a/integration/tests_ok/verbose.json b/integration/tests_ok/verbose.json new file mode 100644 index 000000000..15bf3f2ab --- /dev/null +++ b/integration/tests_ok/verbose.json @@ -0,0 +1 @@ +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/verbose"}}]} diff --git a/integration/tests_ok/very_verbose.html b/integration/tests_ok/very_verbose.html index 363b0f2e5..663276716 100644 --- a/integration/tests_ok/very_verbose.html +++ b/integration/tests_ok/very_verbose.html @@ -23,4 +23,4 @@ GET http://localhost:8000/very-verbose/done x-foo: bar HTTP/* 200 - \ No newline at end of file + diff --git a/integration/tests_ok/very_verbose.json b/integration/tests_ok/very_verbose.json index 21fc15bc7..1bf645b57 100644 --- a/integration/tests_ok/very_verbose.json +++ b/integration/tests_ok/very_verbose.json @@ -1 +1 @@ -{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/very-verbose/redirect"},"response":{"status":200}},{"request":{"method":"GET","url":"http://localhost:8000/very-verbose/encoding/latin1"},"response":{"status":200}},{"request":{"method":"POST","url":"http://localhost:8000/very-verbose/compressed/brotli","headers":[{"name":"Accept-Encoding","value":"brotli"}],"body":{"type":"json","value":{"foo":"bar","baz":true}}},"response":{"status":200}},{"request":{"method":"GET","url":"http://localhost:8000/very-verbose/cat"},"response":{"status":200}},{"request":{"method":"POST","url":"http://localhost:8000/very-verbose/update-cat","multipart_form_data":[{"name":"cat","filename":"cat.jpg","content_type":"image/jpeg"}]},"response":{"status":200}},{"request":{"method":"GET","url":"http://localhost:8000/very-verbose/done","headers":[{"name":"x-foo","value":"bar"}]},"response":{"status":200}}]} \ No newline at end of file +{"entries":[{"request":{"method":"GET","url":"http://localhost:8000/very-verbose/redirect"},"response":{"status":200}},{"request":{"method":"GET","url":"http://localhost:8000/very-verbose/encoding/latin1"},"response":{"status":200}},{"request":{"method":"POST","url":"http://localhost:8000/very-verbose/compressed/brotli","headers":[{"name":"Accept-Encoding","value":"brotli"}],"body":{"type":"json","value":{"foo":"bar","baz":true}}},"response":{"status":200}},{"request":{"method":"GET","url":"http://localhost:8000/very-verbose/cat"},"response":{"status":200}},{"request":{"method":"POST","url":"http://localhost:8000/very-verbose/update-cat","multipart_form_data":[{"name":"cat","filename":"cat.jpg","content_type":"image/jpeg"}]},"response":{"status":200}},{"request":{"method":"GET","url":"http://localhost:8000/very-verbose/done","headers":[{"name":"x-foo","value":"bar"}]},"response":{"status":200}}]} diff --git a/packages/hurlfmt/src/main.rs b/packages/hurlfmt/src/main.rs index 0f4ca539c..3fd54fa71 100644 --- a/packages/hurlfmt/src/main.rs +++ b/packages/hurlfmt/src/main.rs @@ -238,6 +238,11 @@ fn main() { process::exit(1); } }; + let output = if output.ends_with('\n') { + output + } else { + format!("{}\n", output) + }; write_output(output.into_bytes(), output_file.as_deref()); } }