| 52 | |
| 53 | |
| 54 | class FakeMessage(Message[FakeMessageSegment]): |
| 55 | @classmethod |
| 56 | @override |
| 57 | def get_segment_class(cls): |
| 58 | return FakeMessageSegment |
| 59 | |
| 60 | @staticmethod |
| 61 | @override |
| 62 | def _construct(msg: str | Iterable[Mapping]): |
| 63 | if isinstance(msg, str): |
| 64 | yield FakeMessageSegment.text(msg) |
| 65 | else: |
| 66 | for seg in msg: |
| 67 | yield FakeMessageSegment(**seg) |
| 68 | return |
| 69 | |
| 70 | @override |
| 71 | def __add__(self, other: str | FakeMessageSegment | Iterable[FakeMessageSegment]): |
| 72 | other = escape_text(other) if isinstance(other, str) else other |
| 73 | return super().__add__(other) |
| 74 | |
| 75 | |
| 76 | def make_fake_event( |
no outgoing calls