From 88c52865e3ef64dad036214c973a14eda967bdbc Mon Sep 17 00:00:00 2001 From: Thiago Romano Date: Mon, 9 May 2022 16:48:44 +0200 Subject: [PATCH] Added test case and documentation --- lib/tesla/adapter/hackney.ex | 4 ++++ test/tesla/adapter/hackney_test.exs | 12 ++++++++++++ 2 files changed, 16 insertions(+) diff --git a/lib/tesla/adapter/hackney.ex b/lib/tesla/adapter/hackney.ex index 1070fb50..e5965857 100644 --- a/lib/tesla/adapter/hackney.ex +++ b/lib/tesla/adapter/hackney.ex @@ -24,6 +24,10 @@ if Code.ensure_loaded?(:hackney) do adapter Tesla.Adapter.Hackney end ``` + + ## Adapter specific options + + - `:max_body` - Max response body size in bytes. Actual response may be bigger because hackney stops after the last chunk that surpasses `:max_body`. """ @behaviour Tesla.Adapter alias Tesla.Multipart diff --git a/test/tesla/adapter/hackney_test.exs b/test/tesla/adapter/hackney_test.exs index 3b6414bc..794a1c9d 100644 --- a/test/tesla/adapter/hackney_test.exs +++ b/test/tesla/adapter/hackney_test.exs @@ -36,6 +36,18 @@ defmodule Tesla.Adapter.HackneyTest do assert is_reference(response.body) == true end + test "get with `:max_body` option" do + request = %Env{ + method: :post, + url: "#{@http}/post", + body: String.duplicate("long response", 1000) + } + + assert {:ok, %Env{} = response} = call(request, with_body: true, max_body: 100) + assert response.status == 200 + assert byte_size(response.body) < 2000 + end + test "request timeout error" do request = %Env{ method: :get,