[addresses #2648] add Resource URL to HTTP response object in case of an error (#3427)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This commit is contained in:
saleh-amazon
2025-07-16 07:08:21 -07:00
committed by GitHub
parent 635c3727bb
commit d350dc39e0
2 changed files with 21 additions and 13 deletions

View File

@@ -62,10 +62,13 @@ TEST(HTTPFileSource, TEST_REQUIRES_SERVER(HTTP404)) {
util::RunLoop loop;
HTTPFileSource fs(ResourceOptions::Default(), ClientOptions());
auto req = fs.request({Resource::Unknown, "http://127.0.0.1:3000/doesnotexist"}, [&](Response res) {
std::string stringResourceURL = "http://127.0.0.1:3000/doesnotexist";
std::string resourceURLInterpolation = " - Resource URL: " + stringResourceURL;
auto req = fs.request({Resource::Unknown, stringResourceURL}, [&](Response res) {
ASSERT_NE(nullptr, res.error);
EXPECT_EQ(Response::Error::Reason::NotFound, res.error->reason);
EXPECT_EQ("HTTP status code 404", res.error->message);
EXPECT_EQ("HTTP status code 404" + resourceURLInterpolation, res.error->message + resourceURLInterpolation);
EXPECT_FALSE(bool(res.data));
EXPECT_FALSE(bool(res.expires));
EXPECT_FALSE(res.mustRevalidate);
@@ -135,10 +138,13 @@ TEST(HTTPFileSource, TEST_REQUIRES_SERVER(HTTP500)) {
util::RunLoop loop;
HTTPFileSource fs(ResourceOptions::Default(), ClientOptions());
auto req = fs.request({Resource::Unknown, "http://127.0.0.1:3000/permanent-error"}, [&](Response res) {
std::string stringResourceURL = "http://127.0.0.1:3000/permanent-error";
std::string resourceURLInterpolation = " - Resource URL: " + stringResourceURL;
auto req = fs.request({Resource::Unknown, stringResourceURL}, [&](Response res) {
ASSERT_NE(nullptr, res.error);
EXPECT_EQ(Response::Error::Reason::Server, res.error->reason);
EXPECT_EQ("HTTP status code 500", res.error->message);
EXPECT_EQ("HTTP status code 500" + resourceURLInterpolation, res.error->message + resourceURLInterpolation);
EXPECT_FALSE(bool(res.data));
EXPECT_FALSE(bool(res.expires));
EXPECT_FALSE(res.mustRevalidate);