Skip to content

test: cover migrated structural-properties signatures - #2785

Merged
krlmlr merged 1 commit into
mainfrom
claude/ellipsis-tests-structural
Jul 27, 2026
Merged

test: cover migrated structural-properties signatures#2785
krlmlr merged 1 commit into
mainfrom
claude/ellipsis-tests-structural

Conversation

@krlmlr

@krlmlr krlmlr commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

Argument-coverage tests for the 37 functions migrated in the already-merged
#2759 (structural-properties, incl. components, paths, and connect()).

For every migrated function:

  • each keyword-only tail argument is exercised by name with a
    non-default value and a real assertion (gaps only — existing named
    coverage was reused, not duplicated);
  • a legacy positional recovery test proves the old call form still works
    and emits the soft deprecation
    (lifecycle::expect_deprecated() + equality against the named call).

Tallies: ^structural-properties$ FAIL 0 · PASS 326;
^components$ FAIL 0 · PASS 54; ^paths$ FAIL 0 · PASS 28.

Notes:

  • Results containing igraph.vs/igraph.es are compared with
    expect_equal()/expect_identical_graphs() — every call mints a fresh
    weakref env attribute, so identical() is FALSE by construction.
  • The recovery test for shortest_paths(inbound.edges = TRUE) works around
    a pre-existing main bug (create_es() rejects the 0 sentinel;
    fixed independently on feat: expose widest paths functions as widest_paths() and widest_path_widths() #2408) by setting return.vs.es = FALSE.
  • feedback_arc_set/feedback_vertex_set blocks use the file's
    skip_if_no_glpk() convention.

Part of the lifecycle/coverage exercise on top of the #2782 baseline.


Generated by Claude Code

Add argument-coverage tests for the 37 functions of the
structural-properties ellipsis migration
(R/structural-properties.R, R/components.R, R/paths.R,
and connect() from R/games.R):
every keyword-only tail argument is passed by name with a
non-default value and asserted on,
and the legacy positional form is exercised through
lifecycle::expect_deprecated() with an equality check
against the equivalent named call.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016M32izVHZPfxAqemAe4BrX
@krlmlr
krlmlr merged commit 94dbb2d into main Jul 27, 2026
6 checks passed
@krlmlr
krlmlr deleted the claude/ellipsis-tests-structural branch July 27, 2026 17:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants