Mercurial > cpython-lru_cache-weakref
annotate Lib/test/test_macos.py @ 79675:c0a2294de787 2.7
Issue #16199: Backport 2to3 typo fix from 3.2.
| author | Chris Jerdonek <chris.jerdonek@gmail.com> |
|---|---|
| date | Thu, 11 Oct 2012 16:15:46 -0700 |
| parents | 614c84670c63 |
| children |
| rev | line source |
|---|---|
|
48485
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
1 import unittest |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
2 from test import test_support |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
3 import os |
|
50445
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
4 import subprocess |
|
48485
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
5 |
|
52456
f2c90fd05d66
Add import_function method to test.test_support, and modify a number of
R. David Murray <rdmurray@bitdance.com>
parents:
50445
diff
changeset
|
6 MacOS = test_support.import_module('MacOS') |
|
f2c90fd05d66
Add import_function method to test.test_support, and modify a number of
R. David Murray <rdmurray@bitdance.com>
parents:
50445
diff
changeset
|
7 |
|
48485
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
8 TESTFN2 = test_support.TESTFN + '2' |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
9 |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
10 class TestMacOS(unittest.TestCase): |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
11 |
|
50445
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
12 def testGetCreatorAndType(self): |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
13 if not os.path.exists('/Developer/Tools/SetFile'): |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
14 return |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
15 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
16 try: |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
17 fp = open(test_support.TESTFN, 'w') |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
18 fp.write('\n') |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
19 fp.close() |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
20 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
21 subprocess.call( |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
22 ['/Developer/Tools/SetFile', '-t', 'ABCD', '-c', 'EFGH', |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
23 test_support.TESTFN]) |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
24 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
25 cr, tp = MacOS.GetCreatorAndType(test_support.TESTFN) |
|
66348
614c84670c63
Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents:
58817
diff
changeset
|
26 self.assertEqual(tp, 'ABCD') |
|
614c84670c63
Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents:
58817
diff
changeset
|
27 self.assertEqual(cr, 'EFGH') |
|
50445
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
28 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
29 finally: |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
30 os.unlink(test_support.TESTFN) |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
31 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
32 def testSetCreatorAndType(self): |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
33 if not os.path.exists('/Developer/Tools/GetFileInfo'): |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
34 return |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
35 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
36 try: |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
37 fp = open(test_support.TESTFN, 'w') |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
38 fp.write('\n') |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
39 fp.close() |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
40 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
41 MacOS.SetCreatorAndType(test_support.TESTFN, |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
42 'ABCD', 'EFGH') |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
43 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
44 cr, tp = MacOS.GetCreatorAndType(test_support.TESTFN) |
|
66348
614c84670c63
Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents:
58817
diff
changeset
|
45 self.assertEqual(cr, 'ABCD') |
|
614c84670c63
Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents:
58817
diff
changeset
|
46 self.assertEqual(tp, 'EFGH') |
|
50445
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
47 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
48 data = subprocess.Popen(["/Developer/Tools/GetFileInfo", test_support.TESTFN], |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
49 stdout=subprocess.PIPE).communicate()[0] |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
50 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
51 tp = None |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
52 cr = None |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
53 for ln in data.splitlines(): |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
54 if ln.startswith('type:'): |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
55 tp = ln.split()[-1][1:-1] |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
56 if ln.startswith('creator:'): |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
57 cr = ln.split()[-1][1:-1] |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
58 |
|
66348
614c84670c63
Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents:
58817
diff
changeset
|
59 self.assertEqual(cr, 'ABCD') |
|
614c84670c63
Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents:
58817
diff
changeset
|
60 self.assertEqual(tp, 'EFGH') |
|
50445
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
61 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
62 finally: |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
63 os.unlink(test_support.TESTFN) |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
64 |
|
1dcb19216b64
Fix for issue1594
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
48485
diff
changeset
|
65 |
|
48485
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
66 def testOpenRF(self): |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
67 try: |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
68 fp = open(test_support.TESTFN, 'w') |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
69 fp.write('hello world\n') |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
70 fp.close() |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
71 |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
72 rfp = MacOS.openrf(test_support.TESTFN, '*wb') |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
73 rfp.write('goodbye world\n') |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
74 rfp.close() |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
75 |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
76 |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
77 fp = open(test_support.TESTFN, 'r') |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
78 data = fp.read() |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
79 fp.close() |
|
66348
614c84670c63
Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents:
58817
diff
changeset
|
80 self.assertEqual(data, 'hello world\n') |
|
48485
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
81 |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
82 rfp = MacOS.openrf(test_support.TESTFN, '*rb') |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
83 data = rfp.read(100) |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
84 data2 = rfp.read(100) |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
85 rfp.close() |
|
66348
614c84670c63
Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents:
58817
diff
changeset
|
86 self.assertEqual(data, 'goodbye world\n') |
|
614c84670c63
Merged revisions 86596 via svnmerge from
Ezio Melotti <ezio.melotti@gmail.com>
parents:
58817
diff
changeset
|
87 self.assertEqual(data2, '') |
|
48485
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
88 |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
89 |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
90 finally: |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
91 os.unlink(test_support.TESTFN) |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
92 |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
93 def test_main(): |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
94 test_support.run_unittest(TestMacOS) |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
95 |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
96 |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
97 if __name__ == '__main__': |
|
bd4841069c68
Merged revisions 63955 via svnmerge from
Georg Brandl <georg@python.org>
parents:
diff
changeset
|
98 test_main() |
