##// END OF EJS Templates
changegroup: factor changelog chunk generation into own function...
changegroup: factor changelog chunk generation into own function We have separate functions for generating manifests and filelogs. Let's split changelog into its own function so things are consistent. As part of this, we refactor the code slightly. Before, the changelog linknode callback was updating state on variables inherited via a closure. Since the closure is now separate from generate(), we need to a way pass state between generate() and _generatechangelog(). The return value of _generatechangelog() is a 2-tuple where the first item is a dict containing accumulated state. We then alias some of its members into the scope of generate() to reduce code churn. I will be converting other functions to a similar pattern in future commits. Differential Revision: https://phab.mercurial-scm.org/D4133

File last commit:

r37513:b1fb341d default
r39012:f7228c90 default
Show More
test_module_attributes.py
59 lines | 1.6 KiB | text/x-python | PythonLexer
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 from __future__ import unicode_literals
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 import unittest
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 import zstandard as zstd
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435
Gregory Szorc
zstd: vendor python-zstandard 0.7.0...
r30895 from . common import (
make_cffi,
)
@make_cffi
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 class TestModuleAttributes(unittest.TestCase):
def test_version(self):
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 self.assertEqual(zstd.ZSTD_VERSION, (1, 3, 4))
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435
def test_constants(self):
self.assertEqual(zstd.MAX_COMPRESSION_LEVEL, 22)
self.assertEqual(zstd.FRAME_HEADER, b'\x28\xb5\x2f\xfd')
def test_hasattr(self):
attrs = (
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 'CONTENTSIZE_UNKNOWN',
'CONTENTSIZE_ERROR',
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 'COMPRESSION_RECOMMENDED_INPUT_SIZE',
'COMPRESSION_RECOMMENDED_OUTPUT_SIZE',
'DECOMPRESSION_RECOMMENDED_INPUT_SIZE',
'DECOMPRESSION_RECOMMENDED_OUTPUT_SIZE',
'MAGIC_NUMBER',
'WINDOWLOG_MIN',
'WINDOWLOG_MAX',
'CHAINLOG_MIN',
'CHAINLOG_MAX',
'HASHLOG_MIN',
'HASHLOG_MAX',
'HASHLOG3_MAX',
'SEARCHLOG_MIN',
'SEARCHLOG_MAX',
'SEARCHLENGTH_MIN',
'SEARCHLENGTH_MAX',
'TARGETLENGTH_MIN',
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 'LDM_MINMATCH_MIN',
'LDM_MINMATCH_MAX',
'LDM_BUCKETSIZELOG_MAX',
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 'STRATEGY_FAST',
'STRATEGY_DFAST',
'STRATEGY_GREEDY',
'STRATEGY_LAZY',
'STRATEGY_LAZY2',
'STRATEGY_BTLAZY2',
'STRATEGY_BTOPT',
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 'STRATEGY_BTULTRA',
'DICT_TYPE_AUTO',
'DICT_TYPE_RAWCONTENT',
'DICT_TYPE_FULLDICT',
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 )
for a in attrs:
Gregory Szorc
zstd: vendor python-zstandard 0.7.0...
r30895 self.assertTrue(hasattr(zstd, a), a)