update dev300-m58
[ooovba.git] / testautomation / writer / optional / includes / undo / w_undo1.inc
blobbd03aa085ab8131a5e650c64566b7a960cdd7b24
1 '**************************************************************************
2 '* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
3 '* 
4 '* Copyright 2008 by Sun Microsystems, Inc.
5 '*
6 '* OpenOffice.org - a multi-platform office productivity suite
7 '*
8 '* $RCSfile: w_undo1.inc,v $
9 '*
10 '* $Revision: 1.2 $
12 '* last change: $Author: vg $ $Date: 2008-08-18 12:38:44 $
14 '* This file is part of OpenOffice.org.
16 '* OpenOffice.org is free software: you can redistribute it and/or modify
17 '* it under the terms of the GNU Lesser General Public License version 3
18 '* only, as published by the Free Software Foundation.
20 '* OpenOffice.org is distributed in the hope that it will be useful,
21 '* but WITHOUT ANY WARRANTY; without even the implied warranty of
22 '* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23 '* GNU Lesser General Public License version 3 for more details
24 '* (a copy is included in the LICENSE file that accompanied this code).
26 '* You should have received a copy of the GNU Lesser General Public License
27 '* version 3 along with OpenOffice.org.  If not, see
28 '* <http://www.openoffice.org/license.html>
29 '* for a copy of the LGPLv3 License.
31 '/************************************************************************
33 '* owner : helge.delfs@sun.com
35 '* short description : Writer Undo/Redo - Test
37 '************************************************************************
39 ' #1 tEditUndoRedo
40 ' #1 tEditUndoTOX               ' undo with table of contents
42 '\***********************************************************************
44 testcase tEditUndoRedo
45     '/// Edit / Undo - Redo ///
46     PrintLog "- Edit / Undo - Redo"
47     Printlog "  - Set Undobuffer to 2"
48     '/// Call Options and Set Number of steps to 2 ///
49     ToolsOptions
50     Call hToolsOptions("StarOffice","Memory")
51     UndoSteps.SetText "2"
52     '/// Close Optionsdialog ///
53     Kontext "ExtrasOptionenDlg"
54     ExtrasOptionenDlg.OK
55     '/// New document ///
56     Call hNewDocument
57     '/// Write any text in document and insert a table ///
58     Call wTypeKeys "Clipboard"
59     Call hTabelleEinfuegen
60     Call wTypeKeys "<Down><Down>text"
62     '/// Call Edit / Undo 2 times ///
63     printlog "  - Undo 2 times"
64     EditUndo
65     Sleep 1
66     EditUndo
67     Sleep 1
68     '/// try Undo more than two 2 times ///
69     try
70         EditUndo
71         Sleep 1
72         Warnlog "Possible to perform Undo more than 2 times!"
73         EditRedo
74     catch
75         Sleep 1
76     endcatch
77     '/// Check if Undo has been worked correctly ///
78     Call wTypeKeys "<Shift Home>"
79     EditCopy
80     if GetClipboardText <> "Clipboard" then Warnlog "Undo is not working correct"
81     Call wTypeKeys "<End>"
83     '/// select Redo 2 times ///
84     printlog "  - Redo 2 times"
85     EditRedo
86     Sleep 1
87     EditRedo
88     Sleep 1
89     '/// try Redo more than 2 times ///
90     try
91         EditRedo
92         Warnlog "Able to perform Redo more than 2 times"
93     catch
94         Sleep 1
95     endcatch
96     EditCopy
97     if GetClipboardText <> "text" then Warnlog "Redo is not working correct"
98     '/// Close document ///
99     Call hCloseDocument
100     Sleep 2
102     '/// Select Options again and try to set Undobuffer to 0 (min should be 1) ///
103     Printlog "  - set Undobuffer to 0"
104     ToolsOptions
105     Call hToolsOptions("StarOffice","Memory")
106     UndoSteps.ToMin
107     if UndoSteps.GetText <> "1" then
108         Warnlog "Undobuffer has not been set to 1!"
109     else
110         Printlog "  - Undobuffer can only set to 1!"
111     end if
112     '/// Close Optionsdialog ///
113     Kontext "ExtrasOptionenDlg"
114     ExtrasOptionenDlg.OK
116     '/// New document ///
117     Call hNewDocument
118     Call wTypeKeys "Don't undo this<Return>Undo this"
119     '/// Insert any text and try to Undo more than 1 time ///
121     EditUndo
122     try
123         EditUndo
124         Warnlog "More than one Undo could be performed!"
125     catch
126     endcatch
127     Call wTypeKeys "<Shift Home>"
128     Wait 500
129     EditCopy
130     if GetClipboardText <> "Undo " then Warnlog "The UndoStep couldn't performed correct!"
132     '/// Close document ///
133     Call hCloseDocument
135     Printlog "  - Set Undobuffer to Default ( 20 )"
136     '/// Open options again and set Number of steps for Undo to default (20) ///
137     ToolsOptions
138     Call hToolsOptions("StarOffice","Memory")
139     UndoSteps.SetText "20"
141     '/// Close Options ///
142     Kontext "ExtrasOptionenDlg"
143     ExtrasOptionenDlg.OK
144 endcase
146 ' -----------------------------------------------------------------------------------
148 testcase tEditUndoTOX
149     QaErrorLog "tEditUndoTOX outcommented due to makeover."
150     goto endsub
151     
152         Dim CompareThis as string, Compare1 as string, Compare2 as string, Compare3 as string
153         Dim CompareWith1 as string, CompareWith2 as string, MenuEntryEnabled as boolean
154         ' Strings depends on the language so this testcase has to be adapted for all languages
155         Select Case iSprache
156                 Case 1: Compare1 = "Undo: "
157                                 Compare2 = "Insert index/table"
158                                 Compare3 = "Remove index/table"
159                 Case 49:Compare1 = "R�ckg�ngig"
160                                 Compare2 = "Einf�gen Verzeichnis"
161                                 Compare3 = "Verzeichnis aufheben"
162                 Case else:
163                                 QAErrorlog "Please adapt this testcase for this language!"
164                                 Compare1 = "Undo: "
165                                 Compare2 = "Insert index/table"
166                                 Compare3 = "Remove index/table"
167         end select
168         CompareWith1 = Compare1 & Compare2
169         CompareWith2 = Compare1 & Compare3      
170         
171         '/// Open a new writerdocument
172         Call hNewDocument
174         '/// Insert an index in document
175         printlog "Insert Index"
176         InsertIndexes
178         Kontext
179     Active.Setpage TabVerzeichnisseVerzeichnis
180     Kontext "TabVerzeichnisseVerzeichnis"
181         Verzeichnistitel.Settext "MyUndoRedoIndex"
182         TabVerzeichnisseVerzeichnis.Ok
183         
184         '/// Check if Edit/Undo menu shows 'Undo: Insert Index'
185         Call hUseMenu()
186         try
187                 MenuSelect(Menugetitemid(2))    ' Opens the Edit - Menu
188                 MenuEntryEnabled = True
189         catch
190                 MenuEntryEnabled = False
191         endcatch
192         if MenuEntryEnabled = True then
193                 CompareThis = hhEntferneTilde(MenuGetItemText(Menugetitemid(1))) 
194                 Call MenuSelect(0)
195                 if CompareWith1 > "" then
196                         if CompareThis <> CompareWith1 then
197                                 Warnlog "Edit / Undo entry is wrong: " & CompareThis
198                                 else
199                                         printlog " - Menu Edit / Undo is ok"
200                                 end if
201                 else
202                         QAErrorLog "Use this string in this testcase: " & CompareThis
203                         Call hCloseDocument
204                         goto endsub
205                 end if
206         else
207                 Warnlog "Edit / Undo in menu is disabled !"
208         end if
209         
210         Kontext "DocumentWriter"
211         DocumentWriter.TypeKeys "<Up><Home>"
212         Wait 500
213         '/// Check if Undo dropdown-Icon shows: 'Insert index'
214         Select Case CheckUndoEntry ( 1, Compare2 )
215                 Case 0: Warnlog " - Undo-dropdown is disabled!"
216                 Case 1: Warnlog " - Entry in Undo-dropdown is wrong!"
217                 Case 2: printlog " - Entry in Undo-dropdown is ok!"
218         end select
219         
220         '/// Update index with context menu entry: Update index"
221         Kontext "DocumentWriter"
222         DocumentWriter.OpenContextMenu
223         ' Update Index/table in context menu
224         printlog "Update Index"
225         Call MenuSelect(Menugetitemid(7))
227         '/// Check if Edit/Undo menu shows 'Undo: Insert Index' after index update
228         Call hUseMenu()
229         try
230                 MenuSelect(Menugetitemid(2))    ' Opens the Edit - Menu
231                 MenuEntryEnabled = True
232         catch
233                 MenuEntryEnabled = False
234         endcatch
235         if MenuEntryEnabled = True then
236                 CompareThis = hhEntferneTilde(MenuGetItemText(Menugetitemid(1)))
237                 Call MenuSelect(0)
238                 if CompareWith1 > "" then
239                         if CompareThis <> CompareWith1 then
240                                 Warnlog "Edit / Undo entry is wrong: " & CompareThis
241                                 else
242                                         printlog " - Menu Edit / Undo is ok"
243                                 end if
244                 else
245                         QAErrorLog "Use this string in this testcase: " & CompareThis
246                         Call hCloseDocument
247                         goto endsub
248                 end if
249         else
250                 Warnlog "Edit / Undo in menu is disabled !"
251         end if
252         
253         Kontext "DocumentWriter"
254         DocumentWriter.TypeKeys "<Up><Home>" 
255         Wait 500
256         '/// Check if Undo dropdown-Icon shows: 'Insert index' after index update
257         Select Case CheckUndoEntry ( 1, Compare2 )
258                 Case 0: Warnlog " - Undo-dropdown is disabled!"
259                 Case 1: Warnlog " - Entry in Undo-dropdown is wrong!"
260                 Case 2: printlog " - Entry in Undo-dropdown is ok!"
261         end select
262         
263         '/// Delete index with context menu entry: Delete index"
264         Kontext "DocumentWriter"
265         DocumentWriter.OpenContextMenu
266         ' Delete Index/table in context menu
267         printlog "Remove Index"
268         Call MenuSelect(Menugetitemid(9))
270         '/// Check if Edit/Undo menu shows 'Undo: Remove index' after deleting index
271         Call hUseMenu()
272         try
273                 MenuSelect(Menugetitemid(2))    ' Opens the Edit - Menu
274                 MenuEntryEnabled = True
275         catch
276                 MenuEntryEnabled = False
277         endcatch
278         if MenuEntryEnabled = True then
279                 CompareThis = hhEntferneTilde(MenuGetItemText(Menugetitemid(1))) 
280                 Call MenuSelect(0)
281                 if CompareWith2 > "" then
282                         if CompareThis <> CompareWith2 then
283                                 Warnlog "Edit / Undo entry is wrong: " & CompareThis
284                                 else
285                                         printlog " - Menu Edit / Undo is ok"
286                                 end if
287                 else
288                         QAErrorLog "Use this string in this testcase: " & CompareThis
289                         Call hCloseDocument
290                         goto endsub
291                 end if
292         else
293                 Warnlog "Edit / Undo in menu is disabled !"
294         end if
295         
296         Kontext "DocumentWriter"
297         DocumentWriter.TypeKeys "<Up><Home>"
298         Wait 500
299         '/// Check if Undo dropdown-Icon shows: 'Remove index' after deleting index
300         Select Case CheckUndoEntry ( 1, Compare3 )
301                 Case 0: Warnlog " - Undo-dropdown is disabled!"
302                 Case 1: Warnlog " - Entry in Undo-dropdown is wrong!"
303                 Case 2: printlog " - Entry in Undo-dropdown is ok!"
304         end select
305         
306         printlog "Working undo"
307         '/// Edit / Undo 1 time -> Index should be restored
308         EditUndo
309         Sleep 1
310         Call wNavigatorAuswahl ( 10, 1 )
311         wait 500
312         InsertIndexes
314         wait 500
315         Kontext
316     try
317                 Active.Setpage TabVerzeichnisseVerzeichnis
318         catch
319                 Warnlog "Index dialog has not been opened!"
320                 Call hCloseDocument
321                 goto endsub
322         endcatch
324     Kontext "TabVerzeichnisseVerzeichnis"       
325         if Verzeichnistitel.Gettext = "MyUndoRedoIndex" then
326                 printlog " - Index has been restored"
327                 TabVerzeichnisseVerzeichnis.Cancel
328                 '/// Check if Undo dropdown-Icon shows: 'Insert index'
329                 Select Case CheckUndoEntry ( 1, Compare2 )
330                         Case 0: Warnlog " - Undo-dropdown is disabled!"
331                         Case 1: Warnlog " - Entry in Undo-dropdown is wrong!"
332                         Case 2: printlog " - Entry in Undo-dropdown is ok!"
333                 end select
335                 '/// Check if Redo dropdown-Icon shows: 'Remove index' after deleting index
336                 Select Case CheckRedoEntry ( 1, Compare3 )
337                         Case 0: Warnlog " - Redo-dropdown is disabled!"
338                         Case 1: Warnlog " - Entry in Redo-dropdown is wrong!"
339                         Case 2: printlog " - Entry in Redo-dropdown is ok!"
340                 end select
342                 '/// Edit / Undo one more time 
343                 '/// Check if Undo dropdown-Icon is disabled
344                 Select Case CheckUndoEntry ( 1, Compare2 )
345                         Case 0: printlog " - Undo-dropdown is disabled!"
346                         Case 1: Warnlog " - Entry in Undo-dropdown is enabled!"
347                         Case 2: Warnlog " - Entry in Undo-dropdown is enabled!"
348                 end select
350                 '/// Check if Redo dropdown-Icon shows: 'Insert index' after Undo 2 times
351                 Select Case CheckRedoEntry ( 1, Compare2 )
352                         Case 0: Warnlog " - Redo-dropdown is disabled!"
353                         Case 1: Warnlog " - Entry in Redo-dropdown is wrong!"
354                         Case 2: printlog " - Entry in Redo-dropdown is ok!"
355                 end select
357         else
358                 Warnlog "Index has not been removed!"
359                 TabVerzeichnisseVerzeichnis.Cancel
360         end if
362         Call hCloseDocument
363 endcase