Mocking allows you to selectively and temporarily replace the response you would typically receive from a request with your own code. It's primarily used for testing.
Arguments
- mock
A single argument function called with a request object. It should return either
NULL
(if it doesn't want to handle the request) or a response (if it does).- code
Code to execute in the temporary environment.
- env
Environment to use for scoping changes.
Examples
# This function should perform a response against google.com:
google <- function() {
request("http://google.com") %>%
req_perform()
}
# But I can use a mock to instead return my own made up response:
my_mock <- function(req) {
response(status_code = 403)
}
with_mock(my_mock, google())
#> <httr2_response>
#> GET https://example.com
#> Status: 403 Forbidden
#> Body: Empty