"""Tests for rsync push permission flags.""" from server.application.services.sync_engine_v2 import ( rsync_push_permission_args, rsync_push_permission_summary, ) from server.config import settings def test_rsync_push_permission_defaults(): args = rsync_push_permission_args() assert "--chown" in args assert "www:www" in args assert "--chmod" in args assert "D755,F755" in args assert rsync_push_permission_summary() == "chown=www:www chmod=D755,F755" def test_rsync_push_permission_disabled(monkeypatch): monkeypatch.setattr(settings, "RSYNC_PUSH_CHOWN", "") monkeypatch.setattr(settings, "RSYNC_PUSH_CHMOD", "") assert rsync_push_permission_args() == [] assert rsync_push_permission_summary() is None def test_rsync_push_permission_rejects_invalid_chown(monkeypatch): monkeypatch.setattr(settings, "RSYNC_PUSH_CHOWN", "www;rm -rf /") monkeypatch.setattr(settings, "RSYNC_PUSH_CHMOD", "") assert rsync_push_permission_args() == []