R Under development (unstable) (2025-03-05 r87891 ucrt) -- "Unsuffered Consequences" Copyright (C) 2025 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > # 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(tidyllm) Attaching package: 'tidyllm' The following object is masked from 'package:stats': embed > > test_check("tidyllm") [ FAIL 1 | WARN 0 | SKIP 0 | PASS 284 ] ══ Failed tests ════════════════════════════════════════════════════════════════ ── Error ('test_api_voyage.R:52:5'): voyage_embedding returns expected response for multimodal input ── Error in `stop_request(req)`: An unexpected request was made: POST https://api.voyageai.com/v1/multimodalembeddings {"inputs":[{"content":[{"type":"text","text":"A banana"},{"type":"image_base64","image_base64":"data:image/png;base64,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"}]}],"model":"voyage-multimodal-3"} Expected mock file: api.voyageai.com/v1/multimodalembeddings-9959b9-POST.* Backtrace: ▆ 1. ├─httptest2::with_mock_dir(...) at test_api_voyage.R:39:3 2. │ ├─httptest2:::with_mock_path(...) 3. │ │ └─base::eval.parent(expr) 4. │ │ └─base::eval(expr, p) 5. │ └─httptest2::with_mock_api(expr) 6. │ └─base::eval.parent(expr) 7. │ └─base::eval(expr, p) 8. └─tidyllm::voyage_embedding(list("A banana", img(temp_img))) at test_api_voyage.R:52:5 9. └─tidyllm:::perform_embedding_request(...) 10. └─tidyllm:::perform_generic_request(.request, .timeout, .max_tries) 11. └─httr2::req_perform(...) 12. └─httptest2 (local) mock(req) 13. └─httptest2:::stop_request(req) 14. └─rlang::abort(out, mockfile = req$mockfile, class = "httptest2_request") [ FAIL 1 | WARN 0 | SKIP 0 | PASS 284 ] Error: Test failures Execution halted