'************************************************************************* ' ' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ' ' Copyright 2008 by Sun Microsystems, Inc. ' ' OpenOffice.org - a multi-platform office productivity suite ' ' $RCSfile: lang_XTypeProvider.xba,v $ ' ' $Revision: 1.3 $ ' ' This file is part of OpenOffice.org. ' ' OpenOffice.org is free software: you can redistribute it and/or modify ' it under the terms of the GNU Lesser General Public License version 3 ' only, as published by the Free Software Foundation. ' ' OpenOffice.org is distributed in the hope that it will be useful, ' but WITHOUT ANY WARRANTY; without even the implied warranty of ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ' GNU Lesser General Public License version 3 for more details ' (a copy is included in the LICENSE file that accompanied this code). ' ' You should have received a copy of the GNU Lesser General Public License ' version 3 along with OpenOffice.org. If not, see ' ' for a copy of the LGPLv3 License. ' '************************************************************************* '************************************************************************* Sub RunTest() '************************************************************************* ' INTERFACE: ' com.sun.star.lang.XTypeProvider '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim n As Integer Dim vTypes As Variant Dim IDs1(15) As Integer Dim IDs2(15) As Integer Test.StartMethod("getTypes()") bOK = false vTypes = oObj.getTypes() For n = lBound(vTypes()) to UBound(vTypes()) If vTypes(n).Name = cIfcLongName Then Out.Log("Type of Object " & n & " is " & vTypes(n).Name & ". Same as Interface => ok!" bOK = true Else Out.Log("Type of Object " & n & " is " & vTypes(n).Name End If Next n Test.MethodTested("getTypes()", bOK) Test.StartMethod("getImplementationId()") bOK = true IDs1() = oObj.getImplementationId() IDs2() = oObj.getImplementationId() bOK = bOK AND ubound(IDs1()) = ubound(IDs2()) bOK = bOK AND ubound(IDs1()) = 15 if (bOK) then for n = lBound(IDs1()) to lBound(IDs2()) bOK = bOK AND IDs1(n) = IDs2(n) Next n end if if (NOT bOK) then Out.Log("Returned IDs are NOT identical!") end if Test.MethodTested("getImplementationId()", bOK) Exit Sub ErrHndl: Test.Exception() bOK = false resume next End Sub