Skip to content

Commit c8bd73c

Browse files
committed
XMLParser: Confirm that the parts of QName is also not swapped.
1 parent 64904c7 commit c8bd73c

File tree

1 file changed

+24
-8
lines changed

1 file changed

+24
-8
lines changed

TestFoundation/TestXMLParser.swift

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -160,22 +160,38 @@ class TestXMLParser : XCTestCase {
160160
let name: String
161161
init(_ name: String) { self.name = name }
162162
func parser(_ parser: XMLParser,
163-
didStartElement elementName: String,
164-
namespaceURI: String?,
165-
qualifiedName qName: String?,
166-
attributes attributeDict: [String: String] = [:]) {
167-
XCTAssertEqual(self.name, elementName)
163+
didStartElement elementName: String,
164+
namespaceURI: String?,
165+
qualifiedName qName: String?,
166+
attributes attributeDict: [String: String] = [:])
167+
{
168+
if parser.shouldProcessNamespaces {
169+
XCTAssertEqual(self.name, qName)
170+
} else {
171+
XCTAssertEqual(self.name, elementName)
172+
}
168173
}
169174
func parser(_ parser: XMLParser,
170175
didEndElement elementName: String,
171176
namespaceURI: String?,
172-
qualifiedName qName: String?) {
173-
XCTAssertEqual(self.name, elementName)
177+
qualifiedName qName: String?)
178+
{
179+
if parser.shouldProcessNamespaces {
180+
XCTAssertEqual(self.name, qName)
181+
} else {
182+
XCTAssertEqual(self.name, elementName)
183+
}
174184
}
175185
func check() {
176186
let elementString = "<\(self.name) />"
177-
let parser = XMLParser(data: elementString.data(using: .utf8)!)
187+
var parser = XMLParser(data: elementString.data(using: .utf8)!)
188+
parser.delegate = self
189+
XCTAssertTrue(parser.parse())
190+
191+
// Confirm that the parts of QName is also not swapped.
192+
parser = XMLParser(data: elementString.data(using: .utf8)!)
178193
parser.delegate = self
194+
parser.shouldProcessNamespaces = true
179195
XCTAssertTrue(parser.parse())
180196
}
181197
}

0 commit comments

Comments
 (0)