Closed OpenBagTwo closed 1 year ago
I can't believe I forgot I'd already found (and then just failed to apply) the solution to the whac-a-bug...
Well this is interesting... it looks like -p enderchest.test.plugin
is completely messing up the coverage report...
For now I appear to have things working by generating the report manually:
coverage run --source enderchest -m pytest --use-local-ssh
coverage report -m
but I need to either find an existing bug report (and hopefully a workaround) or file a bug report.
Yeah, this appears to be a known pytest-cov limitation: https://github.com/pytest-dev/pytest-cov/issues/587
I'm calling it with regard to unit tests. Even though overall coverage is only up two percentage points (85%), coverage within the sync subpackage is looking good, with the stuff that's not tested (and not "no cover" pragma'd) being stuff that should be tested, but isn't currently worth the level of effort.
Trying this for real, some observations:
I performed an enderchest open
and used the -v
flag to track the progress, but cancelled something like halfway through ('cuz recursing through 22G of Minecraft files is sloooowwww).
I also ran an enderchest close -v --dry-run
which produced the expected diff, so I'm feeling good enough about this to merge.
For the release candidate, I'll set up a smaller test chest. And, of course, if anyone reading this dailies Windows and wants to try @dev
between now and the RC, I'd definitely love feedback!
Summary
Addresses #42 by implementing pure-Python syncing via SFTP and Paramiko
List of Changes
test_sync
to separate out tests of the sync utilities into their own test moduledelete
flag (which, FWIW, isn't currently exposed through the CLI)Tech Debt and Other Concerns
rsync
actually computes diffs any more accurately.To Do
@xfail
these tests (and move this bullet into "Tech Debt")verbosity
andtimeout
sync args, or lose themValidation Performed
push
and apull
on Windows, grabbing from a POSIX machinePR Type
release
)Checklist:
mkdocs serve
locally and ensured that all API docs and changes I have made to the static pages are rendering correctly, with all links working