| 395 | |
| 396 | |
| 397 | class TabsMessageCatchApp(App[None]): |
| 398 | def __init__(self) -> None: |
| 399 | super().__init__() |
| 400 | self.intended_handlers: list[str] = [] |
| 401 | |
| 402 | def compose(self) -> ComposeResult: |
| 403 | yield Tabs("John", "Aeryn", "Moya", "Pilot") |
| 404 | |
| 405 | @on(Tabs.Cleared) |
| 406 | @on(Tabs.TabActivated) |
| 407 | @on(Underline.Clicked) |
| 408 | @on(Tab.Clicked) |
| 409 | def log_message( |
| 410 | self, event: Tabs.Cleared | Tabs.TabActivated | Underline.Clicked | Tab.Clicked |
| 411 | ) -> None: |
| 412 | self.intended_handlers.append(event.handler_name) |
| 413 | |
| 414 | @on(Tabs.TabActivated) |
| 415 | @on(Tabs.Cleared) |
| 416 | def check_control(self, event: Tabs.TabActivated) -> None: |
| 417 | assert event.control is event.tabs |
| 418 | |
| 419 | |
| 420 | async def test_startup_messages(): |
no outgoing calls
searching dependent graphs…