+ test_quopri.py relied on significant trailing spaces. Fixed.
+ test_dircache.py (still) doesn't work on Windows (directory mtime on
Windows doesn't work like it does on Unix).
(typ, [data]) = <instance>.sort(sort_criteria, charset, search_criteria, ...)
"""
name = 'SORT'
- #if not name in self.capabilities: # Let the server decide!
- # raise self.error('unimplemented extension command: %s' % name)
+ #if not name in self.capabilities: # Let the server decide!
+ # raise self.error('unimplemented extension command: %s' % name)
if (sort_criteria[0],sort_criteria[-1]) != ('(',')'):
- sort_criteria = '(%s)' % sort_criteria
+ sort_criteria = '(%s)' % sort_criteria
typ, dat = apply(self._simple_command, (name, sort_criteria, charset) + search_criteria)
return self._untagged_response(typ, dat, name)
(typ, [data]) = <instance>.status(mailbox, names)
"""
name = 'STATUS'
- #if self.PROTOCOL_VERSION == 'IMAP4': # Let the server decide!
+ #if self.PROTOCOL_VERSION == 'IMAP4': # Let the server decide!
# raise self.error('%s unimplemented in IMAP4 (obtain IMAP4rev1 server, or re-code)' % name)
typ, dat = self._simple_command(name, mailbox, names)
return self._untagged_response(typ, dat, name)
Returns response appropriate to extension command `name'.
"""
name = name.upper()
- #if not name in self.capabilities: # Let the server decide!
+ #if not name in self.capabilities: # Let the server decide!
# raise self.error('unknown extension command: %s' % name)
if not Commands.has_key(name):
Commands[name] = (self.state,)
else:
header.append(mapping[2*i]+256*mapping[2*i+1])
data[0:0] = header
- return [(BIGCHARSET, data)]
+ return [(BIGCHARSET, data)]
def _simple(av):
# check if av is a "simple" operator
os.rmdir(fname)
else:
os.unlink(fname)
-
+
def test_listdir(self):
## SUCCESSFUL CASES
entries = dircache.listdir(self.tempdir)
self.assertEquals(entries, [])
# Check that cache is actually caching, not just passing through.
- self.assert_(dircache.listdir(self.tempdir) is entries)
-
+ self.assert_(dircache.listdir(self.tempdir) is entries)
+
# Sadly, dircache has the same granularity as stat.mtime, and so
# can't notice any changes that occured within 1 sec of the last
# time it examined a directory.
entries = dircache.listdir(self.tempdir)
self.assertEquals(entries, ['test1'])
self.assert_(dircache.listdir(self.tempdir) is entries)
-
+
## UNSUCCESSFUL CASES
self.assertEquals(dircache.listdir(self.tempdir+"_nonexistent"), [])
if not hasattr(os, "tmpnam"):
return
self.check_tempfile(os.tmpnam())
-
+
run_unittest(TemporaryFileTests)
from quopri import *
-\f
+
ENCSAMPLE = """\
Here's a bunch of special=20
"""
# First line ends with a space
-DECSAMPLE = """\
-Here's a bunch of special
+DECSAMPLE = "Here's a bunch of special \n" + \
+"""\
¡¢£¤¥¦§¨©
ª«¬®¯°±²³
"""
-\f
+
class QuopriTestCase(unittest.TestCase):
# Each entry is a tuple of (plaintext, encoded string). These strings are
# used in the "quotetabs=0" tests.
('hello world', 'hello=20world'),
('hello\tworld', 'hello=09world'),
)
-
+
def test_encodestring(self):
for p, e in self.STRINGS:
self.assert_(encodestring(p) == e)
-
+
def test_decodestring(self):
for p, e in self.STRINGS:
self.assert_(decodestring(e) == p)
-
+
def test_idempotent_string(self):
for p, e in self.STRINGS:
self.assert_(decodestring(encodestring(e)) == e)
self.assert_(encodestring(p, quotetabs=1) == e)
self.assert_(decodestring(e) == p)
-\f
+
test_support.run_unittest(QuopriTestCase)