test_that("live latest works when key+internet available", { skip_on_cran() skip_if_not(exr_can_call_api(), "no internet or missing key") res <- exr_latest(base = "USD", symbols = c("EUR","GBP")) expect_type(res, "list") # structure expectations are intentionally loose expect_true(!is.null(res$rates) || !is.null(res$result)) }) test_that("live convert works when key+internet available", { skip_on_cran() skip_if_not(exr_can_call_api(), "no internet or missing key") res <- exr_convert(10, from = "USD", to = "EUR") expect_type(res, "list") expect_true(any(c("result","rate","conversion_result") %in% names(res))) })