blob: f6b72eeb782c1035afb2bc83f11f03d7d291fbce [file] [log] [blame]
Jack Jansen10882f62003-01-28 21:39:28 +00001# Copyright (C) 2003 Python Software Foundation
2
3import unittest
Jack Jansenb1fbf852003-03-12 13:47:39 +00004import warnings
5warnings.filterwarnings("ignore", "macfs.*", DeprecationWarning, __name__)
Jack Jansen10882f62003-01-28 21:39:28 +00006import macfs
7import os
8import tempfile
9from test import test_support
10
11class TestMacfs(unittest.TestCase):
12
13 def setUp(self):
14 fp = open(test_support.TESTFN, 'w')
15 fp.write('hello world\n')
16 fp.close()
17
18 def tearDown(self):
19 try:
20 os.unlink(test_support.TESTFN)
21 except:
22 pass
23
24 def test_fsspec(self):
25 fss = macfs.FSSpec(test_support.TESTFN)
Jack Jansenb86a2e82003-02-05 11:14:16 +000026 self.assertEqual(os.path.realpath(test_support.TESTFN), fss.as_pathname())
Tim Petersf2715e02003-02-19 02:35:07 +000027
Jack Jansen10882f62003-01-28 21:39:28 +000028 def test_fsref(self):
29 fsr = macfs.FSRef(test_support.TESTFN)
Jack Jansenb86a2e82003-02-05 11:14:16 +000030 self.assertEqual(os.path.realpath(test_support.TESTFN), fsr.as_pathname())
Jack Jansendded8482003-03-11 21:48:57 +000031
32 def test_fsref_unicode(self):
33 testfn_unicode = unicode(test_support.TESTFN)
34 fsr = macfs.FSRef(testfn_unicode)
35 self.assertEqual(os.path.realpath(test_support.TESTFN), fsr.as_pathname())
Tim Petersf2715e02003-02-19 02:35:07 +000036
Jack Jansen10882f62003-01-28 21:39:28 +000037 def test_coercion(self):
38 fss = macfs.FSSpec(test_support.TESTFN)
39 fsr = macfs.FSRef(test_support.TESTFN)
40 fss2 = fsr.as_fsspec()
41 fsr2 = fss.as_fsref()
42 self.assertEqual(fss.as_pathname(), fss2.as_pathname())
43 self.assertEqual(fsr.as_pathname(), fsr2.as_pathname())
Tim Petersf2715e02003-02-19 02:35:07 +000044
Jack Jansen10882f62003-01-28 21:39:28 +000045 def test_dates(self):
46 import time
47 fss = macfs.FSSpec(test_support.TESTFN)
48 now = int(time.time())
49 fss.SetDates(now, now-1, now-2)
50 dates = fss.GetDates()
51 self.assertEqual(dates, (now, now-1, now-2))
Tim Petersf2715e02003-02-19 02:35:07 +000052
Jack Jansen10882f62003-01-28 21:39:28 +000053 def test_ctor_type(self):
54 fss = macfs.FSSpec(test_support.TESTFN)
55 fss.SetCreatorType('Pyth', 'TEXT')
56 filecr, filetp = fss.GetCreatorType()
57 self.assertEqual((filecr, filetp), ('Pyth', 'TEXT'))
Tim Petersf2715e02003-02-19 02:35:07 +000058
Jack Jansen10882f62003-01-28 21:39:28 +000059 def test_alias(self):
60 fss = macfs.FSSpec(test_support.TESTFN)
61 alias = fss.NewAlias()
62 fss2, changed = alias.Resolve()
63 self.assertEqual(changed, 0)
Tim Petersf2715e02003-02-19 02:35:07 +000064 self.assertEqual(fss.as_pathname(), fss2.as_pathname())
65
66
Jack Jansen10882f62003-01-28 21:39:28 +000067 def test_fss_alias(self):
68 fss = macfs.FSSpec(test_support.TESTFN)
Tim Petersf2715e02003-02-19 02:35:07 +000069
Jack Jansen10882f62003-01-28 21:39:28 +000070
71def test_main():
72 test_support.run_unittest(TestMacfs)
73
74
75if __name__ == '__main__':
76 test_main()