* using log directory 'd:/Rcompile/CRANpkg/local/4.5/KrakenR.Rcheck' * using R Under development (unstable) (2025-03-11 r87944 ucrt) * using platform: x86_64-w64-mingw32 * R was compiled by gcc.exe (GCC) 14.2.0 GNU Fortran (GCC) 14.2.0 * running under: Windows Server 2022 x64 (build 20348) * using session charset: UTF-8 * checking for file 'KrakenR/DESCRIPTION' ... OK * this is package 'KrakenR' version '1.0.0' * package encoding: UTF-8 * checking package namespace information ... OK * checking package dependencies ... OK * checking if this is a source package ... OK * checking if there is a namespace ... OK * checking for hidden files and directories ... OK * checking for portable file names ... OK * checking whether package 'KrakenR' can be installed ... OK * checking installed package size ... OK * checking package directory ... OK * checking 'build' directory ... OK * checking DESCRIPTION meta-information ... OK * checking top-level files ... OK * checking for left-over files ... OK * checking index information ... OK * checking package subdirectories ... OK * checking code files for non-ASCII characters ... OK * checking R files for syntax errors ... OK * checking whether the package can be loaded ... [1s] OK * checking whether the package can be loaded with stated dependencies ... [1s] OK * checking whether the package can be unloaded cleanly ... [1s] OK * checking whether the namespace can be loaded with stated dependencies ... [1s] OK * checking whether the namespace can be unloaded cleanly ... [1s] OK * checking loading without being on the library search path ... [1s] OK * checking use of S3 registration ... OK * checking dependencies in R code ... OK * checking S3 generic/method consistency ... OK * checking replacement functions ... OK * checking foreign function calls ... OK * checking R code for possible problems ... [4s] OK * checking Rd files ... [0s] OK * checking Rd metadata ... OK * checking Rd cross-references ... OK * checking for missing documentation entries ... OK * checking for code/documentation mismatches ... OK * checking Rd \usage sections ... OK * checking Rd contents ... OK * checking for unstated dependencies in examples ... OK * checking installed files from 'inst/doc' ... OK * checking files in 'vignettes' ... OK * checking examples ... [17s] ERROR Running examples in 'KrakenR-Ex.R' failed The error most likely occurred in: > ### Name: getAssets > ### Title: Retrieve Asset Information from Kraken Exchange > ### Aliases: getAssets > > ### ** Examples > > getAssets() Warning in open.connection(con, "rb") : URL 'https://api.kraken.com/0/public/Assets': status was 'SSL connect error' Error in value[[3L]](cond) : Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Assets' Calls: getAssets ... tryCatch -> tryCatchList -> tryCatchOne -> Execution halted * checking for unstated dependencies in 'tests' ... OK * checking tests ... [10m] ERROR Running 'testthat.R' [10m] Running the tests in 'tests/testthat.R' failed. Complete output: > # This file is part of the standard setup for testthat. > # It is recommended that you do not modify it. > # > # Where should you do additional test configuration? > # Learn more about the roles of various files in: > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview > # * https://testthat.r-lib.org/articles/special-files.html > > library(testthat) > library(KrakenR) > > test_check("KrakenR") [ FAIL 38 | WARN 41 | SKIP 0 | PASS 34 ] ══ Failed tests ════════════════════════════════════════════════════════════════ ── Error ('test-getAssets.R:5:3'): getAssets returns data frame with all assets by default ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Assets' Backtrace: ▆ 1. └─KrakenR::getAssets() at test-getAssets.R:5:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getAssets.R:12:3'): getAssets returns data frame with specified assets ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Assets?asset=BTC,ETH' Backtrace: ▆ 1. └─KrakenR::getAssets(c("BTC", "ETH")) at test-getAssets.R:12:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getAssets.R:38:3'): getAssets handles API errors correctly ───── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Assets?asset=INVALID_ASSET' Backtrace: ▆ 1. ├─testthat::expect_error(getAssets("INVALID_ASSET"), "API returned the following error") at test-getAssets.R:38:3 2. │ └─testthat:::expect_condition_matching(...) 3. │ └─testthat:::quasi_capture(...) 4. │ ├─testthat (local) .capture(...) 5. │ │ └─base::withCallingHandlers(...) 6. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 7. └─KrakenR::getAssets("INVALID_ASSET") 8. └─base::tryCatch(...) 9. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 10. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 11. └─value[[3L]](cond) ── Error ('test-getOB.R:5:3'): getOB returns data frame with bids and asks ───── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Depth?pair=ADAEUR' Backtrace: ▆ 1. └─KrakenR::getOB("ADAEUR") at test-getOB.R:5:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getOB.R:12:3'): getOB returns correct number of orders when count is specified ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Depth?pair=ADAEUR&count=100' Backtrace: ▆ 1. └─KrakenR::getOB("ADAEUR", count = 100) at test-getOB.R:12:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getOB.R:18:3'): getOB returns data frame with correct columns and types ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Depth?pair=ADAEUR' Backtrace: ▆ 1. └─KrakenR::getOB("ADAEUR") at test-getOB.R:18:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getOB.R:27:3'): getOB returns sorted bids and asks ───────────── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Depth?pair=ADAEUR' Backtrace: ▆ 1. └─KrakenR::getOB("ADAEUR") at test-getOB.R:27:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getOHLC.R:5:3'): getOHLC returns data frame with OHLC data for a valid pair ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/OHLC?pair=ADAEUR&interval=1' Backtrace: ▆ 1. └─KrakenR::getOHLC("ADAEUR") at test-getOHLC.R:5:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getOHLC.R:13:3'): getOHLC returns correct data for specified interval ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/OHLC?pair=ADAEUR&interval=60' Backtrace: ▆ 1. └─KrakenR::getOHLC("ADAEUR", interval = "1h") at test-getOHLC.R:13:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getOHLC.R:20:3'): getOHLC returns data since a specified timestamp ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/OHLC?pair=ADAEUR&interval=60&since=1727733600' Backtrace: ▆ 1. └─KrakenR::getOHLC("ADAEUR", interval = "1h", since = "2024-10-01 00:00:00") at test-getOHLC.R:20:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getOHLC.R:26:3'): getOHLC handles user-friendly intervals like '1h' and '1d' ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/OHLC?pair=ADAEUR&interval=60' Backtrace: ▆ 1. └─KrakenR::getOHLC("ADAEUR", interval = "1h") at test-getOHLC.R:26:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getOHLC.R:54:3'): getOHLC handles API errors correctly ───────── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/OHLC?pair=INVALID_PAIR&interval=1' Backtrace: ▆ 1. ├─testthat::expect_error(getOHLC("INVALID_PAIR"), "API returned the following error") at test-getOHLC.R:54:3 2. │ └─testthat:::expect_condition_matching(...) 3. │ └─testthat:::quasi_capture(...) 4. │ ├─testthat (local) .capture(...) 5. │ │ └─base::withCallingHandlers(...) 6. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 7. └─KrakenR::getOHLC("INVALID_PAIR") 8. └─base::tryCatch(...) 9. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 10. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 11. └─value[[3L]](cond) ── Error ('test-getPairs.R:12:3'): getPairs returns data for specified pairs ─── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/AssetPairs?pair=ADAEUR,ADAUSD&info=info' Backtrace: ▆ 1. └─KrakenR::getPairs(c("ADAEUR", "ADAUSD")) at test-getPairs.R:12:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getPairs.R:19:3'): getPairs returns data with different info levels ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/AssetPairs?pair=ADAEUR&info=fees' Backtrace: ▆ 1. └─KrakenR::getPairs("ADAEUR", info = "fees") at test-getPairs.R:19:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getPairs.R:25:3'): getPairs handles country_code parameter correctly ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/AssetPairs?pair=ADAEUR&info=info&country=CH' Backtrace: ▆ 1. └─KrakenR::getPairs("ADAEUR", country_code = "CH") at test-getPairs.R:25:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getPairs.R:53:3'): getPairs handles API errors correctly ─────── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/AssetPairs?pair=INVALID_PAIR&info=info' Backtrace: ▆ 1. ├─testthat::expect_error(getPairs("INVALID_PAIR"), "API returned the following error") at test-getPairs.R:53:3 2. │ └─testthat:::expect_condition_matching(...) 3. │ └─testthat:::quasi_capture(...) 4. │ ├─testthat (local) .capture(...) 5. │ │ └─base::withCallingHandlers(...) 6. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 7. └─KrakenR::getPairs("INVALID_PAIR") 8. └─base::tryCatch(...) 9. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 10. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 11. └─value[[3L]](cond) ── Error ('test-getSpreads.R:5:3'): getSpreads returns a data frame by default ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Spread?pair=XTZUSD' Backtrace: ▆ 1. └─KrakenR::getSpreads("XTZUSD") at test-getSpreads.R:5:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getSpreads.R:22:3'): getSpreads returns correct timestamp type when requested ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Spread?pair=XTZUSD' Backtrace: ▆ 1. └─KrakenR::getSpreads("XTZUSD", timestamp = TRUE) at test-getSpreads.R:22:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getSpreads.R:28:3'): getSpreads returns data frame with correct columns ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Spread?pair=XTZUSD' Backtrace: ▆ 1. └─KrakenR::getSpreads("XTZUSD") at test-getSpreads.R:28:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getSpreads.R:37:3'): getSpreads returns valid Bid and Ask values ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Spread?pair=XTZUSD' Backtrace: ▆ 1. └─KrakenR::getSpreads("XTZUSD") at test-getSpreads.R:37:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getSpreads.R:45:3'): getSpreads returns data since specified timestamp ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Spread?pair=XTZUSD&since=1727733600' Backtrace: ▆ 1. └─KrakenR::getSpreads("XTZUSD", since = "2024-10-01 00:00:00") at test-getSpreads.R:45:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getSpreads.R:51:3'): getSpreads handles large datasets ───────── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Spread?pair=XTZUSD' Backtrace: ▆ 1. └─KrakenR::getSpreads("XTZUSD", timestamp = TRUE) at test-getSpreads.R:51:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getSpreads.R:80:3'): getSpreads handles API errors correctly ─── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Spread?pair=INVALID_PAIR' Backtrace: ▆ 1. ├─testthat::expect_error(getSpreads("INVALID_PAIR"), "API returned the following error") at test-getSpreads.R:80:3 2. │ └─testthat:::expect_condition_matching(...) 3. │ └─testthat:::quasi_capture(...) 4. │ ├─testthat (local) .capture(...) 5. │ │ └─base::withCallingHandlers(...) 6. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 7. └─KrakenR::getSpreads("INVALID_PAIR") 8. └─base::tryCatch(...) 9. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 10. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 11. └─value[[3L]](cond) ── Error ('test-getStatus.R:12:3'): getStatus returns only the status when specified ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/SystemStatus' Backtrace: ▆ 1. └─KrakenR::getStatus("status") at test-getStatus.R:12:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getStatus.R:19:3'): getStatus returns only the timestamp when specified ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/SystemStatus' Backtrace: ▆ 1. └─KrakenR::getStatus("timestamp") at test-getStatus.R:19:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getStatus.R:28:3'): getStatus throws error for invalid 'data' parameter ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/SystemStatus' Backtrace: ▆ 1. ├─testthat::expect_error(getStatus("invalid_data"), "Invalid value for 'data' parameter") at test-getStatus.R:28:3 2. │ └─testthat:::expect_condition_matching(...) 3. │ └─testthat:::quasi_capture(...) 4. │ ├─testthat (local) .capture(...) 5. │ │ └─base::withCallingHandlers(...) 6. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 7. └─KrakenR::getStatus("invalid_data") 8. └─base::tryCatch(...) 9. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 10. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 11. └─value[[3L]](cond) ── Error ('test-getTickers.R:5:3'): getTickers returns data frame with all pairs by default ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Ticker' Backtrace: ▆ 1. └─KrakenR::getTickers() at test-getTickers.R:5:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getTickers.R:19:3'): getTickers returns data frame with correct columns ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Ticker?pair=ADAEUR' Backtrace: ▆ 1. └─KrakenR::getTickers("ADAEUR") at test-getTickers.R:19:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getTickers.R:28:3'): getTickers returns numeric values for price, volume, and trades columns ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Ticker?pair=ADAEUR' Backtrace: ▆ 1. └─KrakenR::getTickers("ADAEUR") at test-getTickers.R:28:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getTickers.R:39:3'): getTickers handles missing columns in the API response ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Ticker?pair=ADAEUR' Backtrace: ▆ 1. └─KrakenR::getTickers("ADAEUR") at test-getTickers.R:39:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getTickers.R:45:3'): getTickers handles large datasets efficiently ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Ticker?pair=ADAEUR,BTCUSD,ETHUSD,LTCUSD,DOTUSD,XRPUSD,ADAUSD' Backtrace: ▆ 1. └─KrakenR::getTickers(...) at test-getTickers.R:45:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getTime.R:5:3'): getTime returns current time in Unix format by default ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Time' Backtrace: ▆ 1. └─KrakenR::getTime() at test-getTime.R:5:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getTime.R:11:3'): getTime returns current time in RFC 1123 format ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Time' Backtrace: ▆ 1. └─KrakenR::getTime("rfc") at test-getTime.R:11:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getTime.R:19:3'): getTime throws error for invalid format input ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Time' Backtrace: ▆ 1. ├─testthat::expect_error(getTime("invalid_format"), "Invalid format specified. Use 'unix' or 'rfc'.") at test-getTime.R:19:3 2. │ └─testthat:::expect_condition_matching(...) 3. │ └─testthat:::quasi_capture(...) 4. │ ├─testthat (local) .capture(...) 5. │ │ └─base::withCallingHandlers(...) 6. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 7. └─KrakenR::getTime("invalid_format") 8. └─base::tryCatch(...) 9. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 10. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 11. └─value[[3L]](cond) ── Error ('test-getTrades.R:5:3'): getTrades returns data frame for a valid pair ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Trades?pair=XTZUSD' Backtrace: ▆ 1. └─KrakenR::getTrades("XTZUSD") at test-getTrades.R:5:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getTrades.R:13:3'): getTrades returns data for trades since a specified timestamp ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Trades?pair=XTZUSD&since=1727733600' Backtrace: ▆ 1. └─KrakenR::getTrades("XTZUSD", since = "2024-10-01 00:00:00") at test-getTrades.R:13:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getTrades.R:26:3'): getTrades returns numeric values for price and volume ── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Trades?pair=XTZUSD' Backtrace: ▆ 1. └─KrakenR::getTrades("XTZUSD") at test-getTrades.R:26:3 2. └─base::tryCatch(...) 3. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 4. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 5. └─value[[3L]](cond) ── Error ('test-getTrades.R:53:3'): getTrades handles API errors correctly ───── Error in `value[[3L]](cond)`: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Trades?pair=INVALID_PAIR' Backtrace: ▆ 1. ├─testthat::expect_error(getTrades("INVALID_PAIR"), "API returned the following error") at test-getTrades.R:53:3 2. │ └─testthat:::expect_condition_matching(...) 3. │ └─testthat:::quasi_capture(...) 4. │ ├─testthat (local) .capture(...) 5. │ │ └─base::withCallingHandlers(...) 6. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 7. └─KrakenR::getTrades("INVALID_PAIR") 8. └─base::tryCatch(...) 9. └─base (local) tryCatchList(expr, classes, parentenv, handlers) 10. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 11. └─value[[3L]](cond) [ FAIL 38 | WARN 41 | SKIP 0 | PASS 34 ] Error: Test failures Execution halted * checking for unstated dependencies in vignettes ... OK * checking package vignettes ... OK * checking re-building of vignette outputs ... [17s] ERROR Error(s) in re-building vignettes: --- re-building 'KrakenR.Rmd' using rmarkdown Quitting from lines 60-66 [fetching_asset_information] (KrakenR.Rmd) Error: processing vignette 'KrakenR.Rmd' failed with diagnostics: Error fetching data from the Kraken API: cannot open the connection to 'https://api.kraken.com/0/public/Assets' --- failed re-building 'KrakenR.Rmd' SUMMARY: processing the following file failed: 'KrakenR.Rmd' Error: Vignette re-building failed. Execution halted * checking PDF version of manual ... [20s] OK * checking HTML version of manual ... [2s] OK * DONE Status: 3 ERRORs