Files
concrete/frontends/concrete-python/tests/extensions/test_round_bit_pattern.py

38 lines
868 B
Python

"""
Tests of 'round_bit_pattern' extension.
"""
from concrete import fhe
def test_dump_load_auto_rounder():
"""
Test 'dump_dict' and 'load_dict' methods of AutoRounder.
"""
rounder = fhe.AutoRounder(target_msbs=3)
rounder.is_adjusted = True
rounder.input_min = 10
rounder.input_max = 20
rounder.input_bit_width = 5
rounder.lsbs_to_remove = 2
dumped = rounder.dump_dict()
assert dumped == {
"target_msbs": 3,
"is_adjusted": True,
"input_min": 10,
"input_max": 20,
"input_bit_width": 5,
"lsbs_to_remove": 2,
}
loaded = fhe.AutoRounder.load_dict(dumped)
assert loaded.target_msbs == 3
assert loaded.is_adjusted
assert loaded.input_min == 10
assert loaded.input_max == 20
assert loaded.input_bit_width == 5
assert loaded.lsbs_to_remove == 2