(self)
| 362 | client.enable('UTF8=ACCEPT') |
| 363 | |
| 364 | def test_enable_UTF8_True_append(self): |
| 365 | class UTF8AppendServer(SimpleIMAPHandler): |
| 366 | capabilities = 'ENABLE UTF8=ACCEPT' |
| 367 | def cmd_ENABLE(self, tag, args): |
| 368 | self._send_tagged(tag, 'OK', 'ENABLE successful') |
| 369 | def cmd_AUTHENTICATE(self, tag, args): |
| 370 | self._send_textline('+') |
| 371 | self.server.response = yield |
| 372 | self._send_tagged(tag, 'OK', 'FAKEAUTH successful') |
| 373 | def cmd_APPEND(self, tag, args): |
| 374 | self._send_textline('+') |
| 375 | self.server.response = args |
| 376 | literal = yield |
| 377 | self.server.response.append(literal) |
| 378 | literal = yield |
| 379 | self.server.response.append(literal) |
| 380 | self._send_tagged(tag, 'OK', 'okay') |
| 381 | client, server = self._setup(UTF8AppendServer) |
| 382 | self.assertEqual(client._encoding, 'ascii') |
| 383 | code, _ = client.authenticate('MYAUTH', lambda x: b'fake') |
| 384 | self.assertEqual(code, 'OK') |
| 385 | self.assertEqual(server.response, b'ZmFrZQ==\r\n') # b64 encoded 'fake' |
| 386 | code, _ = client.enable('UTF8=ACCEPT') |
| 387 | self.assertEqual(code, 'OK') |
| 388 | self.assertEqual(client._encoding, 'utf-8') |
| 389 | msg_string = 'Subject: üñí©öðé' |
| 390 | typ, data = client.append( |
| 391 | None, None, None, (msg_string + '\n').encode('utf-8')) |
| 392 | self.assertEqual(typ, 'OK') |
| 393 | self.assertEqual(server.response, |
| 394 | ['INBOX', 'UTF8', |
| 395 | '(~{25}', ('%s\r\n' % msg_string).encode('utf-8'), |
| 396 | b')\r\n' ]) |
| 397 | |
| 398 | def test_search_disallows_charset_in_utf8_mode(self): |
| 399 | class UTF8Server(SimpleIMAPHandler): |
nothing calls this directly
no test coverage detected