summaryrefslogtreecommitdiff
path: root/qadevOOo/tests/basic/ifc/frame/XDispatch/frame_XDispatch.xba
diff options
context:
space:
mode:
Diffstat (limited to 'qadevOOo/tests/basic/ifc/frame/XDispatch/frame_XDispatch.xba')
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatch/frame_XDispatch.xba120
1 files changed, 120 insertions, 0 deletions
diff --git a/qadevOOo/tests/basic/ifc/frame/XDispatch/frame_XDispatch.xba b/qadevOOo/tests/basic/ifc/frame/XDispatch/frame_XDispatch.xba
new file mode 100644
index 000000000000..d373311716b8
--- /dev/null
+++ b/qadevOOo/tests/basic/ifc/frame/XDispatch/frame_XDispatch.xba
@@ -0,0 +1,120 @@
+<?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_XDispatch" script:language="StarBasic">
+
+
+'*************************************************************************
+'
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' 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
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 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 dispatchURL As String
+
+'*************************************************************************
+
+
+
+
+
+
+Sub RunTest()
+
+'*************************************************************************
+' INTERFACE:
+' com.sun.star.frame.XDispatch
+'*************************************************************************
+On Error Goto ErrHndl
+ Dim bOK As Boolean
+ Dim listener1 As Object, listener2 As Object
+ Dim URL As New com.sun.star.util.URL
+
+ URL.Complete = dispatchURL
+
+ Out.Log("Dispatch URL is '" + dispatchURL + "'")
+ if isNull(oObj) then Out.Log("Component is NULL !!!!")
+
+ Test.StartMethod("addStatusListener()")
+ listener1 = createUnoListener("SL1_", "com.sun.star.frame.XStatusListener")
+ listener2 = createUnoListener("SL2_", "com.sun.star.frame.XStatusListener")
+
+ if NOT(isNull(listener1) OR isNull(listener2)) then
+ Out.Log("Listeners were created")
+ else
+ Out.Log("Listeners were NOT created !!!")
+ EndIf
+
+ oObj.addStatusListener(listener1, URL)
+ oObj.addStatusListener(listener2, URL)
+ Out.Log("Listeners were added")
+
+ Test.StartMethod("removeStatusListener()")
+ oObj.removeStatusListener(listener1, URL)
+
+ Test.StartMethod("dispatch()")
+
+ SL1Called = false
+ SL2Called = false
+
+ Out.Log("Dispatching ...")
+ oObj.dispatch(URL, DimArray())
+ wait(500)
+ Out.Log("Dispatched.")
+ Test.MethodTested("dispatch()", true)
+
+ bOK = SL2Called
+ Test.MethodTested("addStatusListener()", bOK)
+ bOK = bOK AND NOT SL1Called
+ Test.MethodTested("removeStatusListener()", bOK)
+
+Exit Sub
+ErrHndl:
+ Test.Exception()
+ bOK = false
+ resume next
+End Sub
+
+Dim SL1Called As Boolean
+Dim SL2Called As Boolean
+
+Sub SL1_StatusChanged(ev As Variant)
+ SL1Called = true
+ Out.Log("SL1_StatusChanged() called.")
+End Sub
+
+Sub SL2_StatusChanged(ev As Variant)
+ SL2Called = true
+ Out.Log("SL2_StatusChanged() called.")
+End Sub
+</script:module>