merge the formfield patch from ooo-build
[ooovba.git] / testautomation / spreadsheet / optional / includes / printrange / c_printrange.inc
blob3d4ceb3138aaa92bfe16b3fd4a787d059b5f782a
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: c_printrange.inc,v $
11 '* $Revision: 1.1 $
13 '* last change: $Author: jsi $ $Date: 2008-06-16 08:05:51 $
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 : oliver.craemer@sun.com
36 '* short description : spreadsheet printrange test
38 '*************************************************************************
40 ' #1 tDefinePrintRange
41 ' #1 tAddPrintRange
42 ' #1 tRemovePrintRangeByContext
43 ' #1 tRemovePrintRangeByMenu
44 ' #1 tNamedRangeToPrintRange
45 ' #1 tEntireSheet
46 ' #1 tPrintRangeMouseSelection
47 ' #1 tEmptyRangeMessagebox
49 '\************************************************************************
50 'TODO: three test cases to go
52 sub c_printrange
54 Printlog Chr(13) + "--------- printrange ---------"
56     call tDefinePrintRange
57     call tAddPrintRange
58     call tRemovePrintRangeByContext
59     call tRemovePrintRangeByMenu
60     call tNamedRangeToPrintRange
61     call tEntireSheet
62     call tPrintRangeMouseSelection
63     call tEmptyRangeMessagebox
64    
65 End sub
67 '---------------------------------------------------------------------------
69 testcase tDefinePrintRange
71     dim sRangeFile as string
72     dim sLocalFile as string
73     
74     sRangeFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/printrange.sxc" )
75     sLocalFile = convertpath ( gOfficepath & "user/work/defineprintrange." & sDefaultExtension )
77     printlog " Load testdocument and save locally with current filter"
78     call hFileOpen ( sRangeFile )
79     if not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) then
80         warnlog "Saving test document localy failed -> Aborting"
81         call hCloseDocument
82         goto endsub
83     end if
85     printlog " Select area B2:E5"
86     call fCalcSelectRange("B2:E5")
87     printlog " Define print range by menu Format-Print Ranges-Define"
88     FormatPrintRangesDefine
89     printlog " Activate Page Preview (File-Page Preview)"
90     FilePageView
91     sleep(2)
92     printlog " Check if there is only one page as output"
93     Kontext "Previewbar"
94     'now all navigation buttons should be deactivated
95     'if this is true there's only one page to print
96     'that's what we check now
97     printlog "Check if all navigation buttons do not work"
98     printlog "True -> Only one page to print (expected result)"
99     printlog "False -> BUG"
100     Kontext "Previewbar"
101     try
102        OL_SEITENANSICHT_NaechsteSeiteCalc
103        warnlog "+ There seems to be more than one page -> BUG!?"
104     catch
105        printlog " + OK, 'next page' button does not work" 
106     endcatch
107     Kontext "Previewbar"
108     try
109        OL_SEITENANSICHT_VorherigeSeiteCalc
110        warnlog "+ There seems to be more than one page -> BUG!?"
111     catch
112        printlog " + OK, 'previous page' button does not work" 
113     endcatch
114     Kontext "Previewbar"
115     try
116        OL_SEITENANSICHT_ErsteSeiteCalc
117        warnlog "+ There seems to be more than one page -> BUG!?"
118     catch
119        printlog " + OK, 'first page' button does not work" 
120     endcatch
121     Kontext "Previewbar"
122     try
123        OL_SEITENANSICHT_LetzteSeiteCalc
124        warnlog "+ There seems to be more than one page -> BUG!?"
125     catch
126        printlog " + OK, 'last page' button does not work" 
127     endcatch
128     printlog " Close page preview"
129     FilePageView
130     printlog " Enable View-Page Break Preview"
131     ViewPageBreakPreview
132     printlog " Select area A1:C10"
133     call fCalcSelectRange("A1:C10")
134     printlog " Call context Define Print Range"
135     Kontext "DocumentCalc"
136     DocumentCalc.MouseMove(5,5)
137     sleep(2)
138     DocumentCalc.OpenContextMenu
139     sleep(2)
140     'Because of the SunSearchToolbar, which is not available on OOo by default the count of
141     'entries in the context could vary, therefor the desired entry must be searched.
142     if hMenuFindSelect(26602, true, 3) = false then
143           Warnlog "Context-Menu-entry `Define Print Range` was not found. Therefore the test ends."
144           Call hCloseDocument
145           Goto Endsub
146     end if
147     printlog "+  'Define Print Range' was selected in context menu"
148     printlog " Activate Page Preview (File-Page Preview)"
149     FilePageView
150     sleep(2)
151     '///+ Check if there is only one page as output</li>
152     Kontext "Previewbar"
153     'now all navigation buttons should be deactivated
154     'if this is true there's only one page to print
155     'that's what we check now
156     printlog "Check if all navigation buttons do not work"
157     printlog "True -> Only one page to print (expected result)"
158     printlog "False -> BUG"
159     Kontext "Previewbar"
160     try
161        OL_SEITENANSICHT_NaechsteSeiteCalc
162        warnlog "+ There seems to be more than one page -> BUG!?"
163     catch
164        printlog " + OK, 'next page' button does not work" 
165     endcatch
166     Kontext "Previewbar"
167     try
168        OL_SEITENANSICHT_VorherigeSeiteCalc
169        warnlog "+ There seems to be more than one page -> BUG!?"
170     catch
171        printlog " + OK, 'previous page' button does not work" 
172     endcatch
173     Kontext "Previewbar"
174     try
175        OL_SEITENANSICHT_ErsteSeiteCalc
176        warnlog "+ There seems to be more than one page -> BUG!?"
177     catch
178        printlog " + OK, 'first page' button does not work" 
179     endcatch
180     Kontext "Previewbar"
181     try
182        OL_SEITENANSICHT_LetzteSeiteCalc
183        warnlog "+ There seems to be more than one page -> BUG!?"
184     catch
185        printlog " + OK, 'last page' button does not work" 
186     endcatch
187     printlog " Close page preview"
188     FilePageView
189     printlog " At last check if the expected print range is selected"
190     FormatPrintRangesEdit
191     Kontext "DruckbereicheBearbeiten"
192     if DruckBereich.GetText = "$A$1:$C$10" then
193        printlog " Print range selection as expected"
194     else
195        warnlog "Expected print range is <$A$1:$C$10>, but we got: " & DruckBereich.GetText
196     end if
197     DruckbereicheBearbeiten.Cancel
198     sleep(2)
199     call hCloseDocument
200 endcase
203 '---------------------------------------------------------------------------
205 testcase tAddPrintRange
207     dim sRangeFile as string
208     dim sLocalFile as string
209     
210     sRangeFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/printrange.sxc" )
211     sLocalFile = convertpath ( gOfficepath & "user/work/addprintrange" & sDefaultExtension )
213     printlog " Load testdocument printrange.sxc and save locally with current filter"
214     call hFileOpen ( sRangeFile )
215     if ( not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) ) then
216         warnlog "Saving test document localy failed -> Aborting"
217         call hCloseDocument
218         goto endsub
219     end if
221     printlog " Select area H11:J15"
222     ViewPageBreakPreview
223     call fCalcSelectRange("H11:J15")
224     printlog " Define print range by menu Format-Print Ranges-Define"
225     FormatPrintRangesDefine
226     printlog " Select area E41:H55"
227     call fCalcSelectRange("E41:H55")
228     printlog " Add print range by menu Format-Print Ranges-Add"
229     FormatPrintRangesAdd
230     printlog " Select area A1:F15"
231     call fCalcSelectRange("A1:F20")
232     printlog " Call context Add Print Range"
233     Kontext "DocumentCalc"
234     DocumentCalc.MouseMove(5,5)
235     sleep(2)
236     DocumentCalc.OpenContextMenu
237     sleep(2)
238     'Because of the SunSearchToolbar, which is not available on OOo by default the count of
239     'entries in the context could vary, therefor the desired entry must be searched.
240     if hMenuFindSelect(26651, true, 3) = false then
241         Warnlog "Context-Menu-entry `Add Print Range` was not found. Therefore the test ends."
242         Call hCloseDocument
243         Goto Endsub
244     end if
245     printlog "+ <Add Print Range> was selected in context menu"
246     sleep(2)
247     printlog " Save and Reload"
248     FileSave
249     sleep(5)
250     FileReload
251     sleep(10)
252     printlog " Check if the expected print range is selected"
253     FormatPrintRangesEdit
254     Kontext "DruckbereicheBearbeiten"
255     if DruckBereich.GetText = "$H$11:$J$15;$E$41:$H$55;$A$1:$F$20" then
256        printlog "Print range selection as expected"
257     else
258        warnlog "Expected print range is <$H$11:$J$15;$E$41:$H$55;$A$1:$F$20>, but we got: " & DruckBereich.GetText
259     end if
260     DruckbereicheBearbeiten.Cancel
261     sleep(1)
262     printlog " Check if the expected number of pages will be print"
263     FilePrint
264     kontext "Active"
265     if Active.exists( 2 ) then
266      Active.ok
267     end if
268     
269     Kontext "DruckenDlg"
270         Seiten.check
271     if SeitenText.GetText = "1-3" then
272            printlog "+ Pages to print as expected"
273     else
274            warnlog "Expected pages to print are <1-3>, but we got: " & SeitenText.GetText
275     end if
276         DruckenDlg.Cancel
277     sleep(2)
278     call hCloseDocument
279 endcase
282 '---------------------------------------------------------------------------
284 testcase tRemovePrintRangeByContext
286     dim sRangeFile as string
287     dim sLocalFile as string
288     
289     sRangeFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/printranges_3defined.ods" )
290     sLocalFile = convertpath ( gOfficepath & "user/work/removeprintrange." & sDefaultExtension )
291     
292     printlog " Open test document '.../spreadsheet/optional/input/printranges_3defined.ods'"
293     call hFileOpen ( sRangeFile )
294     printlog " Save file locally '.../user/work/removeprintrange.ods'"
295     if ( not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) ) then
296         warnlog "Saving test document localy failed -> Aborting"
297         call hCloseDocument
298         goto endsub
299     end if
300     
301     printlog " Invoke Format::Print Ranges::Edit"
302     FormatPrintRangesEdit
303     Kontext "DruckbereicheBearbeiten"
304     printlog " Check if print range is '$H$11:$J$15;$E$41:$H$55;$A$1:$F$20'"
305     if DruckBereich.GetText = "$H$11:$J$15;$E$41:$H$55;$A$1:$F$20" then
306         printlog "+ Print range selection as expected"
307     else
308         warnlog "Expected print range is <$H$11:$J$15;$E$41:$H$55;$A$1:$F$20>, but we got: " & DruckBereich.GetText
309     end if
310     printlog " Cancel print range dialog"
311     DruckbereicheBearbeiten.Cancel
312     
313     Kontext "DocumentCalc"
314     printlog " Click in right buttom corner"
315     call gMouseClick ( 95, 95 )
316     sleep(2)
317     printlog " Open context menu"
318     DocumentCalc.OpenContextMenu
319     sleep(2)
320     printlog " Select 'Undo Print Range' in context menu"
321     'Because of the SunSearchToolbar, which is not available on OOo by default the count of
322     'entries in the context could vary, therefor the desired entry must be searched.
323     if hMenuFindSelect(26603, true, 3) = false then
324         warnlog "Context-Menu-entry `Undo Print Range` was not found. Therefore the test ends."
325         call hCloseDocument
326         goto endsub
327     end if
328     printlog "+ <Undo Print Range> was selected in context menu"
329     
330     printlog " Invoke Format::Print Ranges::Edit"
331     FormatPrintRangesEdit
332     Kontext "DruckbereicheBearbeiten"
333     printlog " Check if no print range is defined"
334     if DruckBereich.GetText = "" then
335         printlog "+ No print range selected as expected"
336     else
337         warnlog "Expected print range is <EMPTY>, but we got: " & DruckBereich.GetText
338     end if
339     DruckbereicheBearbeiten.Cancel
340     
341     sleep(2)
342     printlog " Close document"
343     call hCloseDocument
345 endcase
348 '---------------------------------------------------------------------------
350 testcase tRemovePrintRangeByMenu
352     dim sRangeFile as string
353     dim sLocalFile as string
354     
355     sRangeFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/printranges_3defined.ods" )
356     sLocalFile = convertpath ( gOfficepath & "user/work/removeprintrange." & sDefaultExtension )
358     printlog " Open test document '.../spreadsheet/optional/input/printranges_3defined.ods'"
359     call hFileOpen ( sRangeFile )
360     printlog " Save file locally '.../user/work/removeprintrange.ods'"
361     if ( not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) ) then
362         warnlog "Saving test document localy failed -> Aborting"
363         call hCloseDocument
364         goto endsub
365     end if
366     
367     printlog "Invoke Format::Print Ranges::Edit"
368     FormatPrintRangesEdit
369     Kontext "DruckbereicheBearbeiten"
370     printlog " Check if print range is '$H$11:$J$15;$E$41:$H$55;$A$1:$F$20'"
371     if DruckBereich.GetText = "$H$11:$J$15;$E$41:$H$55;$A$1:$F$20" then
372         printlog "+ Print range selection as expected"
373     else
374         warnlog "Expected print range is <$H$11:$J$15;$E$41:$H$55;$A$1:$F$20>, but we got: " & DruckBereich.GetText
375     end if
376     printlog "Cancel print range dialog"
377     DruckbereicheBearbeiten.Cancel
378     
379     Kontext "DocumentCalc"
380     printlog " Invoke Format::Print Ranges::Remove"
381     FormatPrintRangesRemove
382     printlog " Invoke Format::Print Ranges::Edit"
383     FormatPrintRangesEdit
384     printlog " Check if no print range is defined"
385     Kontext "DruckbereicheBearbeiten"
386     if DruckBereich.GetText = "" then
387         printlog "+ No print range selected as expected"
388     else
389         warnlog "Expected print range is <EMPTY>, but we got: " & DruckBereich.GetText
390     end if
391     printlog " Cancel print range dialog"
392     DruckbereicheBearbeiten.Cancel
393     printlog " Undo removal"
394     EditUndo
395     
396     printlog " Invoke Format::Print Ranges::Edit"
397     FormatPrintRangesEdit
398     Kontext "DruckbereicheBearbeiten"
399     printlog " Check if print range is '$H$11:$J$15;$E$41:$H$55;$A$1:$F$20'"
400     if DruckBereich.GetText = "$H$11:$J$15;$E$41:$H$55;$A$1:$F$20" then
401         printlog "+ Print range selection as expected"
402     else
403         warnlog "Expected print range is <$H$11:$J$15;$E$41:$H$55;$A$1:$F$20>, but we got: " & DruckBereich.GetText
404     end if
405     printlog " Cancel print range dialog"
406     DruckbereicheBearbeiten.Cancel
407     printlog " Redo removal"
408     EditRedo
409     printlog " Invoke Format::Print Ranges::Edit"
410     FormatPrintRangesEdit
411     Kontext "DruckbereicheBearbeiten"
412     printlog " Check if no print range is defined"
413     if DruckBereich.GetText = "" then
414         printlog "+ No print range selected as expected"
415     else
416         warnlog "Expected print range is <EMPTY>, but we got: " & DruckBereich.GetText
417     end if
418     printlog " Cancel print range dialog"
419     DruckbereicheBearbeiten.Cancel
420     printlog " Undo removal"
421     EditUndo
422     printlog " File::Save"
423     FileSave
424     
425     sleep(2)
426     printlog " Close document"
427     call hCloseDocument
428     printlog " Re-open document"
429     call hFileOpen ( sLocalFile )
430     printlog " Invoke Format::Print Ranges::Edit"
431     FormatPrintRangesEdit
432     Kontext "DruckbereicheBearbeiten"
433     printlog " Check if print range is '$H$11:$J$15;$E$41:$H$55;$A$1:$F$20'"
434     if DruckBereich.GetText = "$H$11:$J$15;$E$41:$H$55;$A$1:$F$20" then
435         printlog "+ Print range selection as expected"
436     else
437         warnlog "Expected print range is <$H$11:$J$15;$E$41:$H$55;$A$1:$F$20>, but we got: " & DruckBereich.GetText
438     end if
439     
440     DruckbereicheBearbeiten.Cancel
441     printlog " Cancel print range dialog"
442     sleep(2)
443     printlog " Close document"
444     call hCloseDocument
446 endcase
449 '---------------------------------------------------------------------------
451 testcase tNamedRangeToPrintRange
453      dim sLocalFile as STRING
454          sLocalFile = convertpath ( gOfficepath & "user/work/namedRange." & sDefaultExtension )
455      dim sAnotherFile as STRING
456          sAnotherFile = convertpath ( gOfficepath & "user/work/namedRange1." & sDefaultExtension )
457      dim sLocalFileXLS as STRING
458          sLocalFileXLS = convertpath ( gOfficepath & "user/work/namedRange.xls" )
459      dim sFormatXLS as STRING
460          sFormatXLS = "MS Excel 97"
461      dim sRangeToSelect as STRING
462          sRangeToSelect = "$B$3:$D$5"
463      dim sRangeName as STRING
464          sRangeName = "NamedRange"
465      dim sNewRangeToSelect as STRING
466          sNewRangeToSelect = "$C$4:$E$6"
468     printlog "Use named range as print range"
470     printlog " Open new document"
471     call hNewDocument
472     printlog " Select range '$B$3:$D$5'"
473     fCalcSelectRange ( sRangeToSelect )
474     printlog " Name this range 'NamedRange'"
475     fCalcNameRange ( sRangeName )
476     printlog " Invoke Insert::Names::Define"     
477     InsertNamesDefine
478     sleep 1
479     Kontext "NamenFestlegen"
480     printlog " Select previously defined range"
481     BereichsName.typekeys "N"
482     sleep 1
483     printlog " Click 'More' button"
484     Zusaetze.Click
485     printlog " Check 'Print range'"
486     Druckbereich.Check
487     printlog " Click OK"
488     NamenFestlegen.OK
489     printlog " Invoke Format::Print Ranges::Edit"
490     FormatPrintRangesEdit
491     Kontext "DruckbereicheBearbeiten"
492     printlog " Select 'NamedRange' as print range"
493     DruckbereichListe.select ( sRangeName )
494     printlog " Check if this is item no.5"
495     if NOT DruckbereichListe.getSelIndex = 5 then
496         warnlog "Unexpected selection for 'print range' listbox"
497     end if
498     printlog " Check if the according string is '$B$3:$D$5'"
499     if Druckbereich.getText <> sRangeToSelect then
500         warnlog "Unexpected string in 'print range' textbox"
501     end if
502     printlog " Click OK"
503     DruckbereicheBearbeiten.OK
504     printlog " Save file locally '.../user/work/namedRange.ods'"
505     if ( not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) ) then
506         warnlog "Saving test document localy failed -> Aborting"
507         call hCloseDocument
508         goto endsub
509     end if
510     printlog " Close document"
511     call hCloseDocument
512     printlog " Open document"
513     call hFileOpen ( sLocalFile )
514     printlog " Invoke Format::Print Ranges::Edit"
515     FormatPrintRangesEdit
516     Kontext "DruckbereicheBearbeiten"
517     printlog " Check if item no.5 is selected as print range"
518     if DruckbereichListe.getSelIndex <> 5 then
519         warnlog "Unexpected selection for 'print range' listbox"
520     end if
521     printlog " Check if 'NamedRange' is selected as print range"
522     if DruckbereichListe.getSelText <> sRangeName then
523         warnlog "Unexpected selection for 'print range' listbox"
524     end if
525     printlog " Check if the according string is '$B$3:$D$5'"
526     if Druckbereich.getText <> sRangeToSelect then
527         warnlog "Unexpected string in 'print range' textbox"
528     end if
529     printlog " Cancel print range dialog"
530     DruckbereicheBearbeiten.Cancel
531     printlog " Save filein Excel97/2000/XP format '.../user/work/namedRange.xls'"
532     if NOT hFileSaveAsWithFilterKill ( sLocalFileXLS , sFormatXLS ) then
533         warnlog "Saving test document localy failed -> Aborting"
534         call hCloseDocument
535         goto endsub
536     end if
537     printlog " Close document"
538     call hCloseDocument
539     printlog " Open document"
540     call hFileOpen ( sLocalFileXLS )
541     printlog " Invoke Format::Print Ranges::Edit"
542     FormatPrintRangesEdit
543     Kontext "DruckbereicheBearbeiten"
544     printlog " Check if item no.5 is selected as print range"
545     if DruckbereichListe.getSelIndex <> 5 then
546         warnlog "Unexpected selection for 'print range' listbox"
547     end if
548     printlog " Check if the according string is '$B$3:$D$5'"
549     if Druckbereich.getText <> sRangeToSelect then
550         warnlog "Unexpected string in 'print range' textbox"
551     end if
552     printlog " Cancel print range dialog"
553     DruckbereicheBearbeiten.Cancel
554     printlog " Invoke Insert::Names::Define" 
555     InsertNamesDefine
556     sleep 1
557     Kontext "NamenFestlegen"
558     printlog " Select entry 'NamedRange'"
559     BereichsName.typekeys "N"
560     sleep 1
561     printlog " Assign new range, '$C$4:$E$6'"
562     ZugeordnetZu.SetText ( sNewRangeToSelect )
563     printlog " Click 'More'"
564     Zusaetze.Click
565     printlog " Check 'Print range'"
566     Druckbereich.Check
567     printlog " Click OK"
568     NamenFestlegen.OK
569     printlog " Invoke Format::Print Ranges::Edit"
570     FormatPrintRangesEdit
571     Kontext "DruckbereicheBearbeiten"
572     printlog " Select 'NamedRange' as print range"
573     DruckbereichListe.select ( sRangeName )
574     printlog " Check if this is item no.6"
575     if NOT DruckbereichListe.getSelIndex = 6 then
576         warnlog "Unexpected selection for 'print range' listbox"
577     end if
578     printlog " Check if the according string is '$C$4:$E$6'"
579     if Druckbereich.getText <> sNewRangeToSelect then
580         warnlog "Unexpected string in 'print range' textbox"
581     end if
582     printlog " Click OK"
583     DruckbereicheBearbeiten.OK
584     printlog " Save file locally '.../user/work/namedRange1.ods'"
585     if NOT hFileSaveAsWithFilterKill ( sAnotherFile , sDefaultCalcFilter ) then
586         warnlog "Saving test document localy failed -> Aborting"
587         call hCloseDocument
588         goto endsub
589     end if
590     printlog " Close document"
591     call hCloseDocument
592     printlog " Open document again"
593     call hFileOpen ( sAnotherFile )
594     printlog " Invoke Format::Print Ranges::Edit"
595     FormatPrintRangesEdit
596     Kontext "DruckbereicheBearbeiten"
597     printlog " Check if item no.6 is selected as print range"
598     if DruckbereichListe.getSelIndex <> 6 then
599         warnlog "Unexpected selection for 'print range' listbox"
600     end if
601     printlog " Check if 'NamedRange' is selected as print range"
602     if DruckbereichListe.getSelText <> sRangeName then
603         warnlog "Unexpected selection for 'print range' listbox"
604     end if
605     printlog " Check if the according string is '$C$4:$E$6'"
606     if Druckbereich.getText <> sNewRangeToSelect then
607         warnlog "Unexpected string in 'print range' textbox"
608     end if
609     printlog " Cancel print range dialog"
610     DruckbereicheBearbeiten.Cancel
611     printlog " Close document"
612     call hCloseDocument
614 endcase
617 '---------------------------------------------------------------------------
619 testcase tEntireSheet
621     dim sRangeFile as STRING
622         sRangeFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/printrange.xls" )
623     dim sLocalFile as STRING
624         sLocalFile = convertpath ( gOfficepath & "user/work/entireSheet." & sDefaultExtension )
625     dim sLocalFileXLS as STRING
626         sLocalFileXLS = convertpath ( gOfficepath & "user/work/entireSheet.xls" )
627     dim sFormatXLS as STRING
628         sFormatXLS = "MS Excel 97" 
630     printlog " Open test document '.../spreadsheet/optional/input/printrange.xls'"
631     call hFileOpen ( sRangeFile )
632     printlog " Save file locally '.../user/work/entireSheet.ods'"
633     if NOT hFileSaveAsWithFilterKill ( sLocalFile , sDefaultCalcFilter ) then
634         warnlog "Saving test document localy failed -> Aborting"
635         call hCloseDocument
636         goto endsub
637     end if
638     printlog " Select second sheet"
639     if NOT fCalcSelectSheet ( 2 ) then
640         warnlog "Selecting sheet no. 2 failed -> Aborting"
641         call hCloseDocument
642         goto endsub
643     end if
644     printlog " Invoke Format::Print Ranges::Edit"
645     FormatPrintRangesEdit
646     Kontext "DruckbereicheBearbeiten"
647     printlog " Check if item no.2 (should be 'entire sheet') is selected in print range listbox"
648     if DruckbereichListe.getSelIndex = 2 then
649         printlog "+ OK, print range is '- entire sheet -'"
650     else
651         warnlog "Unexpected print range defined -> Check this out!"
652     end if
653     printlog " Cancel print range dialog"
654     DruckbereicheBearbeiten.Cancel
655     printlog " Close document"
656     call hCloseDocument
657     printlog " Open document"
658     call hFileOpen ( sLocalFile )
659     printlog " Select second sheet"
660     if NOT fCalcSelectSheet ( 2 ) then
661         warnlog "Selecting sheet no. 2 failed -> Aborting"
662         call hCloseDocument
663         goto endsub
664     end if
665     printlog " Invoke Format::Print Ranges::Edit"
666     FormatPrintRangesEdit
667     Kontext "DruckbereicheBearbeiten"
668     printlog " Check if item no.2 (should be 'entire sheet') is selected in print range listbox"
669     if DruckbereichListe.getSelIndex = 2 then
670         printlog "+ OK, print range is '- entire sheet -'"
671     else
672         warnlog "Unexpected print range defined -> Check this out!"
673     end if
674     printlog " Cancel print range dialog"
675     DruckbereicheBearbeiten.Cancel
676     printlog " Save filein Excel97/2000/XP format '.../user/work/entireSheet.xls'"
677     if NOT hFileSaveAsWithFilterKill ( sLocalFileXLS , sFormatXLS ) then
678         warnlog "Saving test document localy failed -> Aborting"
679         call hCloseDocument
680         goto endsub
681     end if
682     printlog " Close document"
683     call hCloseDocument
684     printlog " Open document again"
685     call hFileOpen ( sLocalFileXLS )
686     printlog " Select second sheet"
687     if NOT fCalcSelectSheet ( 2 ) then
688         warnlog "Selecting sheet no. 2 failed -> Aborting"
689         call hCloseDocument
690         goto endsub
691     end if
692     printlog " Invoke Format::Print Ranges::Edit"
693     FormatPrintRangesEdit
694     Kontext "DruckbereicheBearbeiten"
695     printlog " Check if item no.2 (should be 'entire sheet') is selected in print range listbox"
696     if DruckbereichListe.getSelIndex = 2 then
697         printlog "+ OK, print range is '- entire sheet -'"
698     else
699         warnlog "Unexpected print range defined -> Check this out!"
700     end if
701     printlog " Cancel print range dialog"
702     DruckbereicheBearbeiten.Cancel
703     printlog " Close document"
704     call hCloseDocument
706 endcase
709 '---------------------------------------------------------------------------
711 testcase tPrintRangeMouseSelection
713     dim sLocalFile as STRING
714         sLocalFile = convertpath ( gOfficepath & "user/work/mouseSelection." & sDefaultExtension )
715     dim sSelectedRange as STRING
716     dim sSelectedRows as STRING
717     dim sSelectedColumns as STRING
718     
719     printlog " Open new document"
720     call hNewDocument
721     printlog " Invoke Format::Print Ranges::Edit"
722     FormatPrintRangesEdit
723     printlog " Check if all settings are in initial state"
724     Kontext "DruckbereicheBearbeiten"
725     if NOT DruckbereichListe.getSelIndex = 1 then
726         warnlog "Unexpected selection for 'print range' listbox"
727     end if
728     if NOT WiederholungszeileListe.getSelIndex = 1 then
729         warnlog "Unexpected selection for 'rows to repeat' listbox"
730     end if
731     if NOT WiederholungsspalteListe.getSelIndex = 1 then
732         warnlog "Unexpected selection for 'columns to repeat' listbox"
733     end if
734     if Druckbereich.getText <> "" then
735         warnlog "Unexpected string in 'print range' textbox"
736     end if
737     if Wiederholungszeile.getText <> "" then
738         warnlog "Unexpected string in 'rows to repeat' textbox"
739     end if
740     if Wiederholungsspalte.getText <> "" then
741         warnlog "Unexpected string in 'columns to repeat' textbox"
742     end if
743     sleep(1)
744     printlog " Click print range button to shrink dialog"
745     DruckbereichButton.typekeys "<RETURN>"
746     sleep(1)
747     Kontext "DocumentCalc"
748     printlog " Select print range using mouse"
749     DocumentCalc.MouseDown ( 20 , 20 )
750     DocumentCalc.MouseMove ( 60 , 60 )
751     DocumentCalc.MouseUp ( 60 , 60 )
752     sleep(1)
753     Kontext "DruckbereicheBearbeiten"
754     printlog " Click print range button to unshrink dialog again"
755     DruckbereichButton.typekeys "<RETURN>"
756     printlog " Rember to selection for later comparisson"
757     sleep(1)
758     sSelectedRange = Druckbereich.getText
759     printlog " Click 'rows to repeat' button to shrink dialog"
760     WiederholungszeileButton.typekeys "<RETURN>"
761     sleep(1)
762     Kontext "DocumentCalc"
763     printlog " Select 'rows to repeat' using mouse"
764     DocumentCalc.MouseDown ( 10 , 10 )
765     DocumentCalc.MouseMove ( 15 , 30 )
766     DocumentCalc.MouseUp ( 15 , 30 )
767     sleep(1)
768     Kontext "DruckbereicheBearbeiten"
769     printlog " Click 'rows to repeat' button to unshrink dialog again"
770     WiederholungszeileButton.typekeys "<RETURN>"
771     sleep(1)
772     printlog " Remember to selection for later comparisson"
773     sSelectedRows = Wiederholungszeile.getText
774     printlog " Click 'columns to repeat' button to shrink dialog"
775     WiederholungsspalteButton.typekeys "<RETURN>"
776     sleep(1)
777     Kontext "DocumentCalc"
778     printlog " Select 'columns to repeat' using mouse"
779     DocumentCalc.MouseDown ( 10 , 10 )
780     DocumentCalc.MouseMove ( 50 , 15 )
781     DocumentCalc.MouseUp ( 50 , 15 )
782     sleep(1)
783     Kontext "DruckbereicheBearbeiten"
784     printlog " Click 'columns to repeat' button to unshrink dialog again"
785     WiederholungsspalteButton.typekeys "<RETURN>"
786     sleep(1)
787     printlog " Rember to selection for later comparisson"
788     sSelectedColumns = Wiederholungsspalte.getText
789     sleep(1)
790     printlog " Click OK"
791     DruckbereicheBearbeiten.OK
792     sleep(1)
793     printlog " Save file locally '.../user/work/mouseSelection.ods'"
794     if not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) then
795         warnlog "Saving test document localy failed -> Aborting"
796         call hCloseDocument
797         goto endsub
798     end if
799     sleep(2)
800     printlog " Close document"
801     call hCloseDocument
802     printlog " Open document again"
803     call hFileOpen ( sLocalFile )
804     printlog " Invoke Format::Print Ranges::Edit"
805     FormatPrintRangesEdit
806     Kontext "DruckbereicheBearbeiten"
807     printlog " Check persistance of all settings"
808     if NOT DruckbereichListe.getSelIndex = 3 then
809         warnlog "Unexpected selection for 'print range' listbox: Item No. " & DruckbereichListe.getSelIndex
810     end if
811     if NOT WiederholungszeileListe.getSelIndex = 2 then
812         warnlog "Unexpected selection for 'rows to repeat' listbox: Item No. " & WiederholungszeileListe.getSelIndex
813     end if
814     if NOT WiederholungsspalteListe.getSelIndex = 2 then
815         warnlog "Unexpected selection for 'columns to repeat' listbox: Item No. " & WiederholungsspalteListe.getSelIndex
816     end if
817     if Druckbereich.getText <> sSelectedRange then
818         warnlog "Unexpected selection in 'print range' textbox"
819         qaErrorLog "Found:  " & Druckbereich.getText
820         qaErrorLog "Should: " & sSelectedRange
821     end if
822     if Wiederholungszeile.getText <> sSelectedRows then
823         warnlog "Unexpected selection in 'rows to repeat' textbox"
824         qaErrorLog "Found:  " & Wiederholungszeile.getText
825         qaErrorLog "Should: " & sSelectedRows
826     end if
827     if Wiederholungsspalte.getText <> sSelectedColumns then
828         warnlog "Unexpected selection in 'columns to repeat' textbox"
829         qaErrorLog "Found:  " & Wiederholungsspalte.getText
830         qaErrorLog "Should: " & sSelectedColumns
831     end if
832     printlog " Cancel print range dialog"
833     DruckbereicheBearbeiten.Cancel
834     printlog " Close document"
835     call hCloseDocument
837 endcase
840 '---------------------------------------------------------------------------
842 testcase tEmptyRangeMessagebox
844     printlog "If the printrange or sheet is empty there should be a messagebox which says that there is nothing to print"
845     printlog " Open new document"
846     call hNewDocument
847     
848     printlog " Print empty document by pressing standardbar button"
849     kontext "Standardbar"
850     Drucken.click
851     
852     printlog " Check that there is a messagebox"
853     kontext
854     if Active.Exists(2) then
855         if Active.GetRT = 304 then
856             printlog "+ The messagebox " & Active.GetText & " has appeared"
857             Active.OK
858         else
859             warnlog "Unexpected objekt: " & Active.GetText & " found!"
860             try
861                 Active.OK
862             catch
863                 Active.Yes
864             endcatch
865         end if
866     else
867         warnlog "There is no messagebox"
868         kontext "DocumentCalc"
869         call hCloseDocument
870         goto endsub
871     end if
872     
873     Kontext "DruckenDlg"
874     if DruckenDlg.Exists( 2 ) then
875         DruckenDlg.Cancel
876     end if
877     sleep 2
879     printlog " Enter 1 in A1"
880     Kontext "DocumentCalc"
881     DocumentCalc.TypeKeys "1 <RETURN>"
883     printlog " Select cell A5"
884     if fGotoCell ( "A5" ) <> 0 then
885             warnlog "Could not select cell I2"
886             hCloseDocument
887             goto endsub
888     end if
889     
890     printlog " Define print range by menu FORMAT / PRINT RANGES / DEFINE"
891     kontext "DocumentCalc"
892     FormatPrintRangesDefine
894     printlog " Print empty range by pressing standardbar button"
895     kontext "Standardbar"
896     Drucken.click
897     
898     printlog " Check that there is a messagebox"
899     kontext
900     if Active.Exists(2) then
901         if Active.GetRT = 304 then
902             printlog "+ The messagebox " & Active.GetText & " has appeared"
903             Active.OK
904         else
905             warnlog "Unexpected objekt: " & Active.GetText & " found!"
906             try
907                 Active.OK
908             catch
909                 Active.Yes
910             endcatch
911         end if
912     else
913         warnlog "There is no messagebox"
914         kontext "DocumentCalc"
915         call hCloseDocument
916         goto endsub
917     end if
919         kontext "DruckenDlg"
920         if DruckenDlg.Exists( 2 ) then
921                 DruckenDlg.Cancel
922     end if    
923     printlog "Close document"
924     call hCloseDocument
926 endcase