1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
"""Test that setting a toggle button's label has the desired effect."""
from rich.text import Text
from textual.app import App, ComposeResult
from textual.widgets import Checkbox, RadioButton, RadioSet
class LabelChangeApp(App[None]):
def compose(self) -> ComposeResult:
yield Checkbox("Before")
yield RadioButton("Before")
yield RadioSet("Before")
async def test_change_labels() -> None:
"""It should be possible to change the labels of toggle buttons."""
async with LabelChangeApp().run_test() as pilot:
assert pilot.app.query_one(Checkbox).label == Text("Before")
assert pilot.app.query_one("Screen > RadioButton", RadioButton).label == Text(
"Before"
)
assert pilot.app.query_one("RadioSet > RadioButton", RadioButton).label == Text(
"Before"
)
pilot.app.query_one(Checkbox).label = "After"
pilot.app.query_one("Screen > RadioButton", RadioButton).label = "After"
pilot.app.query_one("RadioSet > RadioButton", RadioButton).label = "After"
await pilot.pause()
assert pilot.app.query_one(Checkbox).label == Text("After")
assert pilot.app.query_one("Screen > RadioButton", RadioButton).label == Text(
"After"
)
assert pilot.app.query_one("RadioSet > RadioButton", RadioButton).label == Text(
"After"
)
|