summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_macos.py
diff options
context:
space:
mode:
authorRonald Oussoren <ronaldoussoren@mac.com>2008-06-05 12:58:24 (GMT)
committerRonald Oussoren <ronaldoussoren@mac.com>2008-06-05 12:58:24 (GMT)
commit5640ce2f1edc0148ee14fd3daeb7ac700700bb71 (patch)
tree9bc8b41710d3a86ccbb579a0209928d787386b69 /Lib/test/test_macos.py
parent80af6da7489c3b28e0a46c73849da34273972e3b (diff)
downloadcpython-5640ce2f1edc0148ee14fd3daeb7ac700700bb71.zip
cpython-5640ce2f1edc0148ee14fd3daeb7ac700700bb71.tar.gz
cpython-5640ce2f1edc0148ee14fd3daeb7ac700700bb71.tar.bz2
MacOS X: Enable 4-way universal builds
This patch adds a new configure argument on OSX: --with-universal-archs=[32-bit|64-bit|all] When used with the --enable-universalsdk option this controls which CPU architectures are includes in the framework. The default is 32-bit, meaning i386 and ppc. The most useful alternative is 'all', which includes all 4 CPU architectures supported by MacOS X (i386, ppc, x86_64 and ppc64). This includes limited support for the Carbon bindings in 64-bit mode as well, limited because (a) I haven't done extensive testing and (b) a large portion of the Carbon API's aren't available in 64-bit mode anyway. I've also duplicated a feature of Apple's build of python: setting the environment variable 'ARCHFLAGS' controls the '-arch' flags used for building extensions using distutils.
Diffstat (limited to 'Lib/test/test_macos.py')
-rw-r--r--Lib/test/test_macos.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/Lib/test/test_macos.py b/Lib/test/test_macos.py
new file mode 100644
index 0000000..e65b174
--- /dev/null
+++ b/Lib/test/test_macos.py
@@ -0,0 +1,43 @@
+import unittest
+import MacOS
+import Carbon.File
+from test import test_support
+import os
+
+TESTFN2 = test_support.TESTFN + '2'
+
+class TestMacOS(unittest.TestCase):
+
+ def testOpenRF(self):
+ try:
+ fp = open(test_support.TESTFN, 'w')
+ fp.write('hello world\n')
+ fp.close()
+
+ rfp = MacOS.openrf(test_support.TESTFN, '*wb')
+ rfp.write('goodbye world\n')
+ rfp.close()
+
+
+ fp = open(test_support.TESTFN, 'r')
+ data = fp.read()
+ fp.close()
+ self.assertEquals(data, 'hello world\n')
+
+ rfp = MacOS.openrf(test_support.TESTFN, '*rb')
+ data = rfp.read(100)
+ data2 = rfp.read(100)
+ rfp.close()
+ self.assertEquals(data, 'goodbye world\n')
+ self.assertEquals(data2, '')
+
+
+ finally:
+ os.unlink(test_support.TESTFN)
+
+def test_main():
+ test_support.run_unittest(TestMacOS)
+
+
+if __name__ == '__main__':
+ test_main()