Files
textual/tests/test_overflow_change.py
Rodrigo Girão Serrão 60faf9f8e2 Fix xfail usage.
2023-01-20 14:47:41 +00:00

41 lines
1.1 KiB
Python

"""Regression test for #1616 https://github.com/Textualize/textual/issues/1616"""
import pytest
from textual.app import App
from textual.containers import Vertical
@pytest.mark.xfail(
reason="Needs #1610 so that overflow changes trigger layout recomputation."
)
async def test_overflow_change_updates_virtual_size_appropriately():
class MyApp(App):
def compose(self):
yield Vertical()
app = MyApp()
async with app.run_test() as pilot:
vertical = app.query_one(Vertical)
height = vertical.virtual_size.height
vertical.styles.overflow_x = "scroll"
await pilot.pause() # Let changes propagate.
assert vertical.virtual_size.height < height
vertical.styles.overflow_x = "hidden"
await pilot.pause()
assert vertical.virtual_size.height == height
width = vertical.virtual_size.width
vertical.styles.overflow_y = "scroll"
await pilot.pause()
assert vertical.virtual_size.width < width
vertical.styles.overflow_y = "hidden"
await pilot.pause()
assert vertical.virtual_size.width == width