1from Foundation import *
2from PyObjCTools.TestSupport import *
3
4class TestNSXMLParser (TestCase):
5    def testConstants(self):
6        self.assertEquals(NSXMLParserInternalError, 1)
7        self.assertEquals(NSXMLParserOutOfMemoryError, 2)
8        self.assertEquals(NSXMLParserDocumentStartError, 3)
9        self.assertEquals(NSXMLParserEmptyDocumentError, 4)
10        self.assertEquals(NSXMLParserPrematureDocumentEndError, 5)
11        self.assertEquals(NSXMLParserInvalidHexCharacterRefError, 6)
12        self.assertEquals(NSXMLParserInvalidDecimalCharacterRefError, 7)
13        self.assertEquals(NSXMLParserInvalidCharacterRefError, 8)
14        self.assertEquals(NSXMLParserInvalidCharacterError, 9)
15        self.assertEquals(NSXMLParserCharacterRefAtEOFError, 10)
16        self.assertEquals(NSXMLParserCharacterRefInPrologError, 11)
17        self.assertEquals(NSXMLParserCharacterRefInEpilogError, 12)
18        self.assertEquals(NSXMLParserCharacterRefInDTDError, 13)
19        self.assertEquals(NSXMLParserEntityRefAtEOFError, 14)
20        self.assertEquals(NSXMLParserEntityRefInPrologError, 15)
21        self.assertEquals(NSXMLParserEntityRefInEpilogError, 16)
22        self.assertEquals(NSXMLParserEntityRefInDTDError, 17)
23        self.assertEquals(NSXMLParserParsedEntityRefAtEOFError, 18)
24        self.assertEquals(NSXMLParserParsedEntityRefInPrologError, 19)
25        self.assertEquals(NSXMLParserParsedEntityRefInEpilogError, 20)
26        self.assertEquals(NSXMLParserParsedEntityRefInInternalSubsetError, 21)
27        self.assertEquals(NSXMLParserEntityReferenceWithoutNameError, 22)
28        self.assertEquals(NSXMLParserEntityReferenceMissingSemiError, 23)
29        self.assertEquals(NSXMLParserParsedEntityRefNoNameError, 24)
30        self.assertEquals(NSXMLParserParsedEntityRefMissingSemiError, 25)
31        self.assertEquals(NSXMLParserUndeclaredEntityError, 26)
32        self.assertEquals(NSXMLParserUnparsedEntityError, 28)
33        self.assertEquals(NSXMLParserEntityIsExternalError, 29)
34        self.assertEquals(NSXMLParserEntityIsParameterError, 30)
35        self.assertEquals(NSXMLParserUnknownEncodingError, 31)
36        self.assertEquals(NSXMLParserEncodingNotSupportedError, 32)
37        self.assertEquals(NSXMLParserStringNotStartedError, 33)
38        self.assertEquals(NSXMLParserStringNotClosedError, 34)
39        self.assertEquals(NSXMLParserNamespaceDeclarationError, 35)
40        self.assertEquals(NSXMLParserEntityNotStartedError, 36)
41        self.assertEquals(NSXMLParserEntityNotFinishedError, 37)
42        self.assertEquals(NSXMLParserLessThanSymbolInAttributeError, 38)
43        self.assertEquals(NSXMLParserAttributeNotStartedError, 39)
44        self.assertEquals(NSXMLParserAttributeNotFinishedError, 40)
45        self.assertEquals(NSXMLParserAttributeHasNoValueError, 41)
46        self.assertEquals(NSXMLParserAttributeRedefinedError, 42)
47        self.assertEquals(NSXMLParserLiteralNotStartedError, 43)
48        self.assertEquals(NSXMLParserLiteralNotFinishedError, 44)
49        self.assertEquals(NSXMLParserCommentNotFinishedError, 45)
50        self.assertEquals(NSXMLParserProcessingInstructionNotStartedError, 46)
51        self.assertEquals(NSXMLParserProcessingInstructionNotFinishedError, 47)
52        self.assertEquals(NSXMLParserNotationNotStartedError, 48)
53        self.assertEquals(NSXMLParserNotationNotFinishedError, 49)
54        self.assertEquals(NSXMLParserAttributeListNotStartedError, 50)
55        self.assertEquals(NSXMLParserAttributeListNotFinishedError, 51)
56        self.assertEquals(NSXMLParserMixedContentDeclNotStartedError, 52)
57        self.assertEquals(NSXMLParserMixedContentDeclNotFinishedError, 53)
58        self.assertEquals(NSXMLParserElementContentDeclNotStartedError, 54)
59        self.assertEquals(NSXMLParserElementContentDeclNotFinishedError, 55)
60        self.assertEquals(NSXMLParserXMLDeclNotStartedError, 56)
61        self.assertEquals(NSXMLParserXMLDeclNotFinishedError, 57)
62        self.assertEquals(NSXMLParserConditionalSectionNotStartedError, 58)
63        self.assertEquals(NSXMLParserConditionalSectionNotFinishedError, 59)
64        self.assertEquals(NSXMLParserExternalSubsetNotFinishedError, 60)
65        self.assertEquals(NSXMLParserDOCTYPEDeclNotFinishedError, 61)
66        self.assertEquals(NSXMLParserMisplacedCDATAEndStringError, 62)
67        self.assertEquals(NSXMLParserCDATANotFinishedError, 63)
68        self.assertEquals(NSXMLParserMisplacedXMLDeclarationError, 64)
69        self.assertEquals(NSXMLParserSpaceRequiredError, 65)
70        self.assertEquals(NSXMLParserSeparatorRequiredError, 66)
71        self.assertEquals(NSXMLParserNMTOKENRequiredError, 67)
72        self.assertEquals(NSXMLParserNAMERequiredError, 68)
73        self.assertEquals(NSXMLParserPCDATARequiredError, 69)
74        self.assertEquals(NSXMLParserURIRequiredError, 70)
75        self.assertEquals(NSXMLParserPublicIdentifierRequiredError, 71)
76        self.assertEquals(NSXMLParserLTRequiredError, 72)
77        self.assertEquals(NSXMLParserGTRequiredError, 73)
78        self.assertEquals(NSXMLParserLTSlashRequiredError, 74)
79        self.assertEquals(NSXMLParserEqualExpectedError, 75)
80        self.assertEquals(NSXMLParserTagNameMismatchError, 76)
81        self.assertEquals(NSXMLParserUnfinishedTagError, 77)
82        self.assertEquals(NSXMLParserStandaloneValueError, 78)
83        self.assertEquals(NSXMLParserInvalidEncodingNameError, 79)
84        self.assertEquals(NSXMLParserCommentContainsDoubleHyphenError, 80)
85        self.assertEquals(NSXMLParserInvalidEncodingError, 81)
86        self.assertEquals(NSXMLParserExternalStandaloneEntityError, 82)
87        self.assertEquals(NSXMLParserInvalidConditionalSectionError, 83)
88        self.assertEquals(NSXMLParserEntityValueRequiredError, 84)
89        self.assertEquals(NSXMLParserNotWellBalancedError, 85)
90        self.assertEquals(NSXMLParserExtraContentError, 86)
91        self.assertEquals(NSXMLParserInvalidCharacterInEntityError, 87)
92        self.assertEquals(NSXMLParserParsedEntityRefInInternalError, 88)
93        self.assertEquals(NSXMLParserEntityRefLoopError, 89)
94        self.assertEquals(NSXMLParserEntityBoundaryError, 90)
95        self.assertEquals(NSXMLParserInvalidURIError, 91)
96        self.assertEquals(NSXMLParserURIFragmentError, 92)
97        self.assertEquals(NSXMLParserNoDTDError, 94)
98        self.assertEquals(NSXMLParserDelegateAbortedParseError, 512)
99
100        self.failUnlessIsInstance(NSXMLParserErrorDomain, unicode)
101
102    def testMethods(self):
103        self.failUnlessArgIsBOOL(NSXMLParser.setShouldProcessNamespaces_, 0)
104        self.failUnlessArgIsBOOL(NSXMLParser.setShouldReportNamespacePrefixes_, 0)
105        self.failUnlessArgIsBOOL(NSXMLParser.setShouldResolveExternalEntities_, 0)
106        self.failUnlessResultIsBOOL(NSXMLParser.shouldProcessNamespaces)
107        self.failUnlessResultIsBOOL(NSXMLParser.shouldReportNamespacePrefixes)
108        self.failUnlessResultIsBOOL(NSXMLParser.shouldResolveExternalEntities)
109        self.failUnlessResultIsBOOL(NSXMLParser.parse)
110
111if __name__ == "__main__":
112    main()
113