Files
textual/tests/test_paste.py
Rodrigo Girão Serrão 45686c8aca Fix tests.
2023-05-17 10:27:57 +01:00

46 lines
1.1 KiB
Python

from textual import events
from textual.app import App
from textual.widgets import Input
async def test_paste_app():
paste_events = []
class PasteApp(App):
def on_paste(self, event):
paste_events.append(event)
app = PasteApp()
async with app.run_test() as pilot:
app.post_message(events.Paste(text="Hello"))
await pilot.pause(0)
assert len(paste_events) == 1
assert paste_events[0].text == "Hello"
async def test_empty_paste():
"""Regression test for https://github.com/Textualize/textual/issues/2563."""
paste_events = []
class MyInput(Input):
def on_paste(self, event):
super()._on_paste(event)
paste_events.append(event)
class PasteApp(App):
def compose(self):
yield MyInput()
def key_p(self):
self.query_one(MyInput).post_message(events.Paste(""))
app = PasteApp()
async with app.run_test() as pilot:
app.set_focus(None)
await pilot.press("p")
assert app.query_one(MyInput).value == ""
assert len(paste_events) == 1
assert paste_events[0].text == ""