'************************************************************************* ' ' Licensed to the Apache Software Foundation (ASF) under one ' or more contributor license agreements. See the NOTICE file ' distributed with this work for additional information ' regarding copyright ownership. The ASF licenses this file ' to you under the Apache License, Version 2.0 (the ' "License"); you may not use this file except in compliance ' with the License. You may obtain a copy of the License at ' ' http://www.apache.org/licenses/LICENSE-2.0 ' ' Unless required by applicable law or agreed to in writing, ' software distributed under the License is distributed on an ' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ' KIND, either express or implied. See the License for the ' specific language governing permissions and limitations ' under the License. ' '************************************************************************* ' Be sure that all variables are dimensioned: option explicit '************************************************************************* ' This Interface/Service test depends on the following GLOBAL variables, ' which must be specified in the object creation: ' - Global vXMLData As Variant '************************************************************************* Sub RunTest() '************************************************************************* ' INTERFACE: ' com.sun.star.xml.sax.XDocumentHandler '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim i As Integer Test.StartMethod("startDocument()") bOK = true oObj.startDocument() Test.MethodTested("startDocument()", bOK) out.log("StartDocument") ' Imports the XML-data For i = 0 to ubound(vXMLData) Dim data As Variant data = vXMLData(i) If data(0) = "start" then Dim oAttr As Object oAttr = createUnoService("basichelper.AttributeList") Dim upBound as Integer upBound = ubound(data()) If upBound > 1 then Dim j As Integer Dim args As Variant args = DimArray(upBound - 2) For j = 0 to ubound(args()) args(j) = data(2 + j) Next j oAttr.initialize(args()) EndIf oObj.startElement(data(1), oAttr) out.log("<" + data(1) + ">") EndIf If data(0) = "end" then oObj.endElement(data(1)) out.log("</" + data(1) + ">") EndIf If data(0) = "chars" then oObj.characters(data(1)) out.log(data(1)) EndIf Next i out.log("EndDocument") Test.StartMethod("endDocument()") oObj.endDocument() bOK = CheckImport() Test.MethodTested("endDocument()", bOK) Test.StartMethod("startElement()") bOK = true Test.MethodTested("startElement()", bOK) Test.StartMethod("endElement()") bOK = true Test.MethodTested("endElement()", bOK) Test.StartMethod("characters()") bOK = true Test.MethodTested("characters()", bOK) Test.StartMethod("ignorableWhitespace()") bOK = true Test.MethodTested("ignorableWhitespace()", bOK) Test.StartMethod("processingInstruction()") bOK = true Test.MethodTested("processingInstruction()", bOK) Test.StartMethod("setDocumentLocator()") bOK = true Test.MethodTested("setDocumentLocator()", bOK) Exit Sub ErrHndl: Test.Exception() bOK = false resume next End Sub