Cassette: Cassette handler

CassetteR Documentation

Cassette handler

Description

Main R6 class that is called from the main user facing function use_cassette()

Value

An R6 Cassette pbject.

Public fields

name

(character) cassette name

record

(character) record mode

serialize_with

(character) serializer (yaml|json|qs2)

serializer

(Serializer) serializer (YAML|JSON|QS2)

match_requests_on

(character) matchers to use

re_record_interval

(numeric) the re-record interval

root_dir

root dir, gathered from vcr_configuration()

preserve_exact_body_bytes

(logical) Whether to base64 encode the bytes of the requests and responses

http_interactions

(list) internal use

new_interactions

(boolean) Have any interactions been recorded?

warn_on_empty

(logical) warn if no interactions recorded

new_cassette

is this a new cassette?

Methods

Public methods


Method new()

Create a new Cassette object

Usage
Cassette$new(
  name,
  dir = NULL,
  record = NULL,
  match_requests_on = NULL,
  serialize_with = NULL,
  preserve_exact_body_bytes = NULL,
  re_record_interval = NULL,
  warn_on_empty = NULL
)
Arguments
name

The name of the cassette. vcr will sanitize this to ensure it is a valid file name.

dir

The directory where the cassette will be stored.

record

The record mode. Default: "once".

match_requests_on

HTTP request components to use when matching.

serialize_with

(character) Which serializer to use. Valid values are "yaml" (default), "json", and "qs2".

preserve_exact_body_bytes

(logical) Whether or not to base64 encode the bytes of the requests and responses for this cassette when serializing it. See also preserve_exact_body_bytes in vcr_configure(). Default: FALSE

re_record_interval

(numeric) When given, the cassette will be re-recorded at the given interval, in seconds.

warn_on_empty

Warn when ejecting the cassette if no interactions have been recorded.

Returns

A new Cassette object


Method insert()

insert the cassette

Usage
Cassette$insert()
Returns

self


Method eject()

ejects the cassette

Usage
Cassette$eject()
Returns

self


Method print()

print method for Cassette objects

Usage
Cassette$print(x, ...)
Arguments
x

self

...

ignored


Method file()

get the file path for the cassette

Usage
Cassette$file()
Returns

character


Method recording()

Is the cassette in recording mode?

Usage
Cassette$recording()
Returns

logical


Method replaying()

Is the cassette in replaying mode?

Usage
Cassette$replaying()
Returns

logical


Method remove_outdated_interactions()

Remove outdated interactions

Usage
Cassette$remove_outdated_interactions()

Method record_http_interaction()

record an http interaction (doesn't write to disk)

Usage
Cassette$record_http_interaction(request, response)
Arguments
request

A vcr_request.

response

A vcr_response.

Returns

an interaction as a list with request and response slots


Method clone()

The objects of this class are cloneable with this method.

Usage
Cassette$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.

See Also

vcr_configure(), use_cassette(), insert_cassette()


vcr documentation built on Aug. 8, 2025, 6:45 p.m.