Cleans color and console characters out of a screen output. This is useful for screen testing, it increases the test readability since it strips out all the unreadable side of the screen.
(reader: ReadlineAlikeReader)
| 49 | |
| 50 | |
| 51 | def clean_screen(reader: ReadlineAlikeReader) -> list[str]: |
| 52 | """Cleans color and console characters out of a screen output. |
| 53 | |
| 54 | This is useful for screen testing, it increases the test readability since |
| 55 | it strips out all the unreadable side of the screen. |
| 56 | """ |
| 57 | output = [] |
| 58 | for line in reader.screen: |
| 59 | line = unbracket(line, including_content=True) |
| 60 | line = ANSI_ESCAPE_SEQUENCE.sub("", line) |
| 61 | for prefix in (reader.ps1, reader.ps2, reader.ps3, reader.ps4): |
| 62 | if line.startswith(prefix): |
| 63 | line = line[len(prefix):] |
| 64 | break |
| 65 | output.append(line) |
| 66 | return output |
| 67 | |
| 68 | |
| 69 | def prepare_reader(console: Console, **kwargs): |
no test coverage detected
searching dependent graphs…