Skip to content

rsync — all cases

Every case file under src/clauz3/stdlib/rsync/tests/cases/, inlined. _pass cases must prove; _fail cases must not.

See the curated walk-through for the trusted module and contract vocabulary.

src/clauz3/stdlib/rsync/tests/cases/never_dest_under_fail.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.never_dest_under("/etc"))
def main() -> None:
    rsync("/repo/build/", "/etc/cron.d/", False, ["-a"])

src/clauz3/stdlib/rsync/tests/cases/never_dest_under_pass.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.never_dest_under("/etc"))
def main() -> None:
    rsync("/repo/build/", "/backup/build/", False, ["-a"])

src/clauz3/stdlib/rsync/tests/cases/no_delete_fail.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.no_delete())
def main() -> None:
    rsync("/repo/build/", "/backup/build/", True, ["-a"])

src/clauz3/stdlib/rsync/tests/cases/no_delete_pass.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.no_delete())
def main() -> None:
    rsync("/repo/build/", "/backup/build/", False, ["-a"])

src/clauz3/stdlib/rsync/tests/cases/no_syncs_fail.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.no_syncs())
def main() -> None:
    rsync("/repo/build/", "/backup/build/", False, ["-a"])

src/clauz3/stdlib/rsync/tests/cases/no_syncs_pass.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync  # noqa: F401

import clauz3


@clauz3.guarantee(rsync_rules.no_syncs())
def main() -> None:
    pass

src/clauz3/stdlib/rsync/tests/cases/only_dest_under_fail.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.only_dest_under("/backup"))
def main() -> None:
    rsync("/repo/build/", "/etc/", False, ["-a"])

src/clauz3/stdlib/rsync/tests/cases/only_dest_under_pass.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.only_dest_under("/backup"))
def main() -> None:
    rsync("/repo/build/", "/backup/build/", False, ["-a"])

src/clauz3/stdlib/rsync/tests/cases/only_src_under_fail.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.only_src_under("/repo"))
def main() -> None:
    rsync("/home/user/.ssh/", "/backup/keys/", False, ["-a"])

src/clauz3/stdlib/rsync/tests/cases/only_src_under_pass.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.only_src_under("/repo"))
def main() -> None:
    rsync("/repo/build/", "/backup/build/", False, ["-a"])

src/clauz3/stdlib/rsync/tests/cases/syncs_at_most_fail.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.syncs_at_most(2))
def main() -> None:
    rsync("/repo/build/", "/backup/build/", False, ["-a"])
    rsync("/repo/dist/", "/backup/dist/", False, ["-a"])
    rsync("/repo/docs/", "/backup/docs/", False, ["-a"])

src/clauz3/stdlib/rsync/tests/cases/syncs_at_most_pass.py

# ruff: noqa: F821
from tools.rsync.trusted import contracts as rsync_rules
from tools.rsync.trusted.effects import rsync

import clauz3


@clauz3.guarantee(rsync_rules.syncs_at_most(2))
def main() -> None:
    rsync("/repo/build/", "/backup/build/", False, ["-a"])
    rsync("/repo/dist/", "/backup/dist/", False, ["-a"])