##// 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 / pure
__init__.py Loading ...
base85.py Loading ...
bdiff.py Loading ...
charencode.py Loading ...
mpatch.py Loading ...
osutil.py Loading ...
parsers.py Loading ...