R Under development (unstable) (2025-06-13 r88311 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(paddleR) > > test_check("paddleR") [ FAIL 5 | WARN 0 | SKIP 46 | PASS 25 ] ══ Skipped tests (46) ══════════════════════════════════════════════════════════ • On CRAN (46): 'test-customers.R:4:3', 'test-customers.R:15:3', 'test-customers.R:25:3', 'test-customers.R:35:3', 'test-customers.R:48:3', 'test-customers.R:61:3', 'test-customers.R:67:3', 'test-customers.R:74:3', 'test-customers.R:80:3', 'test-customers.R:86:3', 'test-customers.R:117:3', 'test-customers.R:139:3', 'test-customers.R:165:3', 'test-customers.R:184:3', 'test-customers.R:211:3', 'test-events.R:2:3', 'test-events.R:11:3', 'test-prices.R:2:3', 'test-prices.R:19:3', 'test-prices.R:40:3', 'test-prices.R:73:3', 'test-prices.R:84:3', 'test-prices.R:94:3', 'test-prices.R:103:3', 'test-products.R:4:3', 'test-products.R:20:3', 'test-products.R:35:3', 'test-products.R:44:3', 'test-products.R:53:3', 'test-products.R:60:3', 'test-products.R:73:3', 'test-products.R:79:3', 'test-subscriptions.R:2:3', 'test-subscriptions.R:22:3', 'test-subscriptions.R:48:3', 'test-subscriptions.R:64:3', 'test-subscriptions.R:90:3', 'test-subscriptions.R:105:3', 'test-subscriptions.R:116:3', 'test-subscriptions.R:164:3', 'test-subscriptions.R:173:3', 'test-subscriptions.R:185:3', 'test-subscriptions.R:199:3', 'test-transactions.R:2:3', 'test-transactions.R:21:3', 'test-transactions.R:69:3' ══ Failed tests ════════════════════════════════════════════════════════════════ ── Error ('test-customers.R:111:3'): paddle_list_customer_addresses() validates inputs correctly ── Error: Paddle API error: Authentication header included, but incorrectly formatted. Status code: 403 Backtrace: ▆ 1. ├─testthat::expect_silent(...) at test-customers.R:111:3 2. │ └─testthat:::quasi_capture(enquo(object), NULL, evaluate_promise) 3. │ ├─testthat (local) .capture(...) 4. │ │ ├─withr::with_output_sink(...) 5. │ │ │ └─base::force(code) 6. │ │ ├─base::withCallingHandlers(...) 7. │ │ └─base::withVisible(code) 8. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 9. └─paddleR::paddle_list_customer_addresses(...) 10. └─paddleR:::get(url) 11. └─paddleR:::handle_paddle_response(res) ── Error ('test-discounts.R:14:3'): paddle_list_discounts() validates inputs correctly ── Error: Paddle API error: Authentication header included, but incorrectly formatted. Status code: 403 Backtrace: ▆ 1. ├─testthat::expect_silent(paddle_list_discounts(order_by = "id[ASC]")) at test-discounts.R:14:3 2. │ └─testthat:::quasi_capture(enquo(object), NULL, evaluate_promise) 3. │ ├─testthat (local) .capture(...) 4. │ │ ├─withr::with_output_sink(...) 5. │ │ │ └─base::force(code) 6. │ │ ├─base::withCallingHandlers(...) 7. │ │ └─base::withVisible(code) 8. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 9. └─paddleR::paddle_list_discounts(order_by = "id[ASC]") 10. └─paddleR:::get(url) 11. └─paddleR:::handle_paddle_response(res) ── Error ('test-discounts.R:58:3'): paddle_update_discount() validates inputs correctly ── Error: Paddle API error: Authentication header included, but incorrectly formatted. Status code: 403 Backtrace: ▆ 1. ├─testthat::expect_silent(...) at test-discounts.R:58:3 2. │ └─testthat:::quasi_capture(enquo(object), NULL, evaluate_promise) 3. │ ├─testthat (local) .capture(...) 4. │ │ ├─withr::with_output_sink(...) 5. │ │ │ └─base::force(code) 6. │ │ ├─base::withCallingHandlers(...) 7. │ │ └─base::withVisible(code) 8. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 9. └─paddleR::paddle_update_discount(...) 10. └─paddleR:::update(url, body) 11. └─paddleR:::handle_paddle_response(res) ── Error ('test-subscriptions.R:12:3'): paddle_list_subscriptions() works with valid inputs ── Error: Paddle API error: Authentication header included, but incorrectly formatted. Status code: 403 Backtrace: ▆ 1. ├─testthat::expect_silent(...) at test-subscriptions.R:12:3 2. │ └─testthat:::quasi_capture(enquo(object), NULL, evaluate_promise) 3. │ ├─testthat (local) .capture(...) 4. │ │ ├─withr::with_output_sink(...) 5. │ │ │ └─base::force(code) 6. │ │ ├─base::withCallingHandlers(...) 7. │ │ └─base::withVisible(code) 8. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 9. └─paddleR::paddle_list_subscriptions(...) 10. └─paddleR:::get(url) 11. └─paddleR:::handle_paddle_response(res) ── Error ('test-transactions.R:112:3'): paddle_preview_transaction() validates inputs and succeeds ── Error: Paddle API error: Authentication header included, but incorrectly formatted. Status code: 403 Backtrace: ▆ 1. ├─testthat::expect_silent(...) at test-transactions.R:112:3 2. │ └─testthat:::quasi_capture(enquo(object), NULL, evaluate_promise) 3. │ ├─testthat (local) .capture(...) 4. │ │ ├─withr::with_output_sink(...) 5. │ │ │ └─base::force(code) 6. │ │ ├─base::withCallingHandlers(...) 7. │ │ └─base::withVisible(code) 8. │ └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo)) 9. └─paddleR::paddle_preview_transaction(...) 10. └─paddleR:::post(...) 11. └─paddleR:::handle_paddle_response(res) [ FAIL 5 | WARN 0 | SKIP 46 | PASS 25 ] Error: Test failures Execution halted