Just as the library has a higher line-count of code autogenerated by
OpenAPI, and a lower line-count of manual-layer files, so too with
testing. In tests/testthat
are many autogenerated files –
with function bodies written commented out by OpenAPI. We do not focus
our testing in this direction.
In inst/tinytest
are manually written tests. These are
opt-in: they make TileDB Cloud calls, which we don’t want to push on all
users who build the package locally.
To opt in:
TILEDB_REST_TOKEN
, or
the pair TILEDB_REST_USERNAME
and
TILEDB_REST_PASSWORD
– or all three if you like.TILEDB_REST_UNIT_TEST_NAMESPACE_TO_CHARGE
for the (very
minor) cloud costs associated with invoking UDFs.TILEDB_REST_HOST
if your cloud installation
is local, and/or for TileDB employees pointing at our staging
environment.tinytest::test_all(".")
export TILEDB_CLOUD_R_HTTP_DEBUG=true
before launching
R will result in helpful printouts to the screen of HTTP requests and
responses.Sys.setenv(TILEDB_CLOUD_R_HTTP_DEBUG='true')
.At the shell prompt:
unset TILEDB_REST_USERNAME
unset TILEDB_REST_PASSWORD
export TILEDB_REST_UNIT_TEST_NAMESPACE_TO_CHARGE=unittest
export TILEDB_REST_TOKEN="..."
Rscript -e 'tinytest::test_all(".")'
Rscript -e 'tinytest::run_test_file("inst/tinytest/test_b_array.R")'
At the R prompt:
tinytest::test_all(".")
tinytest::run_test_file("inst/tinytest/test_c_udf_execution.R")
traceback()