Running ‘run-all.R’ [22s/21s]
Running the tests in ‘tests/run-all.R’ failed.
Complete output:
  > library("testthat")
  > 
  > test_check("piecepackr")
  Loading required package: piecepackr
  [ FAIL 3 | WARN 0 | SKIP 12 | PASS 182 ]
  
  ══ Skipped tests ═══════════════════════════════════════════════════════════════
  • On CRAN (12)
  
  ══ Failed tests ════════════════════════════════════════════════════════════════
  ── Error (test-draw_component.R:79:5): save_piece_images works as expected ─────
  Error in `UseMethod("isEmptyCoords")`: no applicable method for 'isEmptyCoords' applied to an object of class "list"
  Backtrace:
       ▆
    1. ├─piecepackr::save_piece_images(...) at test-draw_component.R:79:4
    2. │ └─piecepackr:::make_images_helper(directory, cfg, f, a)
    3. │   ├─base::suppressWarnings(...)
    4. │   │ └─base::withCallingHandlers(...)
    5. │   └─piecepackr::grid.piece(cs, NA, NA, cfg)
    6. │     ├─grid::grid.draw(grob)
    7. │     └─grid:::grid.draw.gTree(grob)
    8. │       └─grDevices::recordGraphics(drawGTree(x), list(x = x), getNamespace("grid"))
    9. ├─grid:::drawGTree(x)
   10. │ ├─grid::grid.draw(x$children[[i]], recording = FALSE)
   11. │ └─grid:::grid.draw.gTree(x$children[[i]], recording = FALSE)
   12. │   └─grDevices::recordGraphics(drawGTree(x), list(x = x), getNamespace("grid"))
   13. ├─grid:::drawGTree(x)
   14. │ ├─grid::grid.draw(x$children[[i]], recording = FALSE)
   15. │ └─grid:::grid.draw.gTree(x$children[[i]], recording = FALSE)
   16. │   └─grDevices::recordGraphics(drawGTree(x), list(x = x), getNamespace("grid"))
   17. ├─grid:::drawGTree(x)
   18. │ ├─grid::grid.draw(x$children[[i]], recording = FALSE)
   19. │ └─grid:::grid.draw.gTree(x$children[[i]], recording = FALSE)
   20. │   └─grDevices::recordGraphics(drawGTree(x), list(x = x), getNamespace("grid"))
   21. ├─grid:::drawGTree(x)
   22. │ ├─grid::grid.draw(x$children[[i]], recording = FALSE)
   23. │ └─grid:::grid.draw.gTree(x$children[[i]], recording = FALSE)
   24. │   └─grDevices::recordGraphics(drawGTree(x), list(x = x), getNamespace("grid"))
   25. └─grid:::drawGTree(x)
   26.   ├─grid::makeContent(x)
   27.   └─gridGeometry:::makeContent.polyclipgrob(x)
   28.     └─x$closedFn(closedPaths, name = paste0(x$name, ".closed"))
   29.       └─grid::isEmptyCoords(x)
  ── Error (test-draw_component.R:113:5): no regressions in figures ──────────────
  Error in `polyclip::polyclip(polyA, polyB, op = op, closed = closed, ...)`: Argument B should be a list of lists, each containing vectors x,y
  Backtrace:
       ▆
    1. ├─vdiffr::expect_doppelganger(...) at test-draw_component.R:113:4
    2. │ └─vdiffr writer(fig, testcase, title)
    3. │   ├─vdiffr:::print_plot(plot, title)
    4. │   └─vdiffr:::print_plot.function(plot, title)
    5. │     └─piecepackr p()
    6. │       └─piecepackr dc("tile_back", bleed = TRUE) at test-draw_component.R:113:37
    7. │         └─piecepackr::grid.piece(..., cfg = cfg, default.units = "npc") at test-draw_component.R:103:8
    8. │           ├─grid::grid.draw(grob)
    9. │           └─grid:::grid.draw.gTree(grob)
   10. │             └─grDevices::recordGraphics(drawGTree(x), list(x = x), getNamespace("grid"))
   11. ├─grid:::drawGTree(x)
   12. │ ├─grid::grid.draw(x$children[[i]], recording = FALSE)
   13. │ └─grid:::grid.draw.gTree(x$children[[i]], recording = FALSE)
   14. │   └─grDevices::recordGraphics(drawGTree(x), list(x = x), getNamespace("grid"))
   15. ├─grid:::drawGTree(x)
   16. │ ├─grid::grid.draw(x$children[[i]], recording = FALSE)
   17. │ └─grid:::grid.draw.gTree(x$children[[i]], recording = FALSE)
   18. │   └─grDevices::recordGraphics(drawGTree(x), list(x = x), getNamespace("grid"))
   19. ├─grid:::drawGTree(x)
   20. │ ├─grid::grid.draw(x$children[[i]], recording = FALSE)
   21. │ └─grid:::grid.draw.gTree(x$children[[i]], recording = FALSE)
   22. │   └─grDevices::recordGraphics(drawGTree(x), list(x = x), getNamespace("grid"))
   23. └─grid:::drawGTree(x)
   24.   ├─grid::makeContent(x)
   25.   └─gridGeometry:::makeContent.polyclipgrob(x)
   26.     ├─base::do.call(...)
   27.     ├─gridGeometry `<fn>`(A = `<rect>`, B = `<bsc_pc_s>`, op = "minus", closed = TRUE)
   28.     └─gridGeometry:::polyclip.grob(...)
   29.       └─gridGeometry:::polyclipGridGrob(A, B, op, closed, ...)
   30.         └─polyclip::polyclip(polyA, polyB, op = op, closed = closed, ...)
  ── Error (test-obj.R:3:5): save_piece_obj works ────────────────────────────────
  Error in `unit(x, default.units)`: 'x' and 'units' must have length > 0
  Backtrace:
       ▆
    1. ├─piecepackr::save_piece_obj("tile_face", z = NA, cfg = cfg) at test-obj.R:3:4
    2. │ └─cfg$save_obj(...)
    3. │   └─piecepackr obj_fn(...)
    4. │     └─piecepackr:::write_2s_texture(...)
    5. │       └─piecepackr:::draw_piece_and_bleed(piece_face, suit, rank, cfg)
    6. │         ├─grid::grid.draw(b)
    7. │         └─grid:::grid.draw.gTree(b)
    8. │           └─grDevices::recordGraphics(drawGTree(x), list(x = x), getNamespace("grid"))
    9. └─grid:::drawGTree(x)
   10.   ├─grid::makeContent(x)
   11.   └─piecepackr:::makeContent.pp_polyclip(x)
   12.     └─gridGeometry::xyListPath(grobPoints(clip))
   13.       └─grid::pathGrob(...)
   14.         └─grid::unit(x, default.units)
  
  [ FAIL 3 | WARN 0 | SKIP 12 | PASS 182 ]
  Deleting unused snapshots:
  • draw_component/alpha-and-scale-op.svg
  • draw_component/belt-face-s1.svg
  • draw_component/coin-back-s4-inverted.svg
  • draw_component/coin-back-s4.svg
  • draw_component/coin-face-op.svg
  • draw_component/coin-face-r1.svg
  • draw_component/coin-face-r2.svg
  • draw_component/coin-face-r4.svg
  • draw_component/coin-face-r4concave8.svg
  • draw_component/coin-face-r4convex8.svg
  • draw_component/coin-face-r4italic.svg
  • draw_component/coin-face-r4oval.svg
  • draw_component/coin-face-r4pyramid.svg
  • draw_component/diagram-op-ppgf.svg
  • draw_component/diagram-op.svg
  • draw_component/die-face-op.svg
  • draw_component/die-face-s2-r5-convex5mat.svg
  • draw_component/die-face-s2-r5-kite.svg
  • draw_component/die-face-s2-r5.svg
  • draw_component/die-face-s3-r2.svg
  • draw_component/die-face-s4-r1.svg
  • draw_component/die-layoutrf-opposites-sum-to-5.svg
  • draw_component/different-sizes.svg
  • draw_component/draw-components-default.svg
  • draw_component/draw-components.svg
  • draw_component/matchstick-back-s3-r6.svg
  • draw_component/matchstick-face-op.svg
  • draw_component/matchstick-face-s1-r1.svg
  • draw_component/matchstick-face-s1-r5.svg
  • draw_component/matchstick-face-s2-r2.svg
  • draw_component/matchstick-face-s2-r6.svg
  • draw_component/matchstick-face-s3-r3.svg
  • draw_component/matchstick-face-s4-r4.svg
  • draw_component/meeple.svg
  • draw_component/pawn-back-s2.svg
  • draw_component/pawn-face-irregular-convex.svg
  • draw_component/pawn-face-op.svg
  • draw_component/pawn-face-s3.svg
  • draw_component/piece-edges.svg
  • draw_component/preview-5s.svg
  • draw_component/preview-6s.svg
  • draw_component/preview.svg
  • draw_component/pyramid-back-s4-r1.svg
  • draw_component/pyramid-face-op.svg
  • draw_component/pyramid-face-s1-r6.svg
  • draw_component/pyramid-face-s2-r1.svg
  • draw_component/pyramid-layout-s3-r4.svg
  • draw_component/pyramid-left-s2-r5.svg
  • draw_component/pyramid-right-s3-r2.svg
  • draw_component/pyramid-top-op.svg
  • draw_component/pyramid-top-s4-r3.svg
  • draw_component/rankdie-layoutrf-suitasace.svg
  • draw_component/saucer-back.svg
  • draw_component/saucer-face-s4.svg
  • draw_component/scale.svg
  • draw_component/suitdie-face-s1.svg
  • draw_component/suitdie-face-s5.svg
  • draw_component/suitdie-face-s6.svg
  • draw_component/suitdie-layoutlf.svg
  • draw_component/suitdie-layoutrf-5suits.svg
  • draw_component/suitdie-layoutrf-6suits.svg
  • draw_component/suitdie-layoutrf.svg
  • draw_component/suitrankdie-layoutlf.svg
  • draw_component/suitrankdie-layoutrf-5suits.svg
  • draw_component/suitrankdie-layoutrf-6suits.svg
  • draw_component/tile-back-hex.svg
  • draw_component/tile-back-svg.svg
  • draw_component/tile-back-thickborder.svg
  • draw_component/tile-back-thickgrid.svg
  • draw_component/tile-face-op-roundrect.svg
  • draw_component/tile-face-op.svg
  • draw_component/tile-face-s1-r1.svg
  • draw_component/tile-face-s2-r3.svg
  • draw_component/tile-face-s3-r2-suit-as-ace.svg
  • draw_component/tile-face-s3-r2.svg
  • draw_component/tiles-faces.svg
  • game_systems/alquerque.svg
  • game_systems/black-joker-no-star.svg
  • game_systems/checkers.svg
  • game_systems/dominoes.svg
  • game_systems/go.svg
  • game_systems/joystick-op.svg
  • game_systems/joystick.svg
  • game_systems/king-of-stars.svg
  • game_systems/knight-of-diamonds.svg
  • game_systems/nine-morris.svg
  • game_systems/red-joker.svg
  • game_systems/reversi.svg
  • game_systems/seven-morris.svg
  • game_systems/six-morris.svg
  • game_systems/ten-of-clubs.svg
  • game_systems/three-morris.svg
  • game_systems/twelve-morris.svg
  • game_systems/two-morris.svg
  • op_transform/matchsticks-045.svg
  • op_transform/oblique-pyramids.svg
  • op_transform/op-transform-135.svg
  • op_transform/op-transform-225.svg
  • op_transform/op-transform-315.svg
  • op_transform/pyramid-tops-larger-on-top.svg
  • op_transform/pyramid-tops-smaller-on-top.svg
  • op_transform/rotated-tile-faces.svg
  • op_transform/simple-points.svg
  • op_transform/simple-square.svg
  • pp_shape/add-checkers-convex8.svg
  • pp_shape/add-checkers-transparent.svg
  • pp_shape/circle.svg
  • pp_shape/hex-pattern.svg
  • pp_shape/polyclip-circle.svg
  • pp_shape/roundrect.svg
  • render_piece/render-piece-algebraic.svg
  • render_piece/render-piece-cartesian.svg
  Error: Test failures
  Execution halted