From 39ef7450721d72504490f47c2965e8128e53dffd Mon Sep 17 00:00:00 2001 From: Bartosz Blimke Date: Mon, 5 Feb 2024 20:55:28 +0100 Subject: [PATCH] The default stubbed response body, which is an empty String, is utf-8 encoded. --- lib/webmock/response.rb | 2 +- spec/unit/response_spec.rb | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/webmock/response.rb b/lib/webmock/response.rb index 5456f5a7..15a8724b 100644 --- a/lib/webmock/response.rb +++ b/lib/webmock/response.rb @@ -38,7 +38,7 @@ def headers=(headers) end def body - @body || String.new + @body || String.new("") end def body=(body) diff --git a/spec/unit/response_spec.rb b/spec/unit/response_spec.rb index 5707000e..9cdc5358 100644 --- a/spec/unit/response_spec.rb +++ b/spec/unit/response_spec.rb @@ -105,6 +105,10 @@ expect(@response.body).to_not be_frozen end + it "shoud return utf-8 encoded string by default" do + expect(@response.body.encoding).to eq(Encoding::UTF_8) + end + it "should report body if assigned" do @response = WebMock::Response.new(body: "abc") expect(@response.body).to eq("abc")