summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGiampaolo Rodola' <g.rodola@gmail.com>2011-05-07 14:06:59 (GMT)
committerGiampaolo Rodola' <g.rodola@gmail.com>2011-05-07 14:06:59 (GMT)
commita55efb3b6fe8c386a01b7fe7e9cf91d455fb4b7a (patch)
tree3e8a5d2fd90ee56601fcbccb57ac4f0b192c5e01
parent052a899d5a38c4aaac09d86f2f8d1f6093f866c0 (diff)
downloadcpython-a55efb3b6fe8c386a01b7fe7e9cf91d455fb4b7a.zip
cpython-a55efb3b6fe8c386a01b7fe7e9cf91d455fb4b7a.tar.gz
cpython-a55efb3b6fe8c386a01b7fe7e9cf91d455fb4b7a.tar.bz2
#11072- applying http://bugs.python.org/review/11072/show suggestions
-rw-r--r--Doc/library/ftplib.rst16
-rw-r--r--Lib/test/test_ftplib.py11
2 files changed, 15 insertions, 12 deletions
diff --git a/Doc/library/ftplib.rst b/Doc/library/ftplib.rst
index 2696549..f4205f4 100644
--- a/Doc/library/ftplib.rst
+++ b/Doc/library/ftplib.rst
@@ -322,13 +322,13 @@ followed by ``lines`` for the text version or ``binary`` for the binary version.
.. method:: FTP.mlsd(path="", facts=[])
List a directory in a standardized format by using MLSD command
- (:rfc:`3659`). If *path* is omitted the current directory is assumed.
+ (:rfc:`3659`). If *path* is omitted the current directory is assumed.
*facts* is a list of strings representing the type of information desired
- (e.g. *["type", "size", "perm"]*). Return a generator object yielding a
- tuple of two elements for every file found in path. First element is the
- file name, the second one is a dictionary including a variable number of
- "facts" depending on the server and whether *facts* argument has been
- provided.
+ (e.g. ``["type", "size", "perm"]``). Return a generator object yielding a
+ tuple of two elements for every file found in path. First element is the
+ file name, the second one is a dictionary containing facts about the file
+ name. Content of this dictionary might be limited by the *facts* argument
+ but server is not guaranteed to return all requested facts.
.. versionadded:: 3.3
@@ -340,7 +340,7 @@ followed by ``lines`` for the text version or ``binary`` for the binary version.
directory). Multiple arguments can be used to pass non-standard options to
the ``NLST`` command.
- .. deprecated:: 3.3 use :meth:`mlsd` instead
+ .. deprecated:: 3.3 use :meth:`mlsd` instead.
.. method:: FTP.dir(argument[, ...])
@@ -352,7 +352,7 @@ followed by ``lines`` for the text version or ``binary`` for the binary version.
as a *callback* function as for :meth:`retrlines`; the default prints to
``sys.stdout``. This method returns ``None``.
- .. deprecated:: 3.3 use :meth:`mlsd` instead
+ .. deprecated:: 3.3 use :meth:`mlsd` instead.
.. method:: FTP.rename(fromname, toname)
diff --git a/Lib/test/test_ftplib.py b/Lib/test/test_ftplib.py
index 8d75b96..cf961ae 100644
--- a/Lib/test/test_ftplib.py
+++ b/Lib/test/test_ftplib.py
@@ -586,10 +586,12 @@ class TestFTPClass(TestCase):
ls = list(self.client.mlsd())
for name, facts in ls:
+ self.assertIsInstance(name, str)
+ self.assertIsInstance(facts, dict)
self.assertTrue(name)
- self.assertTrue('type' in facts)
- self.assertTrue('perm' in facts)
- self.assertTrue('unique' in facts)
+ self.assertIn('type', facts)
+ self.assertIn('perm', facts)
+ self.assertIn('unique', facts)
def set_data(data):
self.server.handler_instance.next_data = data
@@ -626,7 +628,8 @@ class TestFTPClass(TestCase):
# case sensitiveness
set_data('Type=type;TyPe=perm;UNIQUE=unique; name\r\n')
_name, facts = next(self.client.mlsd())
- [self.assertTrue(x.islower()) for x in facts.keys()]
+ for x in facts:
+ self.assertTrue(x.islower())
# no data (directory empty)
set_data('')
self.assertRaises(StopIteration, next, self.client.mlsd())