|
11 | 11 | from unittest import TestCase
|
12 | 12 | from unittest.mock import MagicMock, call
|
13 | 13 |
|
14 |
| -from .support import handle_all_events, code_to_events |
| 14 | +from .support import handle_all_events, code_to_events, reader_no_colors |
| 15 | +from .support import prepare_reader as default_prepare_reader |
15 | 16 |
|
16 | 17 | try:
|
17 | 18 | from _pyrepl.console import Event, Console
|
@@ -46,14 +47,22 @@ def console(self, events, **kwargs) -> Console:
|
46 | 47 | setattr(console, key, val)
|
47 | 48 | return console
|
48 | 49 |
|
49 |
| - def handle_events(self, events: Iterable[Event], **kwargs): |
50 |
| - return handle_all_events(events, partial(self.console, **kwargs)) |
| 50 | + def handle_events( |
| 51 | + self, |
| 52 | + events: Iterable[Event], |
| 53 | + prepare_console=None, |
| 54 | + prepare_reader=None, |
| 55 | + **kwargs, |
| 56 | + ): |
| 57 | + prepare_console = prepare_console or partial(self.console, **kwargs) |
| 58 | + prepare_reader = prepare_reader or default_prepare_reader |
| 59 | + return handle_all_events(events, prepare_console, prepare_reader) |
51 | 60 |
|
52 | 61 | def handle_events_narrow(self, events):
|
53 | 62 | return self.handle_events(events, width=5)
|
54 | 63 |
|
55 |
| - def handle_events_short(self, events): |
56 |
| - return self.handle_events(events, height=1) |
| 64 | + def handle_events_short(self, events, **kwargs): |
| 65 | + return self.handle_events(events, height=1, **kwargs) |
57 | 66 |
|
58 | 67 | def handle_events_height_3(self, events):
|
59 | 68 | return self.handle_events(events, height=3)
|
@@ -248,7 +257,9 @@ def test_resize_bigger_on_multiline_function(self):
|
248 | 257 | # fmt: on
|
249 | 258 |
|
250 | 259 | events = itertools.chain(code_to_events(code))
|
251 |
| - reader, console = self.handle_events_short(events) |
| 260 | + reader, console = self.handle_events_short( |
| 261 | + events, prepare_reader=reader_no_colors |
| 262 | + ) |
252 | 263 |
|
253 | 264 | console.height = 2
|
254 | 265 | console.getheightwidth = MagicMock(lambda _: (2, 80))
|
|
0 commit comments