fix decimal arithmetic curriculum to respect constraints (#430)

* fix decimal arithmetic curriculum to respect constraints

* update test accordingly
This commit is contained in:
Oliver Stanley 2025-05-06 19:23:19 +01:00 committed by GitHub
parent dca8117e7e
commit 3df26e0fb2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 8 additions and 8 deletions

View file

@ -63,25 +63,25 @@ def test_decimal_arithmetic_curriculum():
base_cfg: DecimalArithmeticConfig = curriculum.generate_configuration(base_value)
assert base_cfg.seed == 42
assert base_cfg.size == 200
assert base_cfg.precision == 5
assert base_cfg.min_num_decimal_places == 3 and base_cfg.max_num_decimal_places == 5
assert base_cfg.precision == 6
assert base_cfg.min_num_decimal_places == 2 and base_cfg.max_num_decimal_places == 4
# Test incrementing attribute level
curriculum.increment_attr_level("decimal_places")
increased_cfg = curriculum.generate_configuration(base_value)
assert increased_cfg.min_num_decimal_places == 3 and increased_cfg.max_num_decimal_places == 8
assert increased_cfg.min_num_decimal_places == 2 and increased_cfg.max_num_decimal_places == 6
# Test incrementing attribute level again
curriculum.increment_attr_level("decimal_places")
further_increased_cfg = curriculum.generate_configuration(base_value)
assert further_increased_cfg.min_num_decimal_places == 3 and further_increased_cfg.max_num_decimal_places == 10
assert further_increased_cfg.min_num_decimal_places == 2 and further_increased_cfg.max_num_decimal_places == 8
# Test decrementing attribute level
curriculum.decrement_attr_level("decimal_places")
decreased_cfg = curriculum.generate_configuration(base_value)
assert decreased_cfg.min_num_decimal_places == 3 and decreased_cfg.max_num_decimal_places == 8
assert decreased_cfg.min_num_decimal_places == 2 and decreased_cfg.max_num_decimal_places == 6
# Test decrementing attribute level to base level
curriculum.decrement_attr_level("decimal_places")
base_level_cfg = curriculum.generate_configuration(base_value)
assert base_level_cfg.min_num_decimal_places == 3 and base_level_cfg.max_num_decimal_places == 5
assert base_level_cfg.min_num_decimal_places == 2 and base_level_cfg.max_num_decimal_places == 4