]> git.ipfire.org Git - thirdparty/rsync.git/commit
testsuite: add depth/cross-dir/daemon coverage helpers to rsyncfns.py
authorAndrew Tridgell <andrew@tridgell.net>
Sat, 23 May 2026 21:47:10 +0000 (07:47 +1000)
committerAndrew Tridgell <andrew@tridgell.net>
Sun, 24 May 2026 02:31:52 +0000 (12:31 +1000)
commit1d828f35ca546aed8ef37863cec5b4db3214fb43
tree59e7575b43c2eee2e26444cfbec4158ac79122d7
parent7bba25e6751d9900e1b71a4ae34aa8cbc35d6f96
testsuite: add depth/cross-dir/daemon coverage helpers to rsyncfns.py

Add helpers for the option-coverage expansion (the path-handling restructure
changes parent-component resolution, so options must be exercised at depth and
across directory boundaries):

  * make_tree() builds a tree with a regular file at every level so a property
    can be checked at the tree root and >=3 levels deep;
  * walk_files()/walk_dirs() iterate entries for per-level assertions;
  * assert_same/assert_mode/assert_mtime_close/assert_is_symlink/
    assert_hardlinked/assert_not_hardlinked/assert_exists/assert_not_exists
    assert the concrete property an option controls (not just dest == src);
  * write_daemon_conf() writes an arbitrary rsyncd.conf (globals + modules)
    for daemon-parameter tests, beyond build_rsyncd_conf's fixed four modules;
  * forced_protocol() lets protocol-sensitive tests gate sub-cases.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
testsuite/rsyncfns.py