Running ‘testthat.R’ [352s/352s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > 
  > library(testthat)
  > library(renv)
  
  Attaching package: 'renv'
  
  The following object is masked from 'package:stats':
  
      update
  
  The following objects are masked from 'package:utils':
  
      history, upgrade
  
  The following objects are masked from 'package:base':
  
      load, remove
  
  > 
  > renv:::renv_tests_init()
  rlm is already registered in the fit.models registry
  covfm is already registered in the fit.models registry
  
  
       Package    LibPath                          Item      
  [1,] "affydata" "/data/gannet/ripley/R/test-4.1" "Dilution"
       Title                        
  [1,] "AffyBatch instance Dilution"
  
  shinytest requires a headless web browser (PhantomJS) to record and run tests.
  To install it, run shinytest::installDependencies()
  If it is installed, please make sure the phantomjs executable can be found via the PATH variable.
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Creating a generic function for 'toJSON' from package 'jsonlite' in package 'googleVis'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  
  Setting options('download.file.method.GEOquery'='auto')
  Setting options('GEOquery.inmemory.gpl'=FALSE)
  
  Welcome to BRugs connected to OpenBUGS version 3.2.3
  Found more than one class "family" in cache; using the first, from namespace 'MatrixModels'
  Also defined by 'lme4'
  Found more than one class "family" in cache; using the first, from namespace 'MatrixModels'
  Also defined by 'lme4'
  Found more than one class "family" in cache; using the first, from namespace 'MatrixModels'
  Also defined by 'lme4'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  
  KEGG.db contains mappings based on older data because the original
    resource was removed from the the public domain before the most
    recent update was produced. This package should now be considered
    deprecated and future versions of Bioconductor may not have it
    available.  Users who want more current data are encouraged to look
    at the KEGGREST or reactome.db packages
  
  
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomicVector" in cache; using the first, from namespace 'Matrix'
  Also defined by 'Rmpfr'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "atomic" in cache; using the first, from namespace 'S4Vectors'
  Also defined by 'memisc'
  Found more than one class "EnumerationValue" in cache; using the first, from namespace 'RCurl'
  Also defined by 'redland'
  Error in completeSubclasses(classDef2, class1, obj, where) : 
    trying to get slot "subclasses" from an object of a basic class ("NULL") with no slots
  Error in dyn.load(file, DLLpath = DLLpath, ...) : 
    unable to load shared object '/data/gannet/ripley/R/test-4.1/cairoDevice/libs/cairoDevice.so':
    `maximal number of DLLs reached...
  Error in dyn.load(file, DLLpath = DLLpath, ...) : 
    unable to load shared object '/data/gannet/ripley/R/test-4.1/RGtk2/libs/RGtk2.so':
    `maximal number of DLLs reached...
  
  
  > renv:::renv_tests_diagnostics()
  The following R libraries are set:
  
  	- /tmp/RtmphBF5wj/working_dir/RtmpiaBwSW/renv-library-38dc3e1a86695d
  	- /tmp/RtmphBF5wj/working_dir/RtmpiaBwSW/renv-system-library
  
  The following repositories are set:
  
  	CRAN: file:///tmp/RtmphBF5wj/working_dir/RtmpiaBwSW/renv-repos-38dc3e1a98eef6
  
  The following renv root directory is being used:
  
  	- /tmp/RtmphBF5wj/working_dir/RtmpiaBwSW/renv-root-38dc3e9f832c6
  
  The following renv cache directory is being used:
  
  	- /tmp/RtmphBF5wj/working_dir/RtmpiaBwSW/renv-root-38dc3e9f832c6/cache/v5/R-4.1-r79397/x86_64-pc-linux-gnu
  
  The following packages are available in the test repositories:
  
  	bread, breakfast, brunch, egg, halloween, oatmeal, packrat,
  	renv, toast, unixonly
  
  The following PATH is set:
  
  	- /data/gannet/ripley/bin
  	- /usr/local/bin
  	- /usr/local/texbin
  	- /usr/sbin
  	- .
  	- /data/gannet/ripley/bin
  	- /usr/local/texbin
  	- /usr/local/bin
  	- /usr/sbin
  	- /usr/lib64/qt-3.3/bin
  	- /usr/share/Modules/bin
  	- /usr/local/bin
  	- /usr/bin
  	- /usr/local/sbin
  	- /usr/sbin
  	- /usr/lib64/openmpi/bin
  	- /usr/lib64/openmpi/bin
  
  The following environment variables of interest are set:
  
  	HOME        : "/data/gannet/ripley"
  	R_ARCH      : ""
  	R_HOME      : "/data/gannet/ripley/R/R-devel"
  	R_LIBS      : "/data/gannet/ripley/R/packages/tests-devel/renv.Rcheck:/data/gannet/ripley/R/test-4.1"
  	R_LIBS_SITE : ""
  	R_LIBS_USER : "~/R/x86_64-pc-linux-gnu-library/4.1"
  	R_USER      : <NA>
  	R_ZIPCMD    : "/usr/bin/zip"
  	TAR         : "/usr/bin/gtar"
  	TEMP        : <NA>
  	TMP         : <NA>
  	TMPDIR      : "/tmp/RtmphBF5wj/working_dir"
  
  > 
  > reporter <- renv:::renv_tests_reporter()
  > test_check("renv", reporter = reporter)
  ── test-aaa.R ──────────────────────────────────────────────────────────────────
  
  ── test-actions.R ──────────────────────────────────────────────────────────────
  ● we can query actions for a sample project ..................... [PASS /  4.8s]
  ● we can query actions when no lockfile has yet been  <...> ..... [PASS / <0.1s]
  
  ── test-activate.R ─────────────────────────────────────────────────────────────
  ── Skip (test-activate.R:6:3): renv can bootstrap itself if not installed ──────
  Reason: On CRAN
  
  ● renv can bootstrap itself if not installed .................... [SKIP / <0.1s]
  
  ── test-archive.R ──────────────────────────────────────────────────────────────
  ● renv reports errors when decompressing invalid archives ....... [PASS / <0.1s]
  ● we can successfully compress / decompress some samp <...> ..... [PASS / <0.1s]
  
  ── test-authentication.R ───────────────────────────────────────────────────────
  ● renv.auth is respected in various contexts .................... [PASS / <0.1s]
  
  ── test-available-packages.R ───────────────────────────────────────────────────
  ── Skip (test-available-packages.R:5:3): renv_available_packages() errs on incor
  Reason: On CRAN
  
  ● renv_available_packages() errs on incorrect repository ........ [SKIP / <0.1s]
  ── Skip (test-available-packages.R:17:3): renv handles multiple available source
  Reason: On CRAN
  
  ● renv handles multiple available source packages ............... [SKIP / <0.1s]
  ── Skip (test-available-packages.R:41:3): renv_available_packages() succeeds wit
  Reason: On CRAN
  
  ● renv_available_packages() succeeds with unnamed rep <...> ..... [SKIP / <0.1s]
  ── Skip (test-available-packages.R:58:3): renv_available_packages_latest() respe
  Reason: On CRAN
  
  ● renv_available_packages_latest() respects pkgType option ...... [SKIP / <0.1s]
  
  ── test-base64.R ───────────────────────────────────────────────────────────────
  ● some sample strings can be base64-encoded ..................... [PASS / <0.1s]
  ● some random base64 strings can be round-tripped ............... [PASS / 0.41s]
  
  ── test-bioconductor.R ─────────────────────────────────────────────────────────
  ── Skip (test-bioconductor.R:6:3): packages can be installed, restored from Bioc
  Reason: On CRAN
  
  ● packages can be installed, restored from Bioconductor ......... [SKIP / <0.1s]
  
  ── test-bootstrap.R ────────────────────────────────────────────────────────────
  ● we can bootstrap the current version of renv .................. [PASS /  1.0s]
  ● we can bootstrap an archived version of renv .................. [PASS /  1.0s]
  ── Skip (test-bootstrap.R:27:3): we can install a version of renv from GitHub ──
  Reason: On CRAN
  
  ● we can install a version of renv from GitHub .................. [SKIP / <0.1s]
  
  ── test-cache.R ────────────────────────────────────────────────────────────────
  ── Skip (test-cache.R:5:3): issues within the cache are reported ───────────────
  Reason: On CRAN
  
  ● issues within the cache are reported .......................... [SKIP / <0.1s]
  ● use.cache project setting is honored .......................... [PASS /  0.2s]
  ● package installation does not fail with non-writabl <...> ..... [PASS /  1.3s]
  ● the cache is used even if RENV_PATHS_LIBRARY is non <...> ..... [PASS / 0.11s]
  ── Skip (test-cache.R:101:3): malformed folders in the cache are ignored ───────
  Reason: On CRAN
  
  ● malformed folders in the cache are ignored .................... [SKIP / <0.1s]
  
  ── test-clean.R ────────────────────────────────────────────────────────────────
  ● clean removes stale lockfiles ................................. [PASS / 0.22s]
  
  ── test-config.R ───────────────────────────────────────────────────────────────
  ● config variables read from appropriate scope .................. [PASS / <0.1s]
  ● invalid configuration options are reported .................... [PASS / <0.1s]
  ● values are coerced as appropriate ............................. [PASS / <0.1s]
  ● functions are returned as-is for '*' types .................... [PASS / <0.1s]
  ● we can query options without warnings ......................... [PASS / <0.1s]
  ● invalid configuration options trigger a warning ............... [PASS / <0.1s]
  ── Skip (test-config.R:74:1): we can query the default configuration values with
  Reason: empty test
  
  ● we can query the default configuration values witho <...> ..... [SKIP / <0.1s]
  
  ── test-consent.R ──────────────────────────────────────────────────────────────
  ● init fails if no consent has been provided .................... [PASS / <0.1s]
  
  ── test-defer.R ────────────────────────────────────────────────────────────────
  ● defer evaluates in appropriate environment .................... [PASS / <0.1s]
  ● defer captures arguments properly ............................. [PASS / <0.1s]
  ● defer works with arbitrary expressions ........................ [PASS / <0.1s]
  
  ── test-dependencies.R ─────────────────────────────────────────────────────────
  ● .Rproj files requesting devtools is handled ................... [PASS / <0.1s]
  ● usages of library, etc. are properly handled .................. [PASS / <0.1s]
  ● parse errors are okay in .Rmd documents ....................... [PASS /  1.4s]
  ● inline chunks are parsed for dependencies ..................... [PASS / <0.1s]
  ● usages of S4 tools are discovered ............................. [PASS / <0.1s]
  ● the package name is validated when inferring dependencies ..... [PASS / <0.1s]
  ● empty chunks don't cause issues during dependency r <...> ..... [PASS / <0.1s]
  ● pacman::p_load() usages are understood ........................ [PASS / <0.1s]
  ● import:: usages are understood ................................ [PASS / <0.1s]
  ● renv warns when large number of files found ................... [PASS / <0.1s]
  ● evil knitr chunks are handled ................................. [PASS / <0.1s]
  ● renv_dependencies_requires warns once ......................... [PASS / <0.1s]
  ● the presence of an rsconnect folder forces dependen <...> ..... [PASS / <0.1s]
  ● dependencies can accept multiple files ........................ [PASS / <0.1s]
  ● dependencies can infer the root directory ..................... [PASS / <0.1s]
  ● no warnings are produced when crawling dependencies ........... [PASS /  1.3s]
  ● Suggests are dev. deps for non-package projects ............... [PASS / <0.1s]
  ● Suggests are _not_ dev. deps for package projects ............. [PASS / <0.1s]
  ● packages referenced by modules::import() are discovered ....... [PASS / <0.1s]
  ● dependencies specified in R Markdown site generator <...> ..... [PASS / <0.1s]
  ── FAILURE (test-dependencies.R:199:3): Suggest dependencies are ignored by defa
  renv_package_installed("egg") is not FALSE
  
  `actual`:   TRUE 
  `expected`: FALSE
  
  ● Suggest dependencies are ignored by default ................... [FAIL / 0.15s]
  ● Suggest dependencies are used when requested .................. [PASS /  1.3s]
  ● a call to geom_hex() implies a dependency on ggplot2 .......... [PASS / <0.1s]
  ● empty fields are handled in DESCRIPTION ....................... [PASS / <0.1s]
  ── Skip (test-dependencies.R:226:1): recursive symlinks are handled ────────────
  Reason: empty test
  
  ● recursive symlinks are handled ................................ [SKIP / <0.1s]
  ● .renvignore can be used to ignore all but certain files ....... [PASS / <0.1s]
  ● exercise chunks are ignored ................................... [PASS / <0.1s]
  ● dependencies in R functions can be found ...................... [PASS / <0.1s]
  
  ── test-description.R ──────────────────────────────────────────────────────────
  ● snapshotting broken DESCRIPTION files is an error ............. [PASS / 0.18s]
  
  ── test-download.R ─────────────────────────────────────────────────────────────
  ── Skip (test-download.R:5:3): we avoid downloading files twice ────────────────
  Reason: On CRAN
  
  ● we avoid downloading files twice .............................. [SKIP / <0.1s]
  ● we can successfully tweak the user agent string ............... [PASS / <0.1s]
  ── Skip (test-download.R:53:3): we can successfully download files with differen
  Reason: On CRAN
  
  ● we can successfully download files with different d <...> ..... [SKIP / <0.1s]
  ── Skip (test-download.R:96:3): downloads still succeed even if HEAD request fai
  Reason: On CRAN
  
  ● downloads still succeed even if HEAD request fails ............ [SKIP / <0.1s]
  ● downloads work with file URIs ................................. [PASS / <0.1s]
  ── Skip (test-download.R:136:3): downloads work with UNC paths on Windows ──────
  Reason: On CRAN
  
  ● downloads work with UNC paths on Windows ...................... [SKIP / <0.1s]
  
  ── test-environment-variables.R ────────────────────────────────────────────────
  ● renv_envvars_save() is idempotent ............................. [PASS / <0.1s]
  
  ── test-errors.R ───────────────────────────────────────────────────────────────
  ● tracebacks are captured by catch .............................. [PASS / <0.1s]
  
  ── test-file-backed.R ──────────────────────────────────────────────────────────
  ● file-backed entries are discarded after the file is <...> ..... [PASS / <0.1s]
  ● file-backed entries are discarded after the file is <...> ..... [PASS / <0.1s]
  
  ── test-files.R ────────────────────────────────────────────────────────────────
  ● directories can be copied ..................................... [PASS / <0.1s]
  ● directories can be moved ...................................... [PASS / <0.1s]
  ● attempts to link files work ................................... [PASS / <0.1s]
  ● scoped backups are cleared as necessary ....................... [PASS / <0.1s]
  ● renv tempfiles are deleted at end of scope .................... [PASS / <0.1s]
  ● renv_file_find finds parent files ............................. [PASS / <0.1s]
  ● attempts to overwrite existing files are handled ap <...> ..... [PASS / <0.1s]
  ● permissions, timestamps are preserved ......................... [PASS / 0.12s]
  ● renv can list files not representable in the native <...> ..... [PASS / <0.1s]
  
  ── test-hash.R ─────────────────────────────────────────────────────────────────
  ● whitespace does not affect hash ............................... [PASS / <0.1s]
  
  ── test-hydrate.R ──────────────────────────────────────────────────────────────
  ● hydrate does not change library paths ......................... [PASS / <0.1s]
  
  ── test-id.R ───────────────────────────────────────────────────────────────────
  ── Skip (test-id.R:5:3): we can generate a unique ID ───────────────────────────
  Reason: On CRAN
  
  ● we can generate a unique ID ................................... [SKIP / <0.1s]
  
  ── test-infrastructure.R ───────────────────────────────────────────────────────
  ● renv.lock is added to .Rbuildignore ........................... [PASS / <0.1s]
  ● infrastructure can be removed ................................. [PASS / 0.13s]
  ● library/ is excluded from .gitignore as appropriate ........... [PASS / <0.1s]
  ● whitespace in infrastructure file is preserved ................ [PASS / <0.1s]
  ● lines are commented, uncommented as appropriate ............... [PASS / <0.1s]
  ● comments after a required line are preserved .................. [PASS / <0.1s]
  ● the project .Rprofile is removed if only autoloader <...> ..... [PASS / <0.1s]
  ● the renv .gitignore is updated for sub-projects ............... [PASS / <0.1s]
  
  ── test-init.R ─────────────────────────────────────────────────────────────────
  ── Skip (test-init.R:4:3): we can initialize a project using 'breakfast' ───────
  Reason: On CRAN
  
  ● we can initialize a project using 'breakfast' ................. [SKIP / <0.1s]
  ● we can initialize a project using 'toast' ..................... [PASS / 0.12s]
  ● we cannot initialize a project using 'brunch' ................. [PASS /  1.1s]
  ● attempts to initialize a project with a missing pac <...> ..... [PASS / 0.15s]
  ── Skip (test-init.R:57:3): the remotes field in a DESCRIPTION is honored ──────
  Reason: On CRAN
  
  ● the remotes field in a DESCRIPTION is honored ................. [SKIP / <0.1s]
  ● renv::init(bare = TRUE) initializes a project witho <...> ..... [PASS / <0.1s]
  ● init succeeds even if there are parse errors in project ....... [PASS / 0.58s]
  ● init() restores project containing only a lockfile ............ [PASS /  5.0s]
  
  ── test-install.R ──────────────────────────────────────────────────────────────
  ● install works when DESCRIPTION contains no dependencies ....... [PASS / <0.1s]
  ● requested version in DESCRIPTION file is honored .............. [PASS /  1.3s]
  ● installation failure is well-reported ......................... [PASS / 0.31s]
  ── Skip (test-install.R:67:3): install forces update of dependencies as needed ─
  Reason: On CRAN
  
  ● install forces update of dependencies as needed ............... [SKIP / <0.1s]
  ● packages can be installed from local sources .................. [PASS /  1.1s]
  ── Skip (test-install.R:113:3): various remote styles can be used during install
  Reason: On CRAN
  
  ● various remote styles can be used during install .............. [SKIP / <0.1s]
  ── Skip (test-install.R:156:3): Remotes fields in a project DESCRIPTION are resp
  Reason: On CRAN
  
  ● Remotes fields in a project DESCRIPTION are respected ......... [SKIP / <0.1s]
  ● source packages in .zip files can be installed ................ [PASS /  1.1s]
  ── Skip (test-install.R:206:3): renv warns when installing an already-loaded pac
  Reason: On CRAN
  
  ● renv warns when installing an already-loaded package .......... [SKIP / <0.1s]
  ── Skip (test-install.R:215:3): renv::install() writes out Github fields for bac
  Reason: On CRAN
  
  ● renv::install() writes out Github fields for backwa <...> ..... [SKIP / <0.1s]
  ── Skip (test-install.R:230:3): renv uses safe library paths on Windows ────────
  Reason: renv_platform_windows() is not TRUE
  
  ● renv uses safe library paths on Windows ....................... [SKIP / <0.1s]
  ── Skip (test-install.R:252:3): renv can install packages from Bitbucket ───────
  Reason: On CRAN
  
  ● renv can install packages from Bitbucket ...................... [SKIP / <0.1s]
  ── Skip (test-install.R:259:3): renv can install packages from GitHub using remo
  Reason: On CRAN
  
  ● renv can install packages from GitHub using remotes <...> ..... [SKIP / <0.1s]
  
  ── test-internal.R ─────────────────────────────────────────────────────────────
  ● R files have balanced covr exclusions ......................... [PASS / <0.1s]
  
  ── test-json.R ─────────────────────────────────────────────────────────────────
  ● sample JSON strings can be read ............................... [PASS / <0.1s]
  ● sample R objects can be converted to JSON ..................... [PASS / <0.1s]
  ● empty R lists are converted as expected ....................... [PASS / <0.1s]
  ── Skip (test-json.R:45:3): we can parse a GitHub remotes specification ────────
  Reason: On CRAN
  
  ● we can parse a GitHub remotes specification ................... [SKIP / <0.1s]
  ── Skip (test-json.R:55:3): we can parse a GitHub remotes specification with 'wi
  Reason: On CRAN
  
  ● we can parse a GitHub remotes specification with 'w <...> ..... [SKIP / <0.1s]
  ● we can read json containing escape characters ................. [PASS / <0.1s]
  ● JSON null is read as R NULL ................................... [PASS / <0.1s]
  
  ── test-load.R ─────────────────────────────────────────────────────────────────
  ● invalid lockfile entries are reported ......................... [PASS / <0.1s]
  ● renv/settings.R is sourced on load if available ............... [PASS / <0.1s]
  ● errors when sourcing user profile are reported ................ [PASS / <0.1s]
  
  ── test-lock.R ─────────────────────────────────────────────────────────────────
  ● lockfiles can be created, destroyed ........................... [PASS / <0.1s]
  ● lockfile locks are removed via callback ....................... [PASS / <0.1s]
  ● nested locks are handled correctly ............................ [PASS / <0.1s]
  ● multiple calls to renv_scope_lock() do the right thing ........ [PASS / <0.1s]
  
  ── test-lockfile.R ─────────────────────────────────────────────────────────────
  ● lockfiles can be read from file ............................... [PASS / <0.1s]
  ● lockfiles can be diffed ....................................... [PASS / <0.1s]
  ● named characters are serialized as expected ................... [PASS / <0.1s]
  ● lockfiles can be read from either format ...................... [PASS / <0.1s]
  ● we can serialize lockfiles using unnamed repositories ......... [PASS / <0.1s]
  
  ── test-migrate.R ──────────────────────────────────────────────────────────────
  ── Skip (test-migrate.R:17:3): a sample Packrat project can be migrated ────────
  Reason: On CRAN
  
  ● a sample Packrat project can be migrated ...................... [SKIP / <0.1s]
  ── Skip (test-migrate.R:56:3): a Packrat project with no library can be migrated
  Reason: On CRAN
  
  ● a Packrat project with no library can be migrated ............. [SKIP / <0.1s]
  
  ── test-miscellaneous.R ────────────────────────────────────────────────────────
  ● long lines and be printed ..................................... [PASS / <0.1s]
  ● unmatched dots cause an error ................................. [PASS / <0.1s]
  
  ── test-mran.R ─────────────────────────────────────────────────────────────────
  ── Skip (test-mran.R:6:3): older binaries are installed from MRAN on Windows / m
  Reason: On CRAN
  
  ● older binaries are installed from MRAN on Windows / macOS ..... [SKIP / <0.1s]
  
  ── test-once.R ─────────────────────────────────────────────────────────────────
  ● renv_once() returns TRUE only once ............................ [PASS / <0.1s]
  
  ── test-packages.R ─────────────────────────────────────────────────────────────
  ● remote field updates are written to both DESCRIPTIO <...> ..... [PASS /  1.2s]
  
  ── test-parse.R ────────────────────────────────────────────────────────────────
  ● code containing multibyte characters can be parsed ............ [PASS / <0.1s]
  
  ── test-patches.R ──────────────────────────────────────────────────────────────
  ● a bad TAR is repaired ......................................... [PASS / <0.1s]
  
  ── test-paths.R ────────────────────────────────────────────────────────────────
  ● all renv paths live within tempdir() during tests ............. [PASS / <0.1s]
  ● the cache path can be set through an environment variable ..... [PASS / <0.1s]
  ● we can construct paths to multiple files with path APIs ....... [PASS / <0.1s]
  ● RENV_PATHS_PREFIX is respected ................................ [PASS / <0.1s]
  ● RENV_PATHS_PREFIX is not normalized ........................... [PASS / <0.1s]
  
  ── test-preflight.R ────────────────────────────────────────────────────────────
  ● snapshot preflight tests catch common issues .................. [PASS / <0.1s]
  ── Skip (test-preflight.R:25:3): renv warns when snapshotting missing dependenci
  Reason: On CRAN
  
  ● renv warns when snapshotting missing dependencies ............. [SKIP / <0.1s]
  
  ── test-profiles.R ─────────────────────────────────────────────────────────────
  ── Skip (test-profiles.R:5:3): library paths set in a user profile are overridde
  Reason: On CRAN
  
  ● library paths set in a user profile are overridden  <...> ..... [SKIP / <0.1s]
  ── Skip (test-profiles.R:34:3): .First is executed; library paths are restored a
  Reason: On CRAN
  
  ● .First is executed; library paths are restored after .......... [SKIP / <0.1s]
  
  ── test-properties.R ───────────────────────────────────────────────────────────
  ● properties can be read successfully ........................... [PASS / <0.1s]
  ● quoted properties are unquoted ................................ [PASS / <0.1s]
  
  ── test-purge.R ────────────────────────────────────────────────────────────────
  ● we can purge packages from the cache .......................... [PASS / 0.14s]
  
  ── test-python.R ───────────────────────────────────────────────────────────────
  ── Skip (test-python.R:12:3): we can activate Python with a project ────────────
  Reason: On CRAN
  
  ● we can activate Python with a project ......................... [SKIP / <0.1s]
  ── Skip (test-python.R:26:3): we can activate Python with a virtualenv in a proj
  Reason: On CRAN
  
  ● we can activate Python with a virtualenv in a project ......... [SKIP / <0.1s]
  ── Skip (test-python.R:39:3): installed Python packages are snapshotted / restor
  Reason: Running tests locally
  
  ● installed Python packages are snapshotted / restore <...> ..... [SKIP / <0.1s]
  ── Skip (test-python.R:88:3): installed Python packages are snapshotted / restor
  Reason: Running tests locally
  
  ● installed Python packages are snapshotted / restore <...> ..... [SKIP / <0.1s]
  
  ── test-r.R ────────────────────────────────────────────────────────────────────
  ● we can use R CMD build to build a package ..................... [PASS /  1.3s]
  ● we can supply custom options to R CMD INSTALL ................. [PASS / 0.48s]
  
  ── test-rebuild.R ──────────────────────────────────────────────────────────────
  ● rebuild forces a package to rebuilt, bypassing cache .......... [PASS /  1.1s]
  
  ── test-record.R ───────────────────────────────────────────────────────────────
  ● an existing lockfile can be updated ........................... [PASS /  0.1s]
  ● renv::record(<package>) also records version .................. [PASS / <0.1s]
  
  ── test-records.R ──────────────────────────────────────────────────────────────
  ● renv_records_select() handles missing packages gracefully ..... [PASS / <0.1s]
  ● we can format records in various ways ......................... [PASS / <0.1s]
  
  ── test-rehash.R ───────────────────────────────────────────────────────────────
  ● rehash() migrates cached packages as expected ................. [PASS /  5.1s]
  
  ── test-remotes.R ──────────────────────────────────────────────────────────────
  ── Skip (test-remotes.R:5:3): we can parse a variety of remotes ────────────────
  Reason: On CRAN
  
  ● we can parse a variety of remotes ............................. [SKIP / <0.1s]
  ● subdirectories are parsed in remotes .......................... [PASS / <0.1s]
  ● custom hosts can be supplied .................................. [PASS / <0.1s]
  
  ── test-renvignore.R ───────────────────────────────────────────────────────────
  ● .renvignore ignores files, directories ........................ [PASS / <0.1s]
  ● ignore patterns are constructed correctly ..................... [PASS / <0.1s]
  ● empty .renvignore does not ignore anything .................... [PASS / <0.1s]
  ● negated .renvignore patterns are handled ...................... [PASS / <0.1s]
  
  ── test-repos.R ────────────────────────────────────────────────────────────────
  ● we can query our local repository during tests ................ [PASS / <0.1s]
  ● repository names are not lost in the lockfile ................. [PASS / <0.1s]
  ● trailing slashes are removed from repositories on load ........ [PASS / <0.1s]
  
  ── test-restore.R ──────────────────────────────────────────────────────────────
  ● library permissions are validated before restore .............. [PASS / <0.1s]
  ── Skip (test-restore.R:13:3): we can restore packages after init ──────────────
  Reason: On CRAN
  
  ● we can restore packages after init ............................ [SKIP / <0.1s]
  ── Skip (test-restore.R:30:3): restore can recover when required packages are mi
  Reason: On CRAN
  
  ● restore can recover when required packages are missing ........ [SKIP / <0.1s]
  ● restore(clean = TRUE) removes packages not in the l <...> ..... [PASS / 0.13s]
  ● renv.records can be used to override records during <...> ..... [PASS / 0.21s]
  ● install.staged works as expected .............................. [PASS /  3.9s]
  ● renv::restore(lockfile = '/path/to/lockfile') works ........... [PASS / 0.15s]
  ● renv::restore(packages = <...>) works ......................... [PASS / 0.18s]
  ● restore ignores packages of incompatible architecture ......... [PASS /  1.4s]
  ● restore handled records without version set ................... [PASS / <0.1s]
  
  ── test-retrieve.R ─────────────────────────────────────────────────────────────
  ── Skip (test-retrieve.R:6:3): we can retrieve packages from CRAN ──────────────
  Reason: On CRAN
  
  ● we can retrieve packages from CRAN ............................ [SKIP / <0.1s]
  ── Skip (test-retrieve.R:21:3): we can retrieve packages from the CRAN archive ─
  Reason: On CRAN
  
  ● we can retrieve packages from the CRAN archive ................ [SKIP / <0.1s]
  ── Skip (test-retrieve.R:36:3): packages with an unknown source are retrieved fr
  Reason: On CRAN
  
  ● packages with an unknown source are retrieved from CRAN ....... [SKIP / <0.1s]
  ── Skip (test-retrieve.R:51:3): we can retrieve packages from Bitbucket ────────
  Reason: On CRAN
  
  ● we can retrieve packages from Bitbucket ....................... [SKIP / <0.1s]
  ── Skip (test-retrieve.R:69:3): we can retrieve packages from git ──────────────
  Reason: On CRAN
  
  ● we can retrieve packages from git ............................. [SKIP / <0.1s]
  ── Skip (test-retrieve.R:85:3): we can retrieve packages from GitHub ───────────
  Reason: On CRAN
  
  ● we can retrieve packages from GitHub .......................... [SKIP / <0.1s]
  ── Skip (test-retrieve.R:101:3): we can retrieve packages from GitHub (in a sub-
  Reason: On CRAN
  
  ● we can retrieve packages from GitHub (in a sub-directory) ..... [SKIP / <0.1s]
  ── Skip (test-retrieve.R:119:3): we can retrieve packages from GitLab ──────────
  Reason: On CRAN
  
  ● we can retrieve packages from GitLab .......................... [SKIP / <0.1s]
  ── Skip (test-retrieve.R:134:3): we can retrieve packages with URLs ────────────
  Reason: On CRAN
  
  ● we can retrieve packages with URLs ............................ [SKIP / <0.1s]
  ── Skip (test-retrieve.R:141:3): we can retrieve packages from URL sources ─────
  Reason: On CRAN
  
  ● we can retrieve packages from URL sources ..................... [SKIP / <0.1s]
  ● we can retrieve packages from local sources ................... [PASS / <0.1s]
  ● compatible local sources are preferred when available ......... [PASS / 0.16s]
  ● an explicitly-provided local source path can be used .......... [PASS / <0.1s]
  ── Skip (test-retrieve.R:213:3): explicit path to binary packages work ─────────
  Reason: renv_platform_macos() is not TRUE
  
  ● explicit path to binary packages work ......................... [SKIP / <0.1s]
  ● remotes::install_local() records are handled .................. [PASS /  1.2s]
  ── Skip (test-retrieve.R:240:3): we can retrieve packages from GitHub ──────────
  Reason: On CRAN
  
  ● we can retrieve packages from GitHub .......................... [SKIP / <0.1s]
  ── Skip (test-retrieve.R:257:3): we can retrieve packages from R repositories ──
  Reason: On CRAN
  
  ● we can retrieve packages from R repositories .................. [SKIP / <0.1s]
  ── Skip (test-retrieve.R:272:3): we can retrieve files using file URIs ─────────
  Reason: On CRAN
  
  ● we can retrieve files using file URIs ......................... [SKIP / <0.1s]
  
  ── test-rmd.R ──────────────────────────────────────────────────────────────────
  ● The chunk header parser works as expected ..................... [PASS / <0.1s]
  
  ── test-rspm.R ─────────────────────────────────────────────────────────────────
  ── Skip (test-rspm.R:5:3): repository URLs are properly transformed for differen
  Reason: On CRAN
  
  ● repository URLs are properly transformed for differ <...> ..... [SKIP / <0.1s]
  ── Skip (test-rspm.R:17:3): a binary-specific URL is transformed before writing 
  Reason: On CRAN
  
  ● a binary-specific URL is transformed before writing <...> ..... [SKIP / <0.1s]
  ── Skip (test-rspm.R:29:3): RSPM bits are preserved when writing lockfile ──────
  Reason: On CRAN
  
  ● RSPM bits are preserved when writing lockfile ................. [SKIP / <0.1s]
  ── Skip (test-rspm.R:41:3): RSPM is confirmed not supported on trusty ──────────
  Reason: On CRAN
  
  ● RSPM is confirmed not supported on trusty ..................... [SKIP / <0.1s]
  
  ── test-sandbox.R ──────────────────────────────────────────────────────────────
  ● the sandbox can be activated and deactivated .................. [PASS / <0.1s]
  ● multiple attempts to activate sandbox are handled ............. [PASS / <0.1s]
  ● re-activate sandbox when all is said and done ................. [PASS / <0.1s]
  
  ── test-scaffold.R ─────────────────────────────────────────────────────────────
  ● renv.lock is created when scaffold is called .................. [PASS / <0.1s]
  
  ── test-scope.R ────────────────────────────────────────────────────────────────
  ● .libPaths() scoping works as expected ......................... [PASS / <0.1s]
  ● options() scoping works as expected ........................... [PASS / <0.1s]
  ● environment variable scoping works as expected ................ [PASS / <0.1s]
  ● nested attempts to scope libpaths are properly handled ........ [PASS / <0.1s]
  
  ── test-settings.R ─────────────────────────────────────────────────────────────
  ● renv.settings can be used to provide defaults ................. [PASS / <0.1s]
  ● non-persistent settings exist in R session; not in file ....... [PASS / <0.1s]
  
  ── test-snapshot.R ─────────────────────────────────────────────────────────────
  ● snapshot is idempotent ........................................ [PASS / 0.14s]
  ● snapshot failures are reported ................................ [PASS /  1.4s]
  ● broken symlinks are reported .................................. [PASS /  1.3s]
  ● multiple libraries can be used when snapshotting .............. [PASS /  2.5s]
  ● implicit snapshots only include packages currently used ....... [PASS / 0.19s]
  ● explicit snapshots only capture packages in DESCRIPTION ....... [PASS / 0.16s]
  ── Skip (test-snapshot.R:130:3): a custom snapshot filter can be used ──────────
  Reason: On CRAN
  
  ● a custom snapshot filter can be used .......................... [SKIP / <0.1s]
  ● snapshots that take too long produce a warning ................ [PASS / 0.19s]
  ● snapshotted packages from CRAN include the Reposito <...> ..... [PASS / <0.1s]
  ● snapshot failures due to bad library / packages are <...> ..... [PASS / 0.21s]
  ● snapshot ignores own package in package development <...> ..... [PASS / <0.1s]
  ● snapshot warns about unsatisfied dependencies ................. [PASS / 0.16s]
  ● snapshot records packages discovered in local sources ......... [PASS /  1.3s]
  ● snapshot prefers RemoteType to biocViews ...................... [PASS / <0.1s]
  ● parse errors cause snapshot to abort .......................... [PASS /  1.1s]
  ● records for packages available on other OSes are pr <...> ..... [PASS / 0.12s]
  ● .renvignore works during snapshot without an explic <...> ..... [PASS / 0.12s]
  ● snapshot(packages = ...) captures package dependencies ........ [PASS / 0.43s]
  ● snapshot() accepts relative library paths ..................... [PASS / 0.18s]
  
  ── test-status.R ───────────────────────────────────────────────────────────────
  ── Skip (test-status.R:5:3): status() works when there is no library ───────────
  Reason: On CRAN
  
  ● status() works when there is no library ....................... [SKIP / <0.1s]
  ● status reports packages to be installed / changed ............. [PASS /  2.0s]
  
  ── test-update.R ───────────────────────────────────────────────────────────────
  ── Skip (test-update.R:5:3): update() finds packages requiring updates from CRAN
  Reason: On CRAN
  
  ● update() finds packages requiring updates from CRAN ........... [SKIP / <0.1s]
  ── Skip (test-update.R:24:3): update() can upgrade GitHub packages ─────────────
  Reason: On CRAN
  
  ● update() can upgrade GitHub packages .......................... [SKIP / <0.1s]
  
  ── test-upgrade.R ──────────────────────────────────────────────────────────────
  ── Skip (test-upgrade.R:5:3): the version of renv in a project can be changed (u
  Reason: On CRAN
  
  ● the version of renv in a project can be changed (up <...> ..... [SKIP / <0.1s]
  
  ── test-utils.R ────────────────────────────────────────────────────────────────
  ● common utils work as expected ................................. [PASS / <0.1s]
  ● bind_list handles named lists ................................. [PASS / <0.1s]
  ● bind_list warns on name collision ............................. [PASS / <0.1s]
  ● versions are compared as expected ............................. [PASS / <0.1s]
  ● inject inserts text at expected anchor point .................. [PASS / <0.1s]
  ● aliased_path() correctly forms aliased path ................... [PASS / <0.1s]
  ● memoize avoids evaluating expression multiple times ........... [PASS / <0.1s]
  
  ── Skipped tests  ──────────────────────────────────────────────────────────────
  ● On CRAN (58)
  ● Running tests locally (2)
  ● empty test (2)
  ● renv_platform_macos() is not TRUE (1)
  ● renv_platform_windows() is not TRUE (1)
  
  ══ testthat results  ═══════════════════════════════════════════════════════════
  FAILURE (test-dependencies.R:199:3): Suggest dependencies are ignored by default
  
  [ FAIL 1 | WARN 0 | SKIP 64 | PASS 389 ]
  Error: Test failures
  Execution halted