1from PyObjCTools.TestSupport import * 2 3from Foundation import * 4from AppKit import * 5import Foundation 6 7class TestNSAttributedString (TestCase): 8 def testOutput(self): 9 self.assertArgIsOut(NSAttributedString.attributesAtIndex_effectiveRange_, 1) 10 self.assertArgIsOut(NSAttributedString.attribute_atIndex_effectiveRange_, 2) 11 self.assertArgIsOut(NSAttributedString.attributesAtIndex_longestEffectiveRange_inRange_, 1) 12 self.assertArgIsOut(NSAttributedString.attribute_atIndex_longestEffectiveRange_inRange_, 2) 13 14 self.assertResultIsBOOL(NSAttributedString.isEqualToAttributedString_) 15 16 def testConstantsAppKit(self): 17 self.assertIsInstance(NSFontAttributeName, unicode) 18 self.assertIsInstance(NSParagraphStyleAttributeName, unicode) 19 self.assertIsInstance(NSForegroundColorAttributeName, unicode) 20 self.assertIsInstance(NSUnderlineStyleAttributeName, unicode) 21 self.assertIsInstance(NSSuperscriptAttributeName, unicode) 22 self.assertIsInstance(NSBackgroundColorAttributeName, unicode) 23 self.assertIsInstance(NSAttachmentAttributeName, unicode) 24 self.assertIsInstance(NSLigatureAttributeName, unicode) 25 self.assertIsInstance(NSBaselineOffsetAttributeName, unicode) 26 self.assertIsInstance(NSKernAttributeName, unicode) 27 self.assertIsInstance(NSLinkAttributeName, unicode) 28 self.assertIsInstance(NSStrokeWidthAttributeName, unicode) 29 self.assertIsInstance(NSStrokeColorAttributeName, unicode) 30 self.assertIsInstance(NSUnderlineColorAttributeName, unicode) 31 self.assertIsInstance(NSStrikethroughStyleAttributeName, unicode) 32 self.assertIsInstance(NSStrikethroughColorAttributeName, unicode) 33 self.assertIsInstance(NSShadowAttributeName, unicode) 34 self.assertIsInstance(NSObliquenessAttributeName, unicode) 35 self.assertIsInstance(NSExpansionAttributeName, unicode) 36 self.assertIsInstance(NSCursorAttributeName, unicode) 37 self.assertIsInstance(NSToolTipAttributeName, unicode) 38 self.assertIsInstance(NSCharacterShapeAttributeName, unicode) 39 self.assertIsInstance(NSGlyphInfoAttributeName, unicode) 40 self.assertIsInstance(NSMarkedClauseSegmentAttributeName, unicode) 41 self.assertIsInstance(NSSpellingStateAttributeName, unicode) 42 43 self.assertEqual(NSUnderlineStyleNone, 0x00) 44 self.assertEqual(NSUnderlineStyleSingle, 0x01) 45 self.assertEqual(NSUnderlineStyleThick, 0x02) 46 self.assertEqual(NSUnderlineStyleDouble, 0x09) 47 self.assertEqual(NSUnderlinePatternSolid, 0x0000) 48 self.assertEqual(NSUnderlinePatternDot, 0x0100) 49 self.assertEqual(NSUnderlinePatternDash, 0x0200) 50 self.assertEqual(NSUnderlinePatternDashDot, 0x0300) 51 self.assertEqual(NSUnderlinePatternDashDotDot, 0x0400) 52 53 self.assertEqual(NSSpellingStateSpellingFlag, 1) 54 self.assertEqual(NSSpellingStateGrammarFlag, 2) 55 56 self.assertIsInstance(NSPlainTextDocumentType, unicode) 57 self.assertIsInstance(NSRTFTextDocumentType, unicode) 58 self.assertIsInstance(NSRTFDTextDocumentType, unicode) 59 self.assertIsInstance(NSMacSimpleTextDocumentType, unicode) 60 self.assertIsInstance(NSHTMLTextDocumentType, unicode) 61 self.assertIsInstance(NSDocFormatTextDocumentType, unicode) 62 self.assertIsInstance(NSWordMLTextDocumentType, unicode) 63 self.assertIsInstance(NSWebArchiveTextDocumentType, unicode) 64 self.assertIsInstance(NSOfficeOpenXMLTextDocumentType, unicode) 65 self.assertIsInstance(NSOpenDocumentTextDocumentType, unicode) 66 self.assertIsInstance(NSPaperSizeDocumentAttribute, unicode) 67 self.assertIsInstance(NSLeftMarginDocumentAttribute, unicode) 68 self.assertIsInstance(NSRightMarginDocumentAttribute, unicode) 69 self.assertIsInstance(NSTopMarginDocumentAttribute, unicode) 70 self.assertIsInstance(NSBottomMarginDocumentAttribute, unicode) 71 self.assertIsInstance(NSViewSizeDocumentAttribute, unicode) 72 self.assertIsInstance(NSViewZoomDocumentAttribute, unicode) 73 self.assertIsInstance(NSViewModeDocumentAttribute, unicode) 74 self.assertIsInstance(NSDocumentTypeDocumentAttribute, unicode) 75 self.assertIsInstance(NSReadOnlyDocumentAttribute, unicode) 76 self.assertIsInstance(NSConvertedDocumentAttribute, unicode) 77 self.assertIsInstance(NSCocoaVersionDocumentAttribute, unicode) 78 self.assertIsInstance(NSBackgroundColorDocumentAttribute, unicode) 79 self.assertIsInstance(NSHyphenationFactorDocumentAttribute, unicode) 80 self.assertIsInstance(NSDefaultTabIntervalDocumentAttribute, unicode) 81 self.assertIsInstance(NSCharacterEncodingDocumentAttribute, unicode) 82 self.assertIsInstance(NSTitleDocumentAttribute, unicode) 83 self.assertIsInstance(NSCompanyDocumentAttribute, unicode) 84 self.assertIsInstance(NSCopyrightDocumentAttribute, unicode) 85 self.assertIsInstance(NSSubjectDocumentAttribute, unicode) 86 self.assertIsInstance(NSAuthorDocumentAttribute, unicode) 87 self.assertIsInstance(NSKeywordsDocumentAttribute, unicode) 88 self.assertIsInstance(NSCommentDocumentAttribute, unicode) 89 self.assertIsInstance(NSEditorDocumentAttribute, unicode) 90 self.assertIsInstance(NSCreationTimeDocumentAttribute, unicode) 91 self.assertIsInstance(NSModificationTimeDocumentAttribute, unicode) 92 self.assertIsInstance(NSExcludedElementsDocumentAttribute, unicode) 93 self.assertIsInstance(NSTextEncodingNameDocumentAttribute, unicode) 94 self.assertIsInstance(NSPrefixSpacesDocumentAttribute, unicode) 95 self.assertIsInstance(NSDocumentTypeDocumentOption, unicode) 96 self.assertIsInstance(NSDefaultAttributesDocumentOption, unicode) 97 self.assertIsInstance(NSCharacterEncodingDocumentOption, unicode) 98 self.assertIsInstance(NSTextEncodingNameDocumentOption, unicode) 99 self.assertIsInstance(NSBaseURLDocumentOption, unicode) 100 self.assertIsInstance(NSTimeoutDocumentOption, unicode) 101 self.assertIsInstance(NSWebPreferencesDocumentOption, unicode) 102 self.assertIsInstance(NSWebResourceLoadDelegateDocumentOption, unicode) 103 self.assertIsInstance(NSTextSizeMultiplierDocumentOption, unicode) 104 105 self.assertEqual(NSNoUnderlineStyle, 0) 106 self.assertEqual(NSSingleUnderlineStyle, 1) 107 self.assertIsInstance(NSUnderlineStrikethroughMask, (int, long)) 108 109 def testMethodsAppKit(self): 110 self.assertResultIsBOOL(NSAttributedString.containsAttachments) 111 112 self.assertArgIsOut(NSAttributedString.initWithURL_options_documentAttributes_error_, 2) 113 self.assertArgIsOut(NSAttributedString.initWithURL_options_documentAttributes_error_, 3) 114 115 self.assertArgIsOut(NSAttributedString.initWithData_options_documentAttributes_error_, 2) 116 self.assertArgIsOut(NSAttributedString.initWithData_options_documentAttributes_error_, 3) 117 118 self.assertArgIsOut(NSAttributedString.initWithPath_documentAttributes_, 1) 119 self.assertArgIsOut(NSAttributedString.initWithURL_documentAttributes_, 1) 120 self.assertArgIsOut(NSAttributedString.initWithRTF_documentAttributes_, 1) 121 self.assertArgIsOut(NSAttributedString.initWithRTFD_documentAttributes_, 1) 122 self.assertArgIsOut(NSAttributedString.initWithHTML_documentAttributes_, 1) 123 self.assertArgIsOut(NSAttributedString.initWithHTML_baseURL_documentAttributes_, 2) 124 self.assertArgIsOut(NSAttributedString.initWithRTFDFileWrapper_documentAttributes_, 1) 125 126 self.assertArgIsOut(NSAttributedString.dataFromRange_documentAttributes_error_, 2) 127 self.assertArgIsOut(NSAttributedString.fileWrapperFromRange_documentAttributes_error_, 2) 128 129 self.assertResultIsBOOL(NSMutableAttributedString.readFromURL_options_documentAttributes_error_) 130 self.assertArgIsOut(NSMutableAttributedString.readFromURL_options_documentAttributes_error_, 2) 131 self.assertArgIsOut(NSMutableAttributedString.readFromURL_options_documentAttributes_error_, 3) 132 133 self.assertResultIsBOOL(NSMutableAttributedString.readFromData_options_documentAttributes_error_) 134 self.assertArgIsOut(NSMutableAttributedString.readFromData_options_documentAttributes_error_, 2) 135 self.assertArgIsOut(NSMutableAttributedString.readFromData_options_documentAttributes_error_, 3) 136 137 self.assertResultIsBOOL(NSMutableAttributedString.readFromURL_options_documentAttributes_) 138 self.assertArgIsOut(NSMutableAttributedString.readFromURL_options_documentAttributes_, 2) 139 140 self.assertResultIsBOOL(NSMutableAttributedString.readFromData_options_documentAttributes_) 141 self.assertArgIsOut(NSMutableAttributedString.readFromData_options_documentAttributes_, 2) 142 143 @min_os_level('10.6') 144 def testConstants10_6(self): 145 self.assertEqual(NSAttributedStringEnumerationReverse, 1<<1) 146 self.assertEqual(NSAttributedStringEnumerationLongestEffectiveRangeNotRequired, 1<<20) 147 148 @min_os_level('10.6') 149 def testMethods10_6(self): 150 self.assertArgHasType(NSAttributedString.enumerateAttributesInRange_options_usingBlock_, 0, NSRange.__typestr__) 151 self.assertArgIsBlock(NSAttributedString.enumerateAttributesInRange_options_usingBlock_, 2, b'v@'+NSRange.__typestr__+b'o^'+objc._C_NSBOOL) 152 153 self.assertArgHasType(NSAttributedString.enumerateAttribute_inRange_options_usingBlock_, 1, NSRange.__typestr__) 154 self.assertArgIsBlock(NSAttributedString.enumerateAttribute_inRange_options_usingBlock_, 3, b'v@'+NSRange.__typestr__+b'o^'+objc._C_NSBOOL) 155 156if __name__ == '__main__': 157 main() 158