1 2from PyObjCTools.TestSupport import * 3from Quartz.QuartzCore import * 4from Quartz import * 5from Foundation import NSValue 6 7class TestCATransform3D (TestCase): 8 9 @min_os_level('10.5') 10 def testStructs(self): 11 v = CATransform3D() 12 self.assertIsInstance(v.m11, float) 13 self.assertIsInstance(v.m12, float) 14 self.assertIsInstance(v.m13, float) 15 self.assertIsInstance(v.m14, float) 16 17 self.assertIsInstance(v.m21, float) 18 self.assertIsInstance(v.m22, float) 19 self.assertIsInstance(v.m23, float) 20 self.assertIsInstance(v.m24, float) 21 22 self.assertIsInstance(v.m31, float) 23 self.assertIsInstance(v.m32, float) 24 self.assertIsInstance(v.m33, float) 25 self.assertIsInstance(v.m34, float) 26 27 self.assertIsInstance(v.m41, float) 28 self.assertIsInstance(v.m42, float) 29 self.assertIsInstance(v.m43, float) 30 self.assertIsInstance(v.m44, float) 31 32 33 @min_os_level('10.5') 34 def testConstants(self): 35 self.assertIsInstance(CATransform3DIdentity, CATransform3D) 36 37 @min_os_level('10.5') 38 def testFunctions(self): 39 self.assertResultHasType(CATransform3DIsIdentity, objc._C_BOOL) 40 v = CATransform3DIsIdentity(CATransform3DIdentity) 41 self.assertTrue(v is True) 42 43 self.assertResultHasType(CATransform3DEqualToTransform, objc._C_BOOL) 44 v = CATransform3DEqualToTransform(CATransform3DIdentity, CATransform3DIdentity) 45 self.assertTrue(v is True) 46 47 tf1 = CATransform3DMakeTranslation(1.0, 2.0, 3.0) 48 self.assertIsInstance(tf1, CATransform3D) 49 50 tf2 = CATransform3DMakeScale(1.0, 2.0, 3.0) 51 self.assertIsInstance(tf2, CATransform3D) 52 53 tf3 = CATransform3DMakeRotation(1.0, 2.0, 3.0, 4.0) 54 self.assertIsInstance(tf3, CATransform3D) 55 56 tf4 = CATransform3DTranslate(tf1, 1.0, 2.0, 3.0) 57 self.assertIsInstance(tf4, CATransform3D) 58 59 tf5 = CATransform3DScale(tf1, 1.0, 2.0, 3.0) 60 self.assertIsInstance(tf5, CATransform3D) 61 62 tf6 = CATransform3DRotate(tf1, 1.0, 2.0, 3.0, 4.0) 63 self.assertIsInstance(tf6, CATransform3D) 64 65 v = CATransform3DConcat(tf1, tf2) 66 self.assertIsInstance(v, CATransform3D) 67 68 v = CATransform3DInvert(tf3) 69 self.assertIsInstance(v, CATransform3D) 70 71 tf7 = CATransform3DMakeAffineTransform(CGAffineTransformIdentity) 72 self.assertIsInstance(tf7, CATransform3D) 73 74 self.assertResultHasType(CATransform3DIsAffine, objc._C_BOOL) 75 v = CATransform3DIsAffine(tf6) 76 self.assertTrue(v is False) 77 v = CATransform3DIsAffine(tf7) 78 self.assertTrue(v is True) 79 80 v = CATransform3DGetAffineTransform(tf7) 81 self.assertIsInstance(v, CGAffineTransform) 82 83 84 self.assertResultHasType(NSValue.CATransform3DValue, CATransform3D.__typestr__) 85 self.assertArgHasType(NSValue.valueWithCATransform3D_, 0, CATransform3D.__typestr__) 86 87 88if __name__ == "__main__": 89 main() 90