Update ooo320-m1
[ooovba.git] / testautomation / framework / optional / includes / security_evilmacro2.inc
blobb1a949b155a1c835352742698833e608e259bb3d
1 'encoding UTF-8  Do not remove or change this line!
2 '**************************************************************************
3 '* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 '* 
5 '* Copyright 2008 by Sun Microsystems, Inc.
6 '*
7 '* OpenOffice.org - a multi-platform office productivity suite
8 '*
9 '* $RCSfile: security_evilmacro2.inc,v $
11 '* $Revision: 1.1 $
13 '* last change: $Author: jsi $ $Date: 2008-06-16 12:18:15 $
15 '* This file is part of OpenOffice.org.
17 '* OpenOffice.org is free software: you can redistribute it and/or modify
18 '* it under the terms of the GNU Lesser General Public License version 3
19 '* only, as published by the Free Software Foundation.
21 '* OpenOffice.org is distributed in the hope that it will be useful,
22 '* but WITHOUT ANY WARRANTY; without even the implied warranty of
23 '* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
24 '* GNU Lesser General Public License version 3 for more details
25 '* (a copy is included in the LICENSE file that accompanied this code).
27 '* You should have received a copy of the GNU Lesser General Public License
28 '* version 3 along with OpenOffice.org.  If not, see
29 '* <http://www.openoffice.org/license.html>
30 '* for a copy of the LGPLv3 License.
32 '/******************************************************************************
34 '*  owner : joerg.skottke@sun.com
36 '*  short description : Load documents containing hidden BASIC scripts
38 '\******************************************************************************
40 testcase tSecurityEvilMacro2()
42     '///<h1>Level 1 test: Deny macro execution/Security level set to medium</h1>
43     '///<ul>
44     
45     dim acFile( 2 ) as string
47         acFile( 1 ) = gTesttoolPath & "framework\optional\input\security\test_macro.html"
48         acFile( 1 ) = convertpath( acFile( 1 ) )
50         acFile( 2 ) = gTesttoolPath & "framework\optional\input\security\test_macro.odt"
51         acFile( 2 ) = convertpath( acFile( 2 ) )
53     dim iCurrentFile as integer ' increment variable
54     dim cMsg as string          ' string from messagebox
55     dim brc as boolean          ' some returnvalue
56     
58     '///+<li>Do following for each document to be tested:</li>
59     '///<ul>
61     for iCurrentFile = 1 to ubound( acFile() )
63         printlog( "" )
64         printlog( "File: " & acFile( iCurrentFile ) )
66         '///+<li>Click FileOpen or go to the dialog via menu</li>
67         FileOpen
69         '///+<li>Enter the name of the file</li>
70         kontext "OeffnenDlg"
71         Dateiname.setText( acFile( iCurrentFile ) )
73         '///+<li>Click &quot;Open&quot;</li>
74         Oeffnen.click()
76         '///+<li>Verify that the security warning comes up, confirm to run macro.<br>
77         '///+ There should be no warning for security levels other than medium!</li>
78         brc = hDenyMacroExecution() 
79         if ( not brc ) then
80             warnlog( "Macro security dialog not triggered by document with macro" )
81         endif
83         '///+<li>Wait a moment for the document to get loaded</li>
84         '///+<li>Check for a messagebox to come up on load. This might only<br>
85         '///+ after a security warning has been displayed!</li>
86         kontext "Active"
87         if ( active.exists( 5 ) ) then
89             ' warn if macro runs without security warning
90             warnlog( "A macro was executed without permission" )
92             ' get the string on the messagebox
93             cMsg = active.getText()
94             cMsg = hRemoveLineBreaks( cMsg )
95             warnlog( "Macro was executed: " & cMsg )
96             active.ok()
97         else
98             printlog( "Macro has not been executed" )
99         endif
101         '///+<li>Close the document</li>
102         call ExitRestartTheOffice()
104     next iCurrentFile
106     '///</ul>
107     '///</ul>
109 endcase