diff options
-rw-r--r-- | Doc/library/commands.rst | 8 | ||||
-rw-r--r-- | Lib/commands.py | 4 | ||||
-rw-r--r-- | Lib/test/test_py3kwarn.py | 9 |
3 files changed, 20 insertions, 1 deletions
diff --git a/Doc/library/commands.rst b/Doc/library/commands.rst index 177710b..c3f7710 100644 --- a/Doc/library/commands.rst +++ b/Doc/library/commands.rst @@ -42,7 +42,13 @@ The :mod:`commands` module defines the following functions: .. deprecated:: 2.6 This function is nonobvious and useless, also the name is misleading in the - presence of :func:`getstatusoutput`. + presence of :func:`getstatusoutput`. It is removed in 3.x. + +.. warning:: + + Two undocumented functions in this module, :func:`mk2arg` and :func:`mkargs` + are removed in 3.x. + Example:: diff --git a/Lib/commands.py b/Lib/commands.py index d19aa1a..b4e1d3c 100644 --- a/Lib/commands.py +++ b/Lib/commands.py @@ -63,6 +63,8 @@ def getstatusoutput(cmd): # Make command argument from directory and pathname (prefix space, add quotes). # def mk2arg(head, x): + from warnings import warnpy3k + warnpy3k("In 3.x, mk2arg is removed.") import os return mkarg(os.path.join(head, x)) @@ -75,6 +77,8 @@ def mk2arg(head, x): # with backslash. # def mkarg(x): + from warnings import warnpy3k + warnpy3k("in 3.x, mkarg is remove.") if '\'' not in x: return ' \'' + x + '\'' s = ' "' diff --git a/Lib/test/test_py3kwarn.py b/Lib/test/test_py3kwarn.py index 180342b..d5574f4 100644 --- a/Lib/test/test_py3kwarn.py +++ b/Lib/test/test_py3kwarn.py @@ -212,6 +212,15 @@ class TestStdlibRemovals(unittest.TestCase): mod.walk(".", dumbo, None) self.assertEquals(str(w.message), msg) + def test_commands_members(self): + import commands + members = {"mk2arg" : 2, "mkarg" : 1, "getstatus" : 1} + for name, arg_count in members.items(): + with catch_warning(record=False): + warnings.filterwarnings("error") + func = getattr(commands, name) + self.assertRaises(DeprecationWarning, func, *([None]*arg_count)) + def test_main(): run_unittest(TestPy3KWarnings, |