Improve param parsing and remove url_params from HTTP::Request

This commit is contained in:
Serdar Dogruyol 2018-06-30 16:49:04 +03:00
parent ad5dc053c4
commit d2ef57a128
8 changed files with 41 additions and 55 deletions

View file

@ -28,8 +28,8 @@ describe "ParamParser" do
end
request = HTTP::Request.new("POST", "/hello/cemal")
# Radix tree MUST be run to parse url params.
create_request_and_return_io(kemal, request)
url_params = Kemal::ParamParser.new(request).url
context = create_request_and_return_io_and_context(kemal, request)[1]
url_params = Kemal::ParamParser.new(request, context.route_lookup.params).url
url_params["hasan"].should eq "cemal"
end
@ -43,8 +43,8 @@ describe "ParamParser" do
end
request = HTTP::Request.new("POST", "/hello/sam%2Bspec%40gmail.com/%2419.99/a%C3%B1o")
# Radix tree MUST be run to parse url params.
create_request_and_return_io(kemal, request)
url_params = Kemal::ParamParser.new(request).url
context = create_request_and_return_io_and_context(kemal, request)[1]
url_params = Kemal::ParamParser.new(request, context.route_lookup.params).url
url_params["email"].should eq "sam+spec@gmail.com"
url_params["money"].should eq "$19.99"
url_params["spanish"].should eq "año"