1from PyObjCTools.TestSupport import * 2 3from Foundation import * 4import Foundation 5 6class TestNSBundle (TestCase): 7 def testOutput(self): 8 obj = NSBundle.mainBundle() 9 10 m = obj.preflightAndReturnError_.__metadata__() 11 self.failUnless(m['arguments'][2]['type'].startswith('o^')) 12 13 m = obj.loadAndReturnError_.__metadata__() 14 self.failUnless(m['arguments'][2]['type'].startswith('o^')) 15 16 def testMethods(self): 17 b = NSBundle.mainBundle() 18 # Test on an instance because NSBundle has class methods 19 # that interfere with this test 20 self.failUnlessResultIsBOOL(b.load) 21 self.failUnlessResultIsBOOL(b.isLoaded) 22 self.failUnlessResultIsBOOL(b.unload) 23 24 @min_os_level('10.5') 25 def testMethods10_5(self): 26 self.failUnlessResultIsBOOL(NSBundle.preflightAndReturnError_) 27 self.failUnlessArgIsOut(NSBundle.preflightAndReturnError_, 0) 28 self.failUnlessResultIsBOOL(NSBundle.loadAndReturnError_) 29 self.failUnlessArgIsOut(NSBundle.loadAndReturnError_, 0) 30 31 def testConstants(self): 32 self.assertEquals(NSBundleExecutableArchitectureI386, 0x00000007) 33 self.assertEquals(NSBundleExecutableArchitecturePPC, 0x00000012) 34 self.assertEquals(NSBundleExecutableArchitectureX86_64, 0x01000007) 35 self.assertEquals(NSBundleExecutableArchitecturePPC64, 0x01000012) 36 37 self.failUnless( isinstance(NSBundleDidLoadNotification, unicode) ) 38 self.failUnless( isinstance(NSLoadedClasses, unicode) ) 39 40 def testDefines(self): 41 self.failUnless(hasattr(Foundation, 'NSLocalizedString')) 42 self.failUnless(hasattr(Foundation, 'NSLocalizedStringFromTable')) 43 self.failUnless(hasattr(Foundation, 'NSLocalizedStringFromTableInBundle')) 44 self.failUnless(hasattr(Foundation, 'NSLocalizedStringWithDefaultValue')) 45 46 47 48if __name__ == "__main__": 49 main() 50