| 29 | | self.assert_(folders == ['A', 'Foo Bar']) |
| | 28 | self.assert_(self.client._proc_folder_list.call_args == ((sentinel.folder_data,), {})) |
| | 29 | self.assert_(folders is sentinel.folder_list) |
| | 30 | |
| | 31 | |
| | 32 | def test_list_sub_folders(self): |
| | 33 | self.client._imap.lsub.return_value = ('OK', sentinel.folder_data) |
| | 34 | self.client._proc_folder_list = Mock(return_value=sentinel.folder_list) |
| | 35 | |
| | 36 | folders = self.client.list_sub_folders(sentinel.dir, sentinel.pattern) |
| | 37 | |
| | 38 | self.assert_(self.client._imap.lsub.call_args == ((sentinel.dir, sentinel.pattern), {})) |
| | 39 | self.assert_(self.client._proc_folder_list.call_args == ((sentinel.folder_data,), {})) |
| | 40 | self.assert_(folders is sentinel.folder_list) |
| 38 | | self.client._imap.list.return_value = ('OK', ['(\\HasNoChildren) "/" A', |
| 39 | | '(\\HasNoChildren) "/" B', |
| 40 | | '(\\HasNoChildren) "/" C', |
| 41 | | ]) |
| 42 | | |
| 43 | | folders = self.client.list_folders() |
| | 63 | folders = self.client._proc_folder_list(['(\\HasNoChildren) "/" A', |
| | 64 | '(\\HasNoChildren) "/" B', |
| | 65 | '(\\HasNoChildren) "/" C', |
| | 66 | ]) |
| 48 | | self.client._imap.list.return_value = ('OK', ['(\\HasNoChildren) "/" Alpha', |
| 49 | | '(\\HasNoChildren) "/" "Foo Bar"', |
| 50 | | '(\\HasNoChildren) "/" C', |
| 51 | | ]) |
| 52 | | |
| 53 | | folders = self.client.list_folders() |
| | 71 | folders = self.client._proc_folder_list(['(\\HasNoChildren) "/" Alpha', |
| | 72 | '(\\HasNoChildren) "/" "Foo Bar"', |
| | 73 | '(\\HasNoChildren) "/" C', |
| | 74 | ]) |
| 58 | | self.client._imap.list.return_value = ('OK', |
| 59 | | [('(\\NoInferiors \\UnMarked) "/" {5}', 'bang\xff'), |
| 60 | | '', |
| 61 | | '(\\HasNoChildren \\UnMarked) "/" "INBOX"']) |
| | 79 | folders = self.client._proc_folder_list([('(\\NoInferiors \\UnMarked) "/" {5}', 'bang\xff'), |
| | 80 | '', |
| | 81 | '(\\HasNoChildren \\UnMarked) "/" "INBOX"']) |
| | 82 | self.assert_(folders == ['bang\xff', 'INBOX'], 'got %r' % folders) |
| 63 | | folders = self.client.list_folders() |
| 64 | | self.assert_(folders == ['bang\xff', 'INBOX'], 'got %r' % folders) |
| | 84 | |
| | 85 | def test_escaped_quotes(self): |
| | 86 | folders = self.client._proc_folder_list(['(\\HasNoChildren) "/" "Test \"Folder\""', |
| | 87 | '(\\HasNoChildren) "/" "Left\"Right"', |
| | 88 | ]) |
| | 89 | self.assert_(folders == ['Test "Folder"', 'Left\"Right'], 'got %r' % folders) |
| | 90 | |
| | 91 | |
| | 92 | def test_other_escaping(self): |
| | 93 | self.fail("what other escapes are allowed?") |