diff options
author | Mathieu Leduc-Hamel <mlhamel@mtlpy.org> | 2012-05-12 16:02:50 -0400 |
---|---|---|
committer | Mathieu Leduc-Hamel <mlhamel@mtlpy.org> | 2012-05-12 16:02:50 -0400 |
commit | 2b5aa0b53138c5366851db22f70e9574fcbddfbb (patch) | |
tree | 01267b112afe8578f0770388abbd81038664d92b | |
parent | 6fe308727334111de435a4ed5f547cc3a1a7f68d (diff) | |
download | disutils2-2b5aa0b53138c5366851db22f70e9574fcbddfbb.tar.gz |
#13614: Merge changes from julien_courteau and PierrePaul regarding bad rst
-rw-r--r-- | distutils2/metadata.py | 4 | ||||
-rw-r--r-- | distutils2/tests/fake_dists/python-pager-readme.rst | 65 | ||||
-rw-r--r-- | distutils2/tests/test_command_register.py | 15 |
3 files changed, 10 insertions, 74 deletions
diff --git a/distutils2/metadata.py b/distutils2/metadata.py index a16b2be..7b66ba6 100644 --- a/distutils2/metadata.py +++ b/distutils2/metadata.py @@ -36,7 +36,7 @@ try: def system_message(self, level, message, *children, **kwargs): self.messages.append((level, message, children, kwargs)) return nodes.system_message(message, level=level, type=self. - levels[level], *children, **kwargs) + levels[level], *children, **kwargs) _HAS_DOCUTILS = True @@ -279,7 +279,7 @@ class Metadata(object): document.note_source(source_path, -1) try: parser.parse(data, document) - except (AttributeError, TypeError): + except AttributeError: reporter.messages.append((-1, 'Could not finish the parsing.', '', {})) diff --git a/distutils2/tests/fake_dists/python-pager-readme.rst b/distutils2/tests/fake_dists/python-pager-readme.rst deleted file mode 100644 index c01f53f..0000000 --- a/distutils2/tests/fake_dists/python-pager-readme.rst +++ /dev/null @@ -1,65 +0,0 @@ - -Python module to page screen output and get dimensions -of available console space. - -It is meant to be finally included into standard library -http://bugs.python.org/issue8408 - -| Author: anatoly techtonik <techtonik@gmail.com> -| License: Public Domain (or MIT if a license is required) - - -Status ------- - -0.1 (stable) - - shows content page by page - - allows to get console/terminal dimensions - - works on Windows - - works on Linux - - -API ---- - -..function:: getwidth() - - Return width of available window in characters. If detection fails, - return value of standard width 80. Coordinate of the last character - on a line is -1 from returned value. - - -..function:: getheight() - - Return available window height in characters or 25 if detection fails. - Coordinate of the last line is -1 from returned value. - - -..function:: getch() - - Wait for keypress and return character in a cross-platform way. - Credits: Danny Yoo, Python Cookbook - - -..function:: page(content, [pagecallback=prompt]) - - Output `content` iterable, calling `pagecallback` function after each - page. Default :func:`prompt` callback shows 'Press any key . . . ' prompt - and waits for keypress. - - -References ----------- - -Excellent tutorials for Win32 Console by Adrian Worley -http://www.adrianxw.dk/SoftwareSite/index.html -Console Reference on MSDN -http://msdn.microsoft.com/en-us/library/ms682087%28VS.85%29.aspx - -Public Domain Curses library maintained by William McBrine -http://pdcurses.sourceforge.net/ - -Ioctl (input/output control) introduction from Wikipedia -http://en.wikipedia.org/wiki/Ioctl -Linux Programmer's Manual - ioctls for terminals and serial lines -http://www.kernel.org/doc/man-pages/online/pages/man4/tty_ioctl.4.html diff --git a/distutils2/tests/test_command_register.py b/distutils2/tests/test_command_register.py index 7deb6e4..5fc8e99 100644 --- a/distutils2/tests/test_command_register.py +++ b/distutils2/tests/test_command_register.py @@ -10,7 +10,7 @@ except ImportError: DOCUTILS_SUPPORT = False from distutils2.tests import unittest, support -from distutils2.tests.support import Inputs +from distutils2.tests.support import (Inputs, requires_docutils) from distutils2.command import register as register_module from distutils2.command.register import register from distutils2.errors import PackagingSetupError @@ -253,12 +253,10 @@ class RegisterTestCase(support.TempdirManager, self.assertEqual(data['metadata_version'], '1.2') self.assertEqual(data['requires_dist'], ['lxml']) + @requires_docutils def test_register_invalid_long_description(self): - readme_file = os.path.join(os.path.dirname(__file__), - 'fake_dists', 'python-pager-readme.rst') - - # Contains :func: which break the rst format - data = "".join(open(readme_file).readlines()) + # Contains :func: which break the rst format + data = "Default :func:`prompt` callback shows" metadata = {'Home-page': 'xxx', 'Author': 'xxx', 'Author-email': 'xxx', @@ -270,7 +268,10 @@ class RegisterTestCase(support.TempdirManager, cmd.strict = True inputs = Inputs('2', 'tarek', 'tarek@ziade.org') register_module.raw_input = inputs - self.assertRaises(PackagingSetupError, cmd.run) + with self.assertRaises(PackagingSetupError) as e: + cmd.run() + self.assertIsNotNone(e) + self.assertIn('func', repr(e.exception)) def test_suite(): return unittest.makeSuite(RegisterTestCase) |