(self)
| 171 | self.parse(b"\x08\x00", mask=False) |
| 172 | |
| 173 | def test_extensions(self): |
| 174 | class Rot13: |
| 175 | @staticmethod |
| 176 | def encode(frame): |
| 177 | assert frame.opcode == OP_TEXT |
| 178 | text = frame.data.decode() |
| 179 | data = codecs.encode(text, "rot13").encode() |
| 180 | return dataclasses.replace(frame, data=data) |
| 181 | |
| 182 | # This extensions is symmetrical. |
| 183 | @staticmethod |
| 184 | def decode(frame, *, max_size=None): |
| 185 | return Rot13.encode(frame) |
| 186 | |
| 187 | self.assertFrameData( |
| 188 | Frame(OP_TEXT, b"hello"), |
| 189 | b"\x81\x05uryyb", |
| 190 | mask=False, |
| 191 | extensions=[Rot13()], |
| 192 | ) |
| 193 | |
| 194 | |
| 195 | class StrTests(unittest.TestCase): |
nothing calls this directly
no test coverage detected