From 24eea892bdc49d851d5f9a3f744fe32b1a91faa8 Mon Sep 17 00:00:00 2001 From: HoneyryderChuck Date: Fri, 8 Dec 2017 20:24:51 +0000 Subject: [PATCH] added way more httpbin tests, all possible verbs, all possible types of bodies (file,form,json,etc...) --- test/http1_spec.rb | 80 ++++++++++++++++++++++++++++++++ test/support/fixtures/image.jpg | Bin 0 -> 46240 bytes 2 files changed, 80 insertions(+) create mode 100644 test/support/fixtures/image.jpg diff --git a/test/http1_spec.rb b/test/http1_spec.rb index 9fcac3fa..a3ae89db 100644 --- a/test/http1_spec.rb +++ b/test/http1_spec.rb @@ -18,8 +18,76 @@ class HTTP1Test < Minitest::Spec assert response.body.to_s.bytesize == response.headers["content-length"].to_i, "didn't load the whole body" end + %w[post put patch delete].each do |meth| + define_method :"test_#{meth}_form_params" do + uri = build_uri("/#{meth}") + response = HTTPX.send(meth, uri, form: {"foo" => "bar"}) + assert response.status == 200, "status is unexpected" + body = json_body(response) + assert body["headers"]["Content-Type"] == "application/x-www-form-urlencoded" + assert body.key?("form") + assert body["form"].key?("foo") + assert body["form"]["foo"] == "bar" + end + + define_method :"test_#{meth}_form_file_params" do + uri = build_uri("/#{meth}") + response = HTTPX.send(meth, uri, form: {image: HTTP::FormData::File.new(fixture_file_path)}) + assert response.status == 200, "status is unexpected" + body = json_body(response) + assert body["headers"]["Content-Type"].start_with?("multipart/form-data") + assert body.key?("files") + assert body["files"].key?("image") + end + + define_method :"test_#{meth}_json_params" do + uri = build_uri("/#{meth}") + response = HTTPX.send(meth, uri, json: {"foo" => "bar"}) + assert response.status == 200, "status is unexpected" + body = json_body(response) + assert body["headers"]["Content-Type"].start_with?("application/json") + assert body.key?("json") + assert body["json"].key?("foo") + assert body["json"]["foo"] == "bar" + end + + define_method :"test_#{meth}_body_params" do + uri = build_uri("/#{meth}") + response = HTTPX.send(meth, uri, body: "data") + assert response.status == 200, "status is unexpected" + body = json_body(response) + assert body["headers"]["Content-Type"] == "application/octet-stream" + assert body.key?("data") + assert body["data"] == "data" + end + end + + def test_http_headers + uri = build_uri("/headers") + response = HTTPX.get(uri) + body = json_body(response) + assert body.key?("headers"), "no headers" + assert body["headers"]["accept"] == "*/*", "unexpected accept" + + response = HTTPX.headers("accept" => "text/css").get(uri) + body = json_body(response) + assert body["headers"]["accept"] == "text/css", "accept should have been set at the client" + end + + def test_http_user_agent + uri = build_uri("/user-agent") + response = HTTPX.get(uri) + body = json_body(response) + assert body.key?("user-agent"), "user agent wasn't there" + assert body["user-agent"] == "httpx.rb/#{HTTPX::VERSION}", "user agent is unexpected" + end + private + def json_body(response) + JSON.parse(response.body.to_s) + end + def build_uri(suffix="/") "#{origin}#{suffix || "/"}" end @@ -27,4 +95,16 @@ class HTTP1Test < Minitest::Spec def origin "http://nghttp2.org/httpbin" end + + def fixture + File.read(fixture_file_path, encoding: Encoding::BINARY) + end + + def fixture_name + File.basename(fixture_file_path) + end + + def fixture_file_path + File.join("test", "support", "fixtures", "image.jpg") + end end diff --git a/test/support/fixtures/image.jpg b/test/support/fixtures/image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..451062aa3833de360ce9a40b319c5a5b3ff0e319 GIT binary patch literal 46240 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

q-(BW)UuTc8NcEqu}sh^ASi$G`6UI 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 z�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 PZ>~Pa*a&aQ5#;~b-=79v literal 0 HcmV?d00001