summaryrefslogtreecommitdiff
path: root/qadevOOo/tests/basic/ifc/view/XPrintable/view_XPrintable.xba
diff options
context:
space:
mode:
Diffstat (limited to 'qadevOOo/tests/basic/ifc/view/XPrintable/view_XPrintable.xba')
-rw-r--r--qadevOOo/tests/basic/ifc/view/XPrintable/view_XPrintable.xba119
1 files changed, 119 insertions, 0 deletions
diff --git a/qadevOOo/tests/basic/ifc/view/XPrintable/view_XPrintable.xba b/qadevOOo/tests/basic/ifc/view/XPrintable/view_XPrintable.xba
new file mode 100644
index 000000000000..19d74dacd651
--- /dev/null
+++ b/qadevOOo/tests/basic/ifc/view/XPrintable/view_XPrintable.xba
@@ -0,0 +1,119 @@
+<?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="view_XPrintable" 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
+
+
+
+Sub RunTest()
+
+'*************************************************************************
+' INTERFACE:
+' com.sun.star.view.XPrintable
+'*************************************************************************
+On Error Goto ErrHndl
+ Dim bOK As Boolean
+ Dim sFileName, sFileUrl As String
+ Dim aPrintingOptions(1) As New com.sun.star.beans.PropertyValue
+ Dim aPrinterProps As Variant
+ Dim i As Integer
+
+ Test.StartMethod("getPrinter()")
+ bOK = true
+ aPrinterProps = oObj.getPrinter()
+ bOK = bOK AND (ubound(aPrinterProps) &gt; 0)
+ Test.MethodTested("getPrinter()", bOK)
+
+
+ Test.StartMethod("print()")
+ bOK = true
+
+ sFileUrl = utils.getTempFileURL("/XPrintable.prt", true)
+ sFileName = utils.URL2Path(sFileUrl)
+
+ aPrintingOptions(0).Name = "FileName"
+ aPrintingOptions(0).Value = sFileName
+ aPrintingOptions(0).State = com.sun.star.beans.PropertyState.DEFAULT_VALUE
+
+ aPrintingOptions(1).Name = "Wait"
+ aPrintingOptions(1).Value = true
+ oObj.Print(aPrintingOptions())
+
+ ' without waiting Office can hang on setPrinter() call.
+ wait(500)
+
+ bOK = bOK AND FileExists(sFileName)
+ Test.MethodTested("print()", bOK)
+
+ Test.StartMethod("setPrinter()")
+ bOK = true
+ Dim iPaperFormat As Integer
+ Dim iNewPaperFormat As Integer
+
+ for i = 0 to ubound(aPrinterProps())
+ if (aPrinterProps(i).Name = "PaperFormat") then
+ iPaperFormat = aPrinterProps(i).Value
+ exit for
+ endif
+ next i
+
+ if (iPaperFormat = com.sun.star.view.PaperFormat.A4) then
+ iNewPaperFormat = com.sun.star.view.PaperFormat.LETTER
+ else
+ iNewPaperFormat = com.sun.star.view.PaperFormat.A4
+ endif
+
+ aPrinterProps(i).Value = iNewPaperFormat
+
+ oObj.setPrinter(aPrinterProps())
+
+ aPrinterProps() = oObj.getPrinter()
+
+ for i = 0 to ubound(aPrinterProps())
+ if (aPrinterProps(i).Name = "PaperFormat") then
+ bOK = bOK AND (aPrinterProps(i).Value = iNewPaperFormat)
+ exit for
+ endif
+ next i
+ Test.MethodTested("setPrinter()", bOK)
+
+Exit Sub
+ErrHndl:
+ Test.Exception()
+ bOK = false
+ resume next
+End Sub
+</script:module>