1
2from PyObjCTools.TestSupport import *
3from Quartz.ImageKit import *
4
5class TestIKSlideShowHelper (NSObject):
6    def slideshowItemAtIndex_(self, idx): return None
7    def nameOfSlideshowItemAtIndex_(self, idx): return None
8    def canExportSlideshowItemAtIndex_toApplication_(self, idx, app): return True
9    def slideshowDidChangeCurrentIndex_(self, idx): pass
10
11
12class TestIKSlideshow (TestCase):
13    def no_testProtocols(self):
14        self.failUnlessIsInstance(objc.protocolNamed("IKSlideshowDataSource"), objc.formal_protocol)
15
16    def testProtocolMethods(self):
17        self.failUnlessArgHasType(TestIKSlideShowHelper.slideshowItemAtIndex_, 0, objc._C_NSUInteger)
18        self.failUnlessArgHasType(TestIKSlideShowHelper.nameOfSlideshowItemAtIndex_, 0, objc._C_NSUInteger)
19        self.failUnlessArgHasType(TestIKSlideShowHelper.canExportSlideshowItemAtIndex_toApplication_, 0, objc._C_NSUInteger)
20        self.failUnlessResultIsBOOL(TestIKSlideShowHelper.canExportSlideshowItemAtIndex_toApplication_)
21        self.failUnlessArgHasType(TestIKSlideShowHelper.slideshowDidChangeCurrentIndex_, 0, objc._C_NSUInteger)
22
23    def testMethods(self):
24        self.failUnlessResultIsBOOL(IKSlideshow.canExportToApplication_)
25
26    def testConstants(self):
27        self.failUnlessIsInstance(IKSlideshowModeImages, unicode)
28        self.failUnlessIsInstance(IKSlideshowModePDF, unicode)
29        self.failUnlessIsInstance(IKSlideshowModeOther, unicode)
30        self.failUnlessIsInstance(IKSlideshowWrapAround, unicode)
31        self.failUnlessIsInstance(IKSlideshowStartPaused, unicode)
32        self.failUnlessIsInstance(IKSlideshowStartIndex, unicode)
33        self.failUnlessIsInstance(IKSlideshowPDFDisplayBox, unicode)
34        self.failUnlessIsInstance(IKSlideshowPDFDisplayMode, unicode)
35        self.failUnlessIsInstance(IKSlideshowPDFDisplaysAsBook, unicode)
36        self.failUnlessIsInstance(IK_iPhotoBundleIdentifier, unicode)
37
38
39
40if __name__ == "__main__":
41    main()
42