--- title: "Introduction to vcr" author: "Scott Chamberlain" date: "`r Sys.Date()`" output: html_document: toc: true toc_float: true theme: readable vignette: > %\VignetteIndexEntry{1. vcr introduction} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r echo=FALSE} knitr::opts_chunk$set( comment = "#>", collapse = TRUE, warning = FALSE, message = FALSE, eval = FALSE ) ``` vcr introduction ================ `vcr` is an R port of the Ruby gem [VCR](https://github.com/vcr/vcr) (i.e., a translation, there's no Ruby here :)) `vcr` helps you stub and record HTTP requests so you don't have to repeat HTTP requests. The main use case is for unit tests, but you can use it outside of the unit test use case. `vcr` works with the `crul`, `httr` and `httr2` HTTP request packages. Check out the [HTTP testing book](https://books.ropensci.org/http-testing/) for a lot more documentation on `vcr`, `webmockr`, and `crul`, and other packages. ## Elevator pitch ```{r child='../man/rmdhunks/elevator-pitch.Rmd', eval=TRUE} ``` ## Installation CRAN ```{r eval=FALSE} install.packages("vcr") ``` Development version ```{r eval=FALSE} remotes::install_github("ropensci/vcr") ``` ```{r} library("vcr") ``` ## Getting Started ```{r child='../man/rmdhunks/setup.Rmd', eval=TRUE} ``` ## Basic usage ```{r child='../man/rmdhunks/basic-usage.Rmd', eval=TRUE} ``` ## Terminology ```{r child='../man/rmdhunks/glossary.Rmd', eval=TRUE} ``` ## Workflows ```{r child='../man/rmdhunks/workflows.Rmd', eval=TRUE} ``` ## Configuration ```{r child='../man/rmdhunks/configuration.Rmd', eval=TRUE} ``` ## Matching/Matchers ```{r child='../man/rmdhunks/matching.Rmd', eval=TRUE} ``` ## Note about missing features ```{r child='../man/rmdhunks/missing-features.Rmd', eval=TRUE} ```