aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngela Anderton Andin <[email protected]>2013-03-18 10:22:03 +0100
committerIngela Anderton Andin <[email protected]>2014-02-05 10:32:22 +0100
commit808502d8122a7e5c136f2e0079db68af5690e959 (patch)
tree10302d250972e6208ace763663b5721ce32223d1
parent68cecbfa6a9d79b9137c2cf797b0499c9daed27b (diff)
downloadotp-808502d8122a7e5c136f2e0079db68af5690e959.tar.gz
otp-808502d8122a7e5c136f2e0079db68af5690e959.tar.bz2
otp-808502d8122a7e5c136f2e0079db68af5690e959.zip
inets httpc: Revert incorrect commit regarding cookie handling.
-rw-r--r--lib/inets/src/http_client/httpc_handler.erl2
-rw-r--r--lib/inets/test/httpc_SUITE.erl29
2 files changed, 30 insertions, 1 deletions
diff --git a/lib/inets/src/http_client/httpc_handler.erl b/lib/inets/src/http_client/httpc_handler.erl
index 54db6a5c81..6b8f33f9b8 100644
--- a/lib/inets/src/http_client/httpc_handler.erl
+++ b/lib/inets/src/http_client/httpc_handler.erl
@@ -1142,7 +1142,7 @@ handle_response(#state{request = Request,
{session, Session},
{status_line, StatusLine}]),
- handle_cookies(Headers, Request, Options, httpc_manager), %% FOO profile_name
+ handle_cookies(Headers, Request, Options, ProfileName),
case httpc_response:result({StatusLine, Headers, Body}, Request) of
%% 100-continue
continue ->
diff --git a/lib/inets/test/httpc_SUITE.erl b/lib/inets/test/httpc_SUITE.erl
index 15792a1b36..bf993c2705 100644
--- a/lib/inets/test/httpc_SUITE.erl
+++ b/lib/inets/test/httpc_SUITE.erl
@@ -90,6 +90,7 @@ real_requests()->
only_simulated() ->
[
cookie,
+ cookie_profile,
trace,
stream_once,
no_content_204,
@@ -489,9 +490,37 @@ cookie(Config) when is_list(Config) ->
{ok, {{_,200,_}, [_ | _], [_|_]}}
= httpc:request(get, Request1, [], []),
+ [{session_cookies, [_|_]}] = httpc:which_cookies(httpc:default_profile()),
+
ets:delete(cookie),
ok = httpc:set_options([{cookies, disabled}]).
+
+
+%%-------------------------------------------------------------------------
+cookie_profile() ->
+ [{doc, "Test cookies on a non default profile."}].
+cookie_profile(Config) when is_list(Config) ->
+ inets:start(httpc, [{profile, cookie_test}]),
+ ok = httpc:set_options([{cookies, enabled}], cookie_test),
+
+ Request0 = {url(group_name(Config), "/cookie.html", Config), []},
+
+ {ok, {{_,200,_}, [_ | _], [_|_]}}
+ = httpc:request(get, Request0, [], [], cookie_test),
+
+ %% Populate table to be used by the "dummy" server
+ ets:new(cookie, [named_table, public, set]),
+ ets:insert(cookie, {cookies, true}),
+
+ Request1 = {url(group_name(Config), "/", Config), []},
+
+ {ok, {{_,200,_}, [_ | _], [_|_]}}
+ = httpc:request(get, Request1, [], [], cookie_test),
+
+ ets:delete(cookie),
+ inets:stop(httpc, cookie_test).
+
%%-------------------------------------------------------------------------
headers_as_is(doc) ->
["Test the option headers_as_is"];