blob: 713ac01be4c88423ca7d958ba92396e2deb89dd8 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="frame_XModel" script:language="StarBasic">
'*************************************************************************
'
' 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 oXModelController as Object
' - Global oXModelSel as Object
' - Global oXModelToSel as Object
'*************************************************************************
Sub RunTest()
'*************************************************************************
' INTERFACE:
' com.sun.star.frame.XModel
'*************************************************************************
On Error Goto ErrHndl
Dim bOK As Boolean
Dim oController As Object
Dim oSelection As Object
Dim aArgs(0 to 0) As Variant
Dim oCursor As Object
Dim cURL As String
Dim i As Integer
Dim args1(0) As New com.sun.star.beans.PropertyValue
Test.StartMethod("attachResource()")
args1(0).Name = "XModel"
bOK = oObj.attachResource(".component:DB/DataSourceBrowser", args1())
Test.MethodTested("attachResource()", bOK)
Test.StartMethod("getURL()")
bOK = true
cURL = oObj.getURL()
bOK = bOK AND (cURL = ".component:DB/DataSourceBrowser")
Test.MethodTested("getURL()", bOK)
Test.StartMethod("getArgs()")
bOK = true
aArgs() = oObj.Args
bOK = bOK AND NOT isNull(aArgs()) '(0).Name = "XModel"
Test.MethodTested("getArgs()", bOK)
Test.StartMethod("getCurrentController()")
bOK = true
Dim oCurrCtrl As Object
oCurrCtrl = oObj.getCurrentController()
bOK = bOK AND isObject(oCurrCtrl)
bOK = bOK AND hasUnoInterfaces(oCurrCtrl, "com.sun.star.frame.XController")
Test.MethodTested("getCurrentController()", bOK)
Test.StartMethod("getCurrentSelection()")
bOK = true
Dim oCurrSelection As Object
oXModelSel.select(oXModelToSel)
oCurrSelection = oObj.getCurrentSelection()
bOK = bOK AND hasUnoInterfaces(oCurrSelection, "com.sun.star.uno.XInterface")
Test.MethodTested("getCurrentSelection()", bOK)
Test.StartMethod("hasControllersLocked()")
bOK = true
' there should no controllers be locked
bOK = bOK AND NOT oObj.hasControllersLocked()
Test.MethodTested("hasControllersLocked()", bOK)
' now lock controllers
Test.StartMethod("lockControllers()")
bOK = true
oObj.lockControllers()
' controllers should be locked
bOK = bOK AND oObj.hasControllersLocked()
Test.MethodTested("lockControllers()", bOK)
' unlock controllers and check success
Test.StartMethod("unlockControllers()")
bOK = true
oObj.unlockControllers()
bOK = bOK AND NOT oObj.hasControllersLocked()
Test.MethodTested("unlockControllers()", bOK)
Test.StartMethod("connectController()")
oObj.connectController(oXModelController)
Test.MethodTested("connectController()", bOK)
Test.StartMethod("disconnectController()")
oObj.disconnectController(oXModelController)
oObj.connectController(oCurrCtrl)
Test.MethodTested("disconnectController()", bOK)
Test.StartMethod("setCurrentController()")
oObj.setCurrentController(oCurrCtrl)
Test.MethodTested("setCurrentController()", bOK)
Exit Sub
ErrHndl:
Test.Exception()
bOK = false
resume next
End Sub
</script:module>