(self)
| 272 | self.assertRaises(TypeError, decoder.decode, "") |
| 273 | |
| 274 | def test_state_methods(self): |
| 275 | decoder = codecs.getincrementaldecoder('euc_jp')() |
| 276 | |
| 277 | # Decode a complete input sequence |
| 278 | self.assertEqual(decoder.decode(b'\xa4\xa6'), '\u3046') |
| 279 | pending1, _ = decoder.getstate() |
| 280 | self.assertEqual(pending1, b'') |
| 281 | |
| 282 | # Decode first half of a partial input sequence |
| 283 | self.assertEqual(decoder.decode(b'\xa4'), '') |
| 284 | pending2, flags2 = decoder.getstate() |
| 285 | self.assertEqual(pending2, b'\xa4') |
| 286 | |
| 287 | # Decode second half of a partial input sequence |
| 288 | self.assertEqual(decoder.decode(b'\xa6'), '\u3046') |
| 289 | pending3, _ = decoder.getstate() |
| 290 | self.assertEqual(pending3, b'') |
| 291 | |
| 292 | # Jump back and decode second half of partial input sequence again |
| 293 | decoder.setstate((pending2, flags2)) |
| 294 | self.assertEqual(decoder.decode(b'\xa6'), '\u3046') |
| 295 | pending4, _ = decoder.getstate() |
| 296 | self.assertEqual(pending4, b'') |
| 297 | |
| 298 | # Ensure state values are preserved correctly |
| 299 | decoder.setstate((b'abc', 123456789)) |
| 300 | self.assertEqual(decoder.getstate(), (b'abc', 123456789)) |
| 301 | |
| 302 | def test_setstate_validates_input(self): |
| 303 | decoder = codecs.getincrementaldecoder('euc_jp')() |
nothing calls this directly
no test coverage detected