diff --git a/src/pf1e_simulator/dice.py b/src/pf1e_simulator/dice.py index 5e45945..f33123b 100644 --- a/src/pf1e_simulator/dice.py +++ b/src/pf1e_simulator/dice.py @@ -103,15 +103,13 @@ def parse_dice(text: str) -> DiceExpr: m = _DICE_RE.match(stripped) if m: count_str, sides_str, bonus_str = m.groups() - if not sides_str: - raise DiceParseError(text) count = int(count_str) if count_str else 1 sides = int(sides_str) bonus = int(bonus_str) if bonus_str else 0 if count == 0: raise DiceParseError(text) - if sides < 1: + if sides < _MIN_SIDES: raise DiceParseError(text) return DiceExpr(count=count, sides=sides, bonus=bonus) diff --git a/tests/test_dice.py b/tests/test_dice.py index 0ffe400..4bca8b6 100644 --- a/tests/test_dice.py +++ b/tests/test_dice.py @@ -88,6 +88,9 @@ class TestParseDiceRejected: "d", "2d0", "0d6", + "d1", + "1d1", + "2D6", "2d 6", "abc", "d6+",