summaryrefslogtreecommitdiff
path: root/qadevOOo/tests/basic/ifc/frame/XDispatchRecorder/frame_XDispatchRecorder.xba
diff options
context:
space:
mode:
Diffstat (limited to 'qadevOOo/tests/basic/ifc/frame/XDispatchRecorder/frame_XDispatchRecorder.xba')
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatchRecorder/frame_XDispatchRecorder.xba158
1 files changed, 158 insertions, 0 deletions
diff --git a/qadevOOo/tests/basic/ifc/frame/XDispatchRecorder/frame_XDispatchRecorder.xba b/qadevOOo/tests/basic/ifc/frame/XDispatchRecorder/frame_XDispatchRecorder.xba
new file mode 100644
index 000000000000..4963ad8a1b31
--- /dev/null
+++ b/qadevOOo/tests/basic/ifc/frame/XDispatchRecorder/frame_XDispatchRecorder.xba
@@ -0,0 +1,158 @@
+<?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_XDispatchRecorder" script:language="StarBasic">
+
+
+'*************************************************************************
+'
+' 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: frame_XDispatchRecorder.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
+' <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 dispRecFrame As Object
+
+'*************************************************************************
+
+
+
+
+
+Sub RunTest()
+
+'*************************************************************************
+' INTERFACE:
+' com.sun.star.frame.XDispatchRecorder
+'*************************************************************************
+On Error Goto ErrHndl
+ Dim bOK As Boolean
+
+ Test.StartMethod("startRecording()")
+ bOK = true
+ oObj.startRecording(dispRecFrame)
+ Test.MethodTested("startRecording()", bOK)
+
+ Test.StartMethod("endRecording()")
+ bOK = true
+ Dim dispURL As com.sun.star.util.URL
+ dispURL = parseURL(".uno:InsertText")
+ Dim dispArgs(0) As new com.sun.star.beans.PropertyValue
+ dispArgs(0).Name = "Text"
+ dispArgs(0).Value = "XDispatchRecorder.endRecording()"
+ Out.log("Dispatching event for frame ...")
+ Dim disp As Object
+ disp = dispRecFrame.queryDispatch(dispURL, "", 0)
+ disp.dispatch(dispURL, dispArgs())
+ wait(2000)
+ Out.log("Ending record ...")
+ oObj.endRecording()
+ Out.log("Getting macro ... :")
+ Dim macro As String
+ macro = oObj.getRecordedMacro()
+ Out.log("'" + macro + "'")
+ if (len(macro) &lt;&gt; 0) then
+ bOK = instr(macro, dispURL.Complete) &gt; -1 and _
+ instr(macro, dispArgs(0).Value) &gt; -1
+ if (Not bOK) then
+ Out.log("Dispatch URL '" + dispURL.Complete _
+ + "' or its argument '" + dispArgs(0).Value _
+ + "' was not found in macro returned - FAILED")
+ end if
+ else
+ bOK = false
+ end if
+ Test.MethodTested("endRecording()", bOK)
+
+ Test.StartMethod("recordDispatch()")
+ bOK = true
+ Out.log("Recording dispatch ...")
+ oObj.recordDispatch(dispURL, dispArgs())
+ Out.log("Getting macro ... :")
+ macro = oObj.getRecordedMacro()
+ Out.log("'" + macro + "'")
+ if (len(macro) &lt;&gt; 0) then
+ bOK = instr(macro, dispURL.Complete) &gt; -1 and _
+ instr(macro, dispArgs(0).Value) &gt; -1
+ if (Not bOK) then
+ Out.log("Dispatch URL '" + dispURL.Complete _
+ + "' or its argument '" + dispArgs(0).Value _
+ + "' was not found in macro returned - FAILED")
+ end if
+ else
+ bOK = false
+ end if
+ Test.MethodTested("recordDispatch()", bOK)
+
+ Test.StartMethod("recordDispatchAsComment()")
+ bOK = true
+ Out.log("Recording dispatch ...")
+ oObj.recordDispatchAsComment(dispURL, dispArgs())
+ Out.log("Getting macro ... :")
+ macro = oObj.getRecordedMacro()
+ Out.log("'" + macro + "'")
+ if (len(macro) &lt;&gt; 0) then
+ bOK = instr(macro, dispURL.Complete) &gt; -1 and _
+ instr(macro, dispArgs(0).Value) &gt; -1
+ if (Not bOK) then
+ Out.log("Dispatch URL '" + dispURL.Complete _
+ + "' or its argument '" + dispArgs(0).Value _
+ + "' was not found in macro returned - FAILED")
+ end if
+ else
+ bOK = false
+ end if
+ Test.MethodTested("recordDispatchAsComment()", bOK)
+
+ Test.StartMethod("getRecordedMacro()")
+ bOK = true
+ Test.MethodTested("getRecordedMacro()", bOK)
+Exit Sub
+ErrHndl:
+ Test.Exception()
+ bOK = false
+ resume next
+End Sub
+
+Function parseURL(complURL As String) As com.sun.star.util.URL
+ Dim url As new com.sun.star.util.URL
+ url.Complete = complURL
+ Dim urlTrans As Object
+ urlTrans = createUnoService("com.sun.star.util.URLTransformer")
+ urlTrans.parseStrict(url)
+ parseURL = url
+End Function
+</script:module>