CRAN Package Check Results for Package air

Last updated on 2025-07-23 20:50:34 CEST.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 0.2.2 1.83 22.04 23.87 ERROR
r-devel-linux-x86_64-debian-gcc 0.2.2 1.08 18.02 19.10 ERROR
r-devel-linux-x86_64-fedora-clang 0.2.2 36.60 ERROR
r-devel-linux-x86_64-fedora-gcc 0.2.2 35.45 ERROR
r-devel-windows-x86_64 0.2.2 4.00 41.00 45.00 ERROR
r-patched-linux-x86_64 0.2.2 1.82 18.90 20.72 NOTE
r-release-linux-x86_64 0.2.2 1.65 19.23 20.88 NOTE
r-release-macos-arm64 0.2.2 20.00 NOTE
r-release-macos-x86_64 0.2.2 28.00 NOTE
r-release-windows-x86_64 0.2.2 3.00 41.00 44.00 NOTE
r-oldrel-macos-arm64 0.2.2 17.00 OK
r-oldrel-macos-x86_64 0.2.2 24.00 OK
r-oldrel-windows-x86_64 0.2.2 5.00 51.00 56.00 OK

Check Details

Version: 0.2.2
Check: DESCRIPTION meta-information
Result: NOTE Missing dependency on R >= 4.1.0 because package code uses the pipe |> or function shorthand \(...) syntax added in R 4.1.0. File(s) using such syntax: ‘gateway_keyring.R’ ‘gateway_openai.R’ Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-devel-linux-x86_64-fedora-clang, r-devel-linux-x86_64-fedora-gcc, r-devel-windows-x86_64, r-patched-linux-x86_64, r-release-linux-x86_64, r-release-macos-arm64, r-release-macos-x86_64, r-release-windows-x86_64

Version: 0.2.2
Check: tests
Result: ERROR Running ‘testthat.R’ [3s/3s] 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/tests.html > # * https://testthat.r-lib.org/reference/test_package.html#special-files > > library(testthat) > library(air) > > test_check("air") [ FAIL 5 | WARN 0 | SKIP 0 | PASS 2 ] ══ Failed tests ════════════════════════════════════════════════════════════════ ── Error ('test-credentials.R:7:9'): BAD: catches an invalid API key ─────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─testthat::expect_error(bad_invalid_api_key(), "Incorrect") at test-credentials.R:13: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. └─air (local) bad_invalid_api_key() 8. ├─vcr::use_cassette(...) at test-credentials.R:5:5 9. │ └─cassette$call_block(...) 10. ├─air:::with_stubbed_credentials(...) at test-credentials.R:6:7 11. └─air::howto("How do I get the first element of a list?") at test-credentials.R:7:9 12. └─air:::api_answer_or_stop(do, creds, context, call_api) 13. └─air:::parse_response_message(value(res)) 14. └─rjson::fromJSON(json_body) ── Error ('test-howto.R:4:7'): HAPPY: howto returns results ──────────────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-howto.R:2:3 2. │ └─cassette$call_block(...) 3. ├─air:::with_stubbed_credentials(...) at test-howto.R:3:5 4. ├─base::suppressMessages(air::howto("How do I get the first element of a list?")) at test-howto.R:4:7 5. │ └─base::withCallingHandlers(...) 6. └─air::howto("How do I get the first element of a list?") 7. └─air:::api_answer_or_stop(do, creds, context, call_api) 8. └─air:::parse_response_message(value(res)) 9. └─rjson::fromJSON(json_body) ── Error ('test-howto.R:19:9'): HAPPY: howto prints result message ───────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-howto.R:16:3 2. │ └─cassette$call_block(...) 3. ├─testthat::expect_message(happy_results(), ".*\n+") at test-howto.R:22:5 4. │ └─testthat:::expect_condition_matching(...) 5. │ └─testthat:::quasi_capture(...) 6. │ ├─testthat (local) .capture(...) 7. │ │ └─base::withCallingHandlers(...) 8. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 9. └─air (local) happy_results() 10. ├─air:::with_stubbed_credentials(...) at test-howto.R:18:7 11. └─air::howto("How do I get the first element of a list?") at test-howto.R:19:9 12. └─air:::api_answer_or_stop(do, creds, context, call_api) 13. └─air:::parse_response_message(value(res)) 14. └─rjson::fromJSON(json_body) ── Error ('test-whatis.R:5:9'): HAPPY: whatis returns results ────────────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-whatis.R:2:3 2. │ └─cassette$call_block(...) 3. ├─air:::with_stubbed_credentials(...) at test-whatis.R:3:5 4. ├─air:::with_stubbed_credentials(...) at test-whatis.R:4:7 5. ├─base::suppressMessages(air::whatis("paste0(vector1, vector2)")) at test-whatis.R:5:9 6. │ └─base::withCallingHandlers(...) 7. └─air::whatis("paste0(vector1, vector2)") 8. └─air:::api_answer_or_stop(this, creds, context, call_api) 9. └─air:::parse_response_message(value(res)) 10. └─rjson::fromJSON(json_body) ── Error ('test-whatis.R:16:9'): HAPPY: whatis prints result message ─────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─testthat::expect_message(good(), ".*\n+") at test-whatis.R:21: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. └─air (local) good() 8. ├─vcr::use_cassette(...) at test-whatis.R:14:5 9. │ └─cassette$call_block(...) 10. ├─air:::with_stubbed_credentials(...) at test-whatis.R:15:7 11. └─air::whatis("paste0(vector1, vector2)") at test-whatis.R:16:9 12. └─air:::api_answer_or_stop(this, creds, context, call_api) 13. └─air:::parse_response_message(value(res)) 14. └─rjson::fromJSON(json_body) [ FAIL 5 | WARN 0 | SKIP 0 | PASS 2 ] Error: Test failures Execution halted Flavor: r-devel-linux-x86_64-debian-clang

Version: 0.2.2
Check: tests
Result: ERROR Running ‘testthat.R’ [2s/3s] 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/tests.html > # * https://testthat.r-lib.org/reference/test_package.html#special-files > > library(testthat) > library(air) > > test_check("air") [ FAIL 5 | WARN 0 | SKIP 0 | PASS 2 ] ══ Failed tests ════════════════════════════════════════════════════════════════ ── Error ('test-credentials.R:7:9'): BAD: catches an invalid API key ─────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─testthat::expect_error(bad_invalid_api_key(), "Incorrect") at test-credentials.R:13: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. └─air (local) bad_invalid_api_key() 8. ├─vcr::use_cassette(...) at test-credentials.R:5:5 9. │ └─cassette$call_block(...) 10. ├─air:::with_stubbed_credentials(...) at test-credentials.R:6:7 11. └─air::howto("How do I get the first element of a list?") at test-credentials.R:7:9 12. └─air:::api_answer_or_stop(do, creds, context, call_api) 13. └─air:::parse_response_message(value(res)) 14. └─rjson::fromJSON(json_body) ── Error ('test-howto.R:4:7'): HAPPY: howto returns results ──────────────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-howto.R:2:3 2. │ └─cassette$call_block(...) 3. ├─air:::with_stubbed_credentials(...) at test-howto.R:3:5 4. ├─base::suppressMessages(air::howto("How do I get the first element of a list?")) at test-howto.R:4:7 5. │ └─base::withCallingHandlers(...) 6. └─air::howto("How do I get the first element of a list?") 7. └─air:::api_answer_or_stop(do, creds, context, call_api) 8. └─air:::parse_response_message(value(res)) 9. └─rjson::fromJSON(json_body) ── Error ('test-howto.R:19:9'): HAPPY: howto prints result message ───────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-howto.R:16:3 2. │ └─cassette$call_block(...) 3. ├─testthat::expect_message(happy_results(), ".*\n+") at test-howto.R:22:5 4. │ └─testthat:::expect_condition_matching(...) 5. │ └─testthat:::quasi_capture(...) 6. │ ├─testthat (local) .capture(...) 7. │ │ └─base::withCallingHandlers(...) 8. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 9. └─air (local) happy_results() 10. ├─air:::with_stubbed_credentials(...) at test-howto.R:18:7 11. └─air::howto("How do I get the first element of a list?") at test-howto.R:19:9 12. └─air:::api_answer_or_stop(do, creds, context, call_api) 13. └─air:::parse_response_message(value(res)) 14. └─rjson::fromJSON(json_body) ── Error ('test-whatis.R:5:9'): HAPPY: whatis returns results ────────────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-whatis.R:2:3 2. │ └─cassette$call_block(...) 3. ├─air:::with_stubbed_credentials(...) at test-whatis.R:3:5 4. ├─air:::with_stubbed_credentials(...) at test-whatis.R:4:7 5. ├─base::suppressMessages(air::whatis("paste0(vector1, vector2)")) at test-whatis.R:5:9 6. │ └─base::withCallingHandlers(...) 7. └─air::whatis("paste0(vector1, vector2)") 8. └─air:::api_answer_or_stop(this, creds, context, call_api) 9. └─air:::parse_response_message(value(res)) 10. └─rjson::fromJSON(json_body) ── Error ('test-whatis.R:16:9'): HAPPY: whatis prints result message ─────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─testthat::expect_message(good(), ".*\n+") at test-whatis.R:21: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. └─air (local) good() 8. ├─vcr::use_cassette(...) at test-whatis.R:14:5 9. │ └─cassette$call_block(...) 10. ├─air:::with_stubbed_credentials(...) at test-whatis.R:15:7 11. └─air::whatis("paste0(vector1, vector2)") at test-whatis.R:16:9 12. └─air:::api_answer_or_stop(this, creds, context, call_api) 13. └─air:::parse_response_message(value(res)) 14. └─rjson::fromJSON(json_body) [ FAIL 5 | WARN 0 | SKIP 0 | PASS 2 ] Error: Test failures Execution halted Flavor: r-devel-linux-x86_64-debian-gcc

Version: 0.2.2
Check: tests
Result: ERROR Running ‘testthat.R’ [5s/14s] 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/tests.html > # * https://testthat.r-lib.org/reference/test_package.html#special-files > > library(testthat) > library(air) > > test_check("air") [ FAIL 5 | WARN 0 | SKIP 0 | PASS 2 ] ══ Failed tests ════════════════════════════════════════════════════════════════ ── Error ('test-credentials.R:7:9'): BAD: catches an invalid API key ─────────── <vcr_unhandled/rlang_error/error/condition> Error in `RequestHandlerHttr$new(req)$handle()`: Failed to find matching request in active cassette, "openai-bad-invalid-api-key". i Use `local_vcr_configure_log()` to get more details. i Learn more in `vignette(vcr::debugging)`. Backtrace: ▆ 1. ├─testthat::expect_error(bad_invalid_api_key(), "Incorrect") at test-credentials.R:13: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. └─air (local) bad_invalid_api_key() 8. ├─vcr::use_cassette(...) at test-credentials.R:5:5 9. │ └─base::withCallingHandlers(...) 10. ├─air:::with_stubbed_credentials(...) at test-credentials.R:6:7 11. └─air::howto("How do I get the first element of a list?") at test-credentials.R:7:9 12. └─air:::api_answer_or_stop(do, creds, context, call_api) 13. └─air (local) call_api(req$endpoint, creds$key, req$json_body) 14. ├─base::tryCatch(...) 15. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 16. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 17. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 18. └─httr::POST(...) 19. └─httr:::request_perform(req, hu$handle$handle) 20. └─httr:::perform_callback("request", req = req) 21. └─vcr (local) callback(...) 22. └─RequestHandlerHttr$new(req)$handle() 23. └─cli::cli_abort(...) 24. └─rlang::abort(...) ── Error ('test-howto.R:4:7'): HAPPY: howto returns results ──────────────────── <vcr_unhandled/rlang_error/error/condition> Error in `RequestHandlerHttr$new(req)$handle()`: Failed to find matching request in active cassette, "howto-happy-return-results". i Use `local_vcr_configure_log()` to get more details. i Learn more in `vignette(vcr::debugging)`. Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-howto.R:2:3 2. │ └─base::withCallingHandlers(...) 3. ├─air:::with_stubbed_credentials(...) at test-howto.R:3:5 4. ├─base::suppressMessages(air::howto("How do I get the first element of a list?")) at test-howto.R:4:7 5. │ └─base::withCallingHandlers(...) 6. └─air::howto("How do I get the first element of a list?") 7. └─air:::api_answer_or_stop(do, creds, context, call_api) 8. └─air (local) call_api(req$endpoint, creds$key, req$json_body) 9. ├─base::tryCatch(...) 10. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 11. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 12. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 13. └─httr::POST(...) 14. └─httr:::request_perform(req, hu$handle$handle) 15. └─httr:::perform_callback("request", req = req) 16. └─vcr (local) callback(...) 17. └─RequestHandlerHttr$new(req)$handle() 18. └─cli::cli_abort(...) 19. └─rlang::abort(...) ── Error ('test-howto.R:19:9'): HAPPY: howto prints result message ───────────── <vcr_unhandled/rlang_error/error/condition> Error in `RequestHandlerHttr$new(req)$handle()`: Failed to find matching request in active cassette, "howto-happy-print-results". i Use `local_vcr_configure_log()` to get more details. i Learn more in `vignette(vcr::debugging)`. Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-howto.R:16:3 2. │ └─base::withCallingHandlers(...) 3. ├─testthat::expect_message(happy_results(), ".*\n+") at test-howto.R:22:5 4. │ └─testthat:::expect_condition_matching(...) 5. │ └─testthat:::quasi_capture(...) 6. │ ├─testthat (local) .capture(...) 7. │ │ └─base::withCallingHandlers(...) 8. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 9. └─air (local) happy_results() 10. ├─air:::with_stubbed_credentials(...) at test-howto.R:18:7 11. └─air::howto("How do I get the first element of a list?") at test-howto.R:19:9 12. └─air:::api_answer_or_stop(do, creds, context, call_api) 13. └─air (local) call_api(req$endpoint, creds$key, req$json_body) 14. ├─base::tryCatch(...) 15. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 16. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 17. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 18. └─httr::POST(...) 19. └─httr:::request_perform(req, hu$handle$handle) 20. └─httr:::perform_callback("request", req = req) 21. └─vcr (local) callback(...) 22. └─RequestHandlerHttr$new(req)$handle() 23. └─cli::cli_abort(...) 24. └─rlang::abort(...) ── Error ('test-whatis.R:5:9'): HAPPY: whatis returns results ────────────────── <vcr_unhandled/rlang_error/error/condition> Error in `RequestHandlerHttr$new(req)$handle()`: Failed to find matching request in active cassette, "whatis-happy-return-results". i Use `local_vcr_configure_log()` to get more details. i Learn more in `vignette(vcr::debugging)`. Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-whatis.R:2:3 2. │ └─base::withCallingHandlers(...) 3. ├─air:::with_stubbed_credentials(...) at test-whatis.R:3:5 4. ├─air:::with_stubbed_credentials(...) at test-whatis.R:4:7 5. ├─base::suppressMessages(air::whatis("paste0(vector1, vector2)")) at test-whatis.R:5:9 6. │ └─base::withCallingHandlers(...) 7. └─air::whatis("paste0(vector1, vector2)") 8. └─air:::api_answer_or_stop(this, creds, context, call_api) 9. └─air (local) call_api(req$endpoint, creds$key, req$json_body) 10. ├─base::tryCatch(...) 11. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 12. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 13. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 14. └─httr::POST(...) 15. └─httr:::request_perform(req, hu$handle$handle) 16. └─httr:::perform_callback("request", req = req) 17. └─vcr (local) callback(...) 18. └─RequestHandlerHttr$new(req)$handle() 19. └─cli::cli_abort(...) 20. └─rlang::abort(...) ── Error ('test-whatis.R:16:9'): HAPPY: whatis prints result message ─────────── <vcr_unhandled/rlang_error/error/condition> Error in `RequestHandlerHttr$new(req)$handle()`: Failed to find matching request in active cassette, "whatis-happy-print-results". i Use `local_vcr_configure_log()` to get more details. i Learn more in `vignette(vcr::debugging)`. Backtrace: ▆ 1. ├─testthat::expect_message(good(), ".*\n+") at test-whatis.R:21: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. └─air (local) good() 8. ├─vcr::use_cassette(...) at test-whatis.R:14:5 9. │ └─base::withCallingHandlers(...) 10. ├─air:::with_stubbed_credentials(...) at test-whatis.R:15:7 11. └─air::whatis("paste0(vector1, vector2)") at test-whatis.R:16:9 12. └─air:::api_answer_or_stop(this, creds, context, call_api) 13. └─air (local) call_api(req$endpoint, creds$key, req$json_body) 14. ├─base::tryCatch(...) 15. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 16. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 17. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 18. └─httr::POST(...) 19. └─httr:::request_perform(req, hu$handle$handle) 20. └─httr:::perform_callback("request", req = req) 21. └─vcr (local) callback(...) 22. └─RequestHandlerHttr$new(req)$handle() 23. └─cli::cli_abort(...) 24. └─rlang::abort(...) [ FAIL 5 | WARN 0 | SKIP 0 | PASS 2 ] Error: Test failures In addition: Warning message: `check_cassette_names()` was deprecated in vcr 2.0.0. Execution halted Flavor: r-devel-linux-x86_64-fedora-clang

Version: 0.2.2
Check: tests
Result: ERROR Running ‘testthat.R’ [5s/13s] 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/tests.html > # * https://testthat.r-lib.org/reference/test_package.html#special-files > > library(testthat) > library(air) > > test_check("air") [ FAIL 5 | WARN 0 | SKIP 0 | PASS 2 ] ══ Failed tests ════════════════════════════════════════════════════════════════ ── Error ('test-credentials.R:7:9'): BAD: catches an invalid API key ─────────── <vcr_unhandled/rlang_error/error/condition> Error in `RequestHandlerHttr$new(req)$handle()`: Failed to find matching request in active cassette, "openai-bad-invalid-api-key". i Use `local_vcr_configure_log()` to get more details. i Learn more in `vignette(vcr::debugging)`. Backtrace: ▆ 1. ├─testthat::expect_error(bad_invalid_api_key(), "Incorrect") at test-credentials.R:13: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. └─air (local) bad_invalid_api_key() 8. ├─vcr::use_cassette(...) at test-credentials.R:5:5 9. │ └─base::withCallingHandlers(...) 10. ├─air:::with_stubbed_credentials(...) at test-credentials.R:6:7 11. └─air::howto("How do I get the first element of a list?") at test-credentials.R:7:9 12. └─air:::api_answer_or_stop(do, creds, context, call_api) 13. └─air (local) call_api(req$endpoint, creds$key, req$json_body) 14. ├─base::tryCatch(...) 15. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 16. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 17. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 18. └─httr::POST(...) 19. └─httr:::request_perform(req, hu$handle$handle) 20. └─httr:::perform_callback("request", req = req) 21. └─vcr (local) callback(...) 22. └─RequestHandlerHttr$new(req)$handle() 23. └─cli::cli_abort(...) 24. └─rlang::abort(...) ── Error ('test-howto.R:4:7'): HAPPY: howto returns results ──────────────────── <vcr_unhandled/rlang_error/error/condition> Error in `RequestHandlerHttr$new(req)$handle()`: Failed to find matching request in active cassette, "howto-happy-return-results". i Use `local_vcr_configure_log()` to get more details. i Learn more in `vignette(vcr::debugging)`. Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-howto.R:2:3 2. │ └─base::withCallingHandlers(...) 3. ├─air:::with_stubbed_credentials(...) at test-howto.R:3:5 4. ├─base::suppressMessages(air::howto("How do I get the first element of a list?")) at test-howto.R:4:7 5. │ └─base::withCallingHandlers(...) 6. └─air::howto("How do I get the first element of a list?") 7. └─air:::api_answer_or_stop(do, creds, context, call_api) 8. └─air (local) call_api(req$endpoint, creds$key, req$json_body) 9. ├─base::tryCatch(...) 10. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 11. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 12. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 13. └─httr::POST(...) 14. └─httr:::request_perform(req, hu$handle$handle) 15. └─httr:::perform_callback("request", req = req) 16. └─vcr (local) callback(...) 17. └─RequestHandlerHttr$new(req)$handle() 18. └─cli::cli_abort(...) 19. └─rlang::abort(...) ── Error ('test-howto.R:19:9'): HAPPY: howto prints result message ───────────── <vcr_unhandled/rlang_error/error/condition> Error in `RequestHandlerHttr$new(req)$handle()`: Failed to find matching request in active cassette, "howto-happy-print-results". i Use `local_vcr_configure_log()` to get more details. i Learn more in `vignette(vcr::debugging)`. Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-howto.R:16:3 2. │ └─base::withCallingHandlers(...) 3. ├─testthat::expect_message(happy_results(), ".*\n+") at test-howto.R:22:5 4. │ └─testthat:::expect_condition_matching(...) 5. │ └─testthat:::quasi_capture(...) 6. │ ├─testthat (local) .capture(...) 7. │ │ └─base::withCallingHandlers(...) 8. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 9. └─air (local) happy_results() 10. ├─air:::with_stubbed_credentials(...) at test-howto.R:18:7 11. └─air::howto("How do I get the first element of a list?") at test-howto.R:19:9 12. └─air:::api_answer_or_stop(do, creds, context, call_api) 13. └─air (local) call_api(req$endpoint, creds$key, req$json_body) 14. ├─base::tryCatch(...) 15. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 16. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 17. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 18. └─httr::POST(...) 19. └─httr:::request_perform(req, hu$handle$handle) 20. └─httr:::perform_callback("request", req = req) 21. └─vcr (local) callback(...) 22. └─RequestHandlerHttr$new(req)$handle() 23. └─cli::cli_abort(...) 24. └─rlang::abort(...) ── Error ('test-whatis.R:5:9'): HAPPY: whatis returns results ────────────────── <vcr_unhandled/rlang_error/error/condition> Error in `RequestHandlerHttr$new(req)$handle()`: Failed to find matching request in active cassette, "whatis-happy-return-results". i Use `local_vcr_configure_log()` to get more details. i Learn more in `vignette(vcr::debugging)`. Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-whatis.R:2:3 2. │ └─base::withCallingHandlers(...) 3. ├─air:::with_stubbed_credentials(...) at test-whatis.R:3:5 4. ├─air:::with_stubbed_credentials(...) at test-whatis.R:4:7 5. ├─base::suppressMessages(air::whatis("paste0(vector1, vector2)")) at test-whatis.R:5:9 6. │ └─base::withCallingHandlers(...) 7. └─air::whatis("paste0(vector1, vector2)") 8. └─air:::api_answer_or_stop(this, creds, context, call_api) 9. └─air (local) call_api(req$endpoint, creds$key, req$json_body) 10. ├─base::tryCatch(...) 11. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 12. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 13. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 14. └─httr::POST(...) 15. └─httr:::request_perform(req, hu$handle$handle) 16. └─httr:::perform_callback("request", req = req) 17. └─vcr (local) callback(...) 18. └─RequestHandlerHttr$new(req)$handle() 19. └─cli::cli_abort(...) 20. └─rlang::abort(...) ── Error ('test-whatis.R:16:9'): HAPPY: whatis prints result message ─────────── <vcr_unhandled/rlang_error/error/condition> Error in `RequestHandlerHttr$new(req)$handle()`: Failed to find matching request in active cassette, "whatis-happy-print-results". i Use `local_vcr_configure_log()` to get more details. i Learn more in `vignette(vcr::debugging)`. Backtrace: ▆ 1. ├─testthat::expect_message(good(), ".*\n+") at test-whatis.R:21: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. └─air (local) good() 8. ├─vcr::use_cassette(...) at test-whatis.R:14:5 9. │ └─base::withCallingHandlers(...) 10. ├─air:::with_stubbed_credentials(...) at test-whatis.R:15:7 11. └─air::whatis("paste0(vector1, vector2)") at test-whatis.R:16:9 12. └─air:::api_answer_or_stop(this, creds, context, call_api) 13. └─air (local) call_api(req$endpoint, creds$key, req$json_body) 14. ├─base::tryCatch(...) 15. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers) 16. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]]) 17. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler) 18. └─httr::POST(...) 19. └─httr:::request_perform(req, hu$handle$handle) 20. └─httr:::perform_callback("request", req = req) 21. └─vcr (local) callback(...) 22. └─RequestHandlerHttr$new(req)$handle() 23. └─cli::cli_abort(...) 24. └─rlang::abort(...) [ FAIL 5 | WARN 0 | SKIP 0 | PASS 2 ] Error: Test failures In addition: Warning message: `check_cassette_names()` was deprecated in vcr 2.0.0. Execution halted Flavor: r-devel-linux-x86_64-fedora-gcc

Version: 0.2.2
Check: tests
Result: ERROR Running 'testthat.R' [2s] 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/tests.html > # * https://testthat.r-lib.org/reference/test_package.html#special-files > > library(testthat) > library(air) > > test_check("air") [ FAIL 5 | WARN 0 | SKIP 0 | PASS 2 ] ══ Failed tests ════════════════════════════════════════════════════════════════ ── Error ('test-credentials.R:7:9'): BAD: catches an invalid API key ─────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─testthat::expect_error(bad_invalid_api_key(), "Incorrect") at test-credentials.R:13: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. └─air (local) bad_invalid_api_key() 8. ├─vcr::use_cassette(...) at test-credentials.R:5:5 9. │ └─cassette$call_block(...) 10. ├─air:::with_stubbed_credentials(...) at test-credentials.R:6:7 11. └─air::howto("How do I get the first element of a list?") at test-credentials.R:7:9 12. └─air:::api_answer_or_stop(do, creds, context, call_api) 13. └─air:::parse_response_message(value(res)) 14. └─rjson::fromJSON(json_body) ── Error ('test-howto.R:4:7'): HAPPY: howto returns results ──────────────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-howto.R:2:3 2. │ └─cassette$call_block(...) 3. ├─air:::with_stubbed_credentials(...) at test-howto.R:3:5 4. ├─base::suppressMessages(air::howto("How do I get the first element of a list?")) at test-howto.R:4:7 5. │ └─base::withCallingHandlers(...) 6. └─air::howto("How do I get the first element of a list?") 7. └─air:::api_answer_or_stop(do, creds, context, call_api) 8. └─air:::parse_response_message(value(res)) 9. └─rjson::fromJSON(json_body) ── Error ('test-howto.R:19:9'): HAPPY: howto prints result message ───────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-howto.R:16:3 2. │ └─cassette$call_block(...) 3. ├─testthat::expect_message(happy_results(), ".*\n+") at test-howto.R:22:5 4. │ └─testthat:::expect_condition_matching(...) 5. │ └─testthat:::quasi_capture(...) 6. │ ├─testthat (local) .capture(...) 7. │ │ └─base::withCallingHandlers(...) 8. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 9. └─air (local) happy_results() 10. ├─air:::with_stubbed_credentials(...) at test-howto.R:18:7 11. └─air::howto("How do I get the first element of a list?") at test-howto.R:19:9 12. └─air:::api_answer_or_stop(do, creds, context, call_api) 13. └─air:::parse_response_message(value(res)) 14. └─rjson::fromJSON(json_body) ── Error ('test-whatis.R:5:9'): HAPPY: whatis returns results ────────────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─vcr::use_cassette(...) at test-whatis.R:2:3 2. │ └─cassette$call_block(...) 3. ├─air:::with_stubbed_credentials(...) at test-whatis.R:3:5 4. ├─air:::with_stubbed_credentials(...) at test-whatis.R:4:7 5. ├─base::suppressMessages(air::whatis("paste0(vector1, vector2)")) at test-whatis.R:5:9 6. │ └─base::withCallingHandlers(...) 7. └─air::whatis("paste0(vector1, vector2)") 8. └─air:::api_answer_or_stop(this, creds, context, call_api) 9. └─air:::parse_response_message(value(res)) 10. └─rjson::fromJSON(json_body) ── Error ('test-whatis.R:16:9'): HAPPY: whatis prints result message ─────────── Error in `rjson::fromJSON(json_body)`: attempt to set index 1/1 in SET_STRING_ELT Backtrace: ▆ 1. ├─testthat::expect_message(good(), ".*\n+") at test-whatis.R:21: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. └─air (local) good() 8. ├─vcr::use_cassette(...) at test-whatis.R:14:5 9. │ └─cassette$call_block(...) 10. ├─air:::with_stubbed_credentials(...) at test-whatis.R:15:7 11. └─air::whatis("paste0(vector1, vector2)") at test-whatis.R:16:9 12. └─air:::api_answer_or_stop(this, creds, context, call_api) 13. └─air:::parse_response_message(value(res)) 14. └─rjson::fromJSON(json_body) [ FAIL 5 | WARN 0 | SKIP 0 | PASS 2 ] Error: Test failures Execution halted Flavor: r-devel-windows-x86_64