##// END OF EJS Templates
testing: add file storage integration for bad hashes and censoring...
testing: add file storage integration for bad hashes and censoring In order to implement these tests, we need a backdoor to write data into storage backends while bypassing normal checks. We invent a callable to do that. As part of writing the tests, I found a bug with censorrevision() pretty quickly! After calling censorrevision(), attempting to access revision data for an affected node raises a cryptic error related to malformed compression. This appears to be due to the revlog not adjusting delta chains as part of censoring. I also found a bug with regards to hash verification and revision fulltext caching. Essentially, we cache the fulltext before hash verification. If we look up the fulltext after a failed hash verification, we don't get a hash verification exception. Furthermore, the behavior of revision(raw=True) can be inconsistent depending on the order of operations. I'll be fixing both these bugs in subsequent commits. Differential Revision: https://phab.mercurial-scm.org/D4865
Gregory Szorc -
r40087:cdf61ab1 default
Show More
Name Size Modified Last Commit Author
/ mercurial / utils
__init__.py Loading ...
cborutil.py Loading ...
dateutil.py Loading ...
interfaceutil.py Loading ...
procutil.py Loading ...
storageutil.py Loading ...
stringutil.py Loading ...