mirror of
https://github.com/Textualize/textual.git
synced 2025-10-17 02:38:12 +03:00
Add regression test for #2606.
This commit is contained in:
28
tests/test_footer.py
Normal file
28
tests/test_footer.py
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
from textual.app import App, ComposeResult
|
||||||
|
from textual.geometry import Offset
|
||||||
|
from textual.screen import ModalScreen
|
||||||
|
from textual.widgets import Footer, Label
|
||||||
|
|
||||||
|
|
||||||
|
async def test_footer_highlight_when_pushing_modal():
|
||||||
|
"""Regression test for https://github.com/Textualize/textual/issues/2606"""
|
||||||
|
|
||||||
|
class MyModalScreen(ModalScreen):
|
||||||
|
def compose(self) -> ComposeResult:
|
||||||
|
yield Label("apple")
|
||||||
|
|
||||||
|
class MyApp(App[None]):
|
||||||
|
BINDINGS = [("a", "p", "push")]
|
||||||
|
|
||||||
|
def compose(self) -> ComposeResult:
|
||||||
|
yield Footer()
|
||||||
|
|
||||||
|
def action_p(self):
|
||||||
|
self.push_screen(MyModalScreen())
|
||||||
|
|
||||||
|
app = MyApp()
|
||||||
|
async with app.run_test(size=(80, 2)) as pilot:
|
||||||
|
await pilot.hover(None, Offset(0, 1))
|
||||||
|
await pilot.click(None, Offset(0, 1))
|
||||||
|
assert isinstance(app.screen, MyModalScreen)
|
||||||
|
assert app.screen_stack[0].query_one(Footer).highlight_key is None
|
||||||
Reference in New Issue
Block a user