Mercurial > cpython-lru_cache-weakref
annotate Lib/distutils/tests/test_check.py @ 54294:dba767bc3155 legacy-trunk
remove mention of old ctypes version
| author | Benjamin Peterson <benjamin@python.org> |
|---|---|
| date | Sat, 23 May 2009 20:59:09 +0000 |
| parents | 9eab0573d845 |
| children | 614c84670c63 96f30fd54e0f |
| rev | line source |
|---|---|
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
1 """Tests for distutils.command.check.""" |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
2 import unittest |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
3 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
4 from distutils.command.check import check, HAS_DOCUTILS |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
5 from distutils.tests import support |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
6 from distutils.errors import DistutilsSetupError |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
7 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
8 class CheckTestCase(support.LoggingSilencer, |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
9 support.TempdirManager, |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
10 unittest.TestCase): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
11 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
12 def _run(self, metadata=None, **options): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
13 if metadata is None: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
14 metadata = {} |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
15 pkg_info, dist = self.create_dist(**metadata) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
16 cmd = check(dist) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
17 cmd.initialize_options() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
18 for name, value in options.items(): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
19 setattr(cmd, name, value) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
20 cmd.ensure_finalized() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
21 cmd.run() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
22 return cmd |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
23 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
24 def test_check_metadata(self): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
25 # let's run the command with no metadata at all |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
26 # by default, check is checking the metadata |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
27 # should have some warnings |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
28 cmd = self._run() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
29 self.assertEquals(cmd._warnings, 2) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
30 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
31 # now let's add the required fields |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
32 # and run it again, to make sure we don't get |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
33 # any warning anymore |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
34 metadata = {'url': 'xxx', 'author': 'xxx', |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
35 'author_email': 'xxx', |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
36 'name': 'xxx', 'version': 'xxx'} |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
37 cmd = self._run(metadata) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
38 self.assertEquals(cmd._warnings, 0) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
39 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
40 # now with the strict mode, we should |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
41 # get an error if there are missing metadata |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
42 self.assertRaises(DistutilsSetupError, self._run, {}, **{'strict': 1}) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
43 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
44 # and of course, no error when all metadata are present |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
45 cmd = self._run(metadata, strict=1) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
46 self.assertEquals(cmd._warnings, 0) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
47 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
48 def test_check_document(self): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
49 if not HAS_DOCUTILS: # won't test without docutils |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
50 return |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
51 pkg_info, dist = self.create_dist() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
52 cmd = check(dist) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
53 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
54 # let's see if it detects broken rest |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
55 broken_rest = 'title\n===\n\ntest' |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
56 msgs = cmd._check_rst_data(broken_rest) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
57 self.assertEquals(len(msgs), 1) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
58 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
59 # and non-broken rest |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
60 rest = 'title\n=====\n\ntest' |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
61 msgs = cmd._check_rst_data(rest) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
62 self.assertEquals(len(msgs), 0) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
63 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
64 def test_check_restructuredtext(self): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
65 if not HAS_DOCUTILS: # won't test without docutils |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
66 return |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
67 # let's see if it detects broken rest in long_description |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
68 broken_rest = 'title\n===\n\ntest' |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
69 pkg_info, dist = self.create_dist(long_description=broken_rest) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
70 cmd = check(dist) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
71 cmd.check_restructuredtext() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
72 self.assertEquals(cmd._warnings, 1) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
73 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
74 # let's see if we have an error with strict=1 |
|
53199
9eab0573d845
Merged revisions 71674 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53062
diff
changeset
|
75 metadata = {'url': 'xxx', 'author': 'xxx', |
|
9eab0573d845
Merged revisions 71674 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53062
diff
changeset
|
76 'author_email': 'xxx', |
|
9eab0573d845
Merged revisions 71674 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53062
diff
changeset
|
77 'name': 'xxx', 'version': 'xxx', |
|
9eab0573d845
Merged revisions 71674 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53062
diff
changeset
|
78 'long_description': broken_rest} |
|
9eab0573d845
Merged revisions 71674 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53062
diff
changeset
|
79 self.assertRaises(DistutilsSetupError, self._run, metadata, |
|
9eab0573d845
Merged revisions 71674 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53062
diff
changeset
|
80 **{'strict': 1, 'restructuredtext': 1}) |
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
81 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
82 # and non-broken rest |
|
53199
9eab0573d845
Merged revisions 71674 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53062
diff
changeset
|
83 metadata['long_description'] = 'title\n=====\n\ntest' |
|
9eab0573d845
Merged revisions 71674 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53062
diff
changeset
|
84 cmd = self._run(metadata, strict=1, restructuredtext=1) |
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
85 self.assertEquals(cmd._warnings, 0) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
86 |
|
53062
3455fd78467e
Merged revisions 71478 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53057
diff
changeset
|
87 def test_check_all(self): |
|
3455fd78467e
Merged revisions 71478 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53057
diff
changeset
|
88 |
|
3455fd78467e
Merged revisions 71478 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53057
diff
changeset
|
89 metadata = {'url': 'xxx', 'author': 'xxx'} |
|
3455fd78467e
Merged revisions 71478 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53057
diff
changeset
|
90 self.assertRaises(DistutilsSetupError, self._run, |
|
3455fd78467e
Merged revisions 71478 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53057
diff
changeset
|
91 {}, **{'strict': 1, |
|
3455fd78467e
Merged revisions 71478 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53057
diff
changeset
|
92 'restructuredtext': 1}) |
|
3455fd78467e
Merged revisions 71478 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53057
diff
changeset
|
93 |
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
94 def test_suite(): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
95 return unittest.makeSuite(CheckTestCase) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
96 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
97 if __name__ == "__main__": |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
98 unittest.main(defaultTest="test_suite") |
