blob: d02d9e15d6fb868f9b9ab67c267688bf77fe59f8 [file] [log] [blame]
Jack Jansen10882f62003-01-28 21:39:28 +00001# Copyright (C) 2003 Python Software Foundation
2
3import unittest
4import macfs
5import os
6import tempfile
7from test import test_support
8
9class TestMacfs(unittest.TestCase):
10
11 def setUp(self):
12 fp = open(test_support.TESTFN, 'w')
13 fp.write('hello world\n')
14 fp.close()
15
16 def tearDown(self):
17 try:
18 os.unlink(test_support.TESTFN)
19 except:
20 pass
21
22 def test_fsspec(self):
23 fss = macfs.FSSpec(test_support.TESTFN)
Jack Jansenb86a2e82003-02-05 11:14:16 +000024 self.assertEqual(os.path.realpath(test_support.TESTFN), fss.as_pathname())
Tim Petersf2715e02003-02-19 02:35:07 +000025
Jack Jansen10882f62003-01-28 21:39:28 +000026 def test_fsref(self):
27 fsr = macfs.FSRef(test_support.TESTFN)
Jack Jansenb86a2e82003-02-05 11:14:16 +000028 self.assertEqual(os.path.realpath(test_support.TESTFN), fsr.as_pathname())
Jack Jansendded8482003-03-11 21:48:57 +000029
30 def test_fsref_unicode(self):
31 testfn_unicode = unicode(test_support.TESTFN)
32 fsr = macfs.FSRef(testfn_unicode)
33 self.assertEqual(os.path.realpath(test_support.TESTFN), fsr.as_pathname())
Tim Petersf2715e02003-02-19 02:35:07 +000034
Jack Jansen10882f62003-01-28 21:39:28 +000035 def test_coercion(self):
36 fss = macfs.FSSpec(test_support.TESTFN)
37 fsr = macfs.FSRef(test_support.TESTFN)
38 fss2 = fsr.as_fsspec()
39 fsr2 = fss.as_fsref()
40 self.assertEqual(fss.as_pathname(), fss2.as_pathname())
41 self.assertEqual(fsr.as_pathname(), fsr2.as_pathname())
Tim Petersf2715e02003-02-19 02:35:07 +000042
Jack Jansen10882f62003-01-28 21:39:28 +000043 def test_dates(self):
44 import time
45 fss = macfs.FSSpec(test_support.TESTFN)
46 now = int(time.time())
47 fss.SetDates(now, now-1, now-2)
48 dates = fss.GetDates()
49 self.assertEqual(dates, (now, now-1, now-2))
Tim Petersf2715e02003-02-19 02:35:07 +000050
Jack Jansen10882f62003-01-28 21:39:28 +000051 def test_ctor_type(self):
52 fss = macfs.FSSpec(test_support.TESTFN)
53 fss.SetCreatorType('Pyth', 'TEXT')
54 filecr, filetp = fss.GetCreatorType()
55 self.assertEqual((filecr, filetp), ('Pyth', 'TEXT'))
Tim Petersf2715e02003-02-19 02:35:07 +000056
Jack Jansen10882f62003-01-28 21:39:28 +000057 def test_alias(self):
58 fss = macfs.FSSpec(test_support.TESTFN)
59 alias = fss.NewAlias()
60 fss2, changed = alias.Resolve()
61 self.assertEqual(changed, 0)
Tim Petersf2715e02003-02-19 02:35:07 +000062 self.assertEqual(fss.as_pathname(), fss2.as_pathname())
63
64
Jack Jansen10882f62003-01-28 21:39:28 +000065 def test_fss_alias(self):
66 fss = macfs.FSSpec(test_support.TESTFN)
Tim Petersf2715e02003-02-19 02:35:07 +000067
Jack Jansen10882f62003-01-28 21:39:28 +000068
69def test_main():
70 test_support.run_unittest(TestMacfs)
71
72
73if __name__ == '__main__':
74 test_main()