diff options
author | Loïc Hoguin <[email protected]> | 2012-04-29 01:20:24 +0200 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2012-04-29 15:22:20 +0200 |
commit | ee8c50c5ab97dcaebc8932d093741fdb496e00f7 (patch) | |
tree | 8e2b4e48361681cad25042ba85a22187ec452154 /src/cowboy_http.erl | |
parent | 845d306df68f37bb5246b0ce21b2a70456f042c4 (diff) | |
download | cowboy-ee8c50c5ab97dcaebc8932d093741fdb496e00f7.tar.gz cowboy-ee8c50c5ab97dcaebc8932d093741fdb496e00f7.tar.bz2 cowboy-ee8c50c5ab97dcaebc8932d093741fdb496e00f7.zip |
Fix and rework the HTTP test suite
Use a proper HTTP client to run all tests. This client is currently
undocumented and should not be used.
Includes a few fixes:
* Fix a bug in the max_keepalive test
* Fix a bug with max_keepalive handling
* Fix a bug in stream_body/1 where data was lost under some conditions
The tests now run quite faster than before.
All the tests now run twice: once for TCP, once for SSL.
Diffstat (limited to 'src/cowboy_http.erl')
-rw-r--r-- | src/cowboy_http.erl | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/cowboy_http.erl b/src/cowboy_http.erl index 2f4f982..0289ef3 100644 --- a/src/cowboy_http.erl +++ b/src/cowboy_http.erl @@ -26,7 +26,8 @@ -export([te_chunked/2, te_identity/2, ce_identity/1]). %% Interpretation. --export([connection_to_atom/1, urldecode/1, urldecode/2, urlencode/1, +-export([connection_to_atom/1, version_to_binary/1, + urldecode/1, urldecode/2, urlencode/1, urlencode/2, x_www_form_urlencoded/2]). -type method() :: 'OPTIONS' | 'GET' | 'HEAD' @@ -773,6 +774,11 @@ connection_to_atom([<<"close">>|_Tail]) -> connection_to_atom([_Any|Tail]) -> connection_to_atom(Tail). +%% @doc Convert an HTTP version tuple to its binary form. +-spec version_to_binary(version()) -> binary(). +version_to_binary({1, 1}) -> <<"HTTP/1.1">>; +version_to_binary({1, 0}) -> <<"HTTP/1.0">>. + %% @doc Decode a URL encoded binary. %% @equiv urldecode(Bin, crash) -spec urldecode(binary()) -> binary(). |