Skip to content

Commit 8d6e356

Browse files
authored
Get method from curl_data (#737)
And add more tests
1 parent 2f20100 commit 8d6e356

File tree

3 files changed

+31
-2
lines changed

3 files changed

+31
-2
lines changed

R/resp.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ new_response <- function(
106106

107107
create_response <- function(req, curl_data, body) {
108108
the$last_response <- new_response(
109-
method = req_method_get(req),
109+
method = curl_data$method,
110110
url = curl_data$url,
111111
status_code = curl_data$status_code,
112112
headers = as_headers(curl_data$headers),

tests/testthat/test-req-perform-parallel.R

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,15 @@ test_that("can perform a single request", {
1212
resps <- req_perform_parallel(reqs)
1313
expect_type(resps, "list")
1414
expect_length(resps, 1)
15+
16+
resp <- resps[[1]]
17+
expect_s3_class(resp, "httr2_response")
18+
expect_equal(resp$method, "GET")
19+
expect_equal(resp$url, example_url("/get"))
20+
expect_equal(resp$status_code, 200)
21+
expect_s3_class(resp$headers, "httr2_headers")
22+
expect_type(resp$body, "raw")
23+
expect_equal(resp$request, reqs[[1]])
1524
})
1625

1726
test_that("requests happen in parallel", {

tests/testthat/test-req-perform.R

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,30 @@
1-
test_that("success request returns response", {
1+
test_that("successful request returns expected response", {
22
req <- request_test()
33
resp <- req_perform(req)
4+
45
expect_s3_class(resp, "httr2_response")
6+
expect_equal(resp$method, "GET")
7+
expect_equal(resp$url, example_url("/get"))
8+
expect_equal(resp$status_code, 200)
9+
expect_s3_class(resp$headers, "httr2_headers")
10+
expect_type(resp$body, "raw")
511
expect_equal(resp$request, req)
612
})
713

14+
test_that("request updates last_response()", {
15+
req200 <- request_test()
16+
req404 <- request_test("/404")
17+
18+
resp <- req_perform(req200)
19+
expect_equal(last_response(), resp)
20+
expect_equal(last_request(), req200)
21+
22+
# even if it errors
23+
try(req_perform(req404), silent = TRUE)
24+
expect_equal(last_response()$status_code, 404)
25+
expect_equal(last_request(), req404)
26+
})
27+
828
test_that("curl errors become errors", {
929
local_mocked_bindings(curl_fetch = function(...) abort("Failed to connect"))
1030

0 commit comments

Comments
 (0)