diff --git a/src/textual/_resolve.py b/src/textual/_resolve.py index ddbdd1d5c..1ee40af9e 100644 --- a/src/textual/_resolve.py +++ b/src/textual/_resolve.py @@ -143,7 +143,7 @@ def resolve_fraction_unit( resolved: list[Fraction | None] = [None] * len(resolve) remaining_fraction = Fraction(sum(scalar.value for scalar, _, _ in resolve)) - while True: + while remaining_fraction: remaining_space_changed = False resolve_fraction = Fraction(remaining_space, remaining_fraction) for index, (scalar, min_value, max_value) in enumerate(resolve): @@ -166,7 +166,7 @@ def resolve_fraction_unit( return ( Fraction(remaining_space, remaining_fraction) - if remaining_space + if remaining_space > 0 else Fraction(1) ) diff --git a/tests/test_resolve.py b/tests/test_resolve.py index c7cdd485e..b73db6c55 100644 --- a/tests/test_resolve.py +++ b/tests/test_resolve.py @@ -125,9 +125,6 @@ def test_resolve_fraction_unit(): ) == Fraction(2) -@pytest.mark.xfail( - strict=True, reason="https://github.com/Textualize/textual/issues/2502" -) def test_resolve_issue_2502(): """Test https://github.com/Textualize/textual/issues/2502"""