update dev300-m58
[ooovba.git] / testautomation / writer / optional / includes / regexp / search.inc
bloba450d6922742fc9231d4c1e197a17952d33506ce
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: search.inc,v $
11 '* $Revision: 1.2 $
13 '* last change: $Author: vg $ $Date: 2008-08-18 12:34:31 $
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 : helge.delfs@sun.com
36 '* short description : Search & Replace
38 '\***********************************************************************
40 sub search
42    if bAsianLan = false then Call ActiveDeactivateAsianSupport(False)
43    call tCheckDialog
44    call tCallDialog
45    call tFree_Text
47    call tAlle_Suchen
48    call tSelection
49    call tPart_of_a_word
50    call tWhole_Word
51    call tMatch_Case
53    call tItalic_Search
55    call tItalic_Replace
56    call tUnderline_Search
57    call tUnderline_Replace
58    call tAll_Replace
60    call tReplace_Arial_with_TmsRmn
61    call tBackwards_Search
62    call tSeveral_Times
63    call tFurther_Look_up_At_The_Beginning
64    call tParagraphStyle_Search
65    call tText_In_Table
66    call tText_In_Frame
67    call tSimilarity_Search
69 end sub
71 '---------------------------------------------------------
72 testcase tCheckDialog
73  Dim Checkboxtitel
74    Call hNewDocument
75    EditSearchAndReplace
76    Sleep 2
77    Kontext "FindAndReplace"
78    if FindAndReplace.NotExists then EditSearchAndReplace
80   printlog "Check Find-and-Replace-Dialog"
81   printlog "- Dependencies of Buttons in Search-for-Entry"
82    SearchFor.SetText ""
83    if Not Backwards.IsVisible then More.Click
84    if SimilaritySearch.IsEnabled and SimilaritySearch.IsChecked then SimilaritySearch.Uncheck
85    if SearchAll.IsEnabled then Warnlog "Without Search-for-entry Find-All is active!"
86    if SearchNow.IsEnabled then Warnlog "Without Search-for-entry Find is active!"
87    if ReplaceAll.IsEnabled then Warnlog "Without Search-for-entry Replace-All is active!"
88    if Replace.IsEnabled then Warnlog "Without Search-for-entry Replace is active!"
89    if NoFormat.IsEnabled then Warnlog "Without selecting Formats , No-Format is active!"
90    SearchFor.SetText "Hallo"
91    if NOT SearchAll.IsEnabled then Warnlog "Containing Search-for-entry Find-All is inactive!"
92    if NOT SearchNow.IsEnabled then Warnlog "Containing Search-for-entry Find inactive!"
93    if NOT ReplaceAll.IsEnabled then Warnlog "Containing Search-for-entry Replace-All is inactive!"
94    if NOT Replace.IsEnabled then Warnlog "Containing Search-for-entry Replace is inactive!"
96    Sleep 5
97   printlog "- Dependencies of Format-Properties"
98    Kontext "FindAndReplace"
99    Formats.Click
100    wait 500
101    Kontext
102     Active.SetPage TabFontEffects
103    Kontext "TabFontEffects"
104     Outline.Check
105     TabFontEffects.OK
106    wait 500
107    kontext "FindAndReplace"
108     if NOT NoFormat.IsEnabled then Warnlog "Containing Formats, No-Formats is inactive!"
109     NoFormat.Click
110    wait 500
112   printlog "- Dependencies of Checkboxes"
113    RegularExpressions.Check
114    wait 500
115    if WholeWordsOnly.IsEnabled then Warnlog "Regular expressions: 'Whoole words only' is active => BUG!"
116    if NOT Backwards.IsEnabled then Warnlog "Regular expressions: 'Backwards' is inactive => BUG!"
117    if NOT MatchCase.IsEnabled then Warnlog "Regular expressions: 'Match case' is inactive => BUG!"
118    if CurrentSelectionOnly.IsEnabled then Warnlog "Regular expressions: 'Current selection only' is active => BUG!"
119    if NOT SearchForStyles.IsEnabled then Warnlog "Regular expressions: 'Search for Styles' is inactive => BUG!"
120    if SimilaritySearch.IsEnabled then Warnlog "Regular expressions: 'Similarity search' is active => BUG!"
121    if SimilaritySearchFor.IsEnabled then Warnlog "Regular expressions: Button for 'Similarity search' - dialog is active => BUG!"
122    RegularExpressions.UnCheck
124    wait 500
125    SearchForStyles.Check
126    if WholeWordsOnly.IsEnabled then Warnlog "Search for Styles: 'Whole words only' is active => BUG!"
127    if NOT Backwards.IsEnabled then Warnlog "Search for Styles: 'Backwards' is inactive => BUG!"
128    if RegularExpressions.IsEnabled then Warnlog "Search for Styles: 'Regular expressions' is active => BUG!"
129    if MatchCase.IsEnabled then Warnlog "Search for Styles: 'Match case' is active => BUG!"
130    if CurrentSelectionOnly.IsEnabled then Warnlog "Regular expressions: 'Current selection only' is active => BUG!"
131    if SimilaritySearch.IsEnabled then Warnlog "Search for Styles: 'Similarity search' is active => BUG!"
132    if SimilaritySearchFor.IsEnabled then Warnlog "Search for Styles: Button for 'Similarity search' - dialog is active => BUG! "
133    SearchForStyles.UnCheck
135    wait 500
136    SimilaritySearch.Check
137    if NOT WholeWordsOnly.IsEnabled then Warnlog "Similarity Search: 'Whole words only' is active => BUG!"
138    if NOT Backwards.IsEnabled then Warnlog "Similarity Search: 'Backwards' is inactive => BUG!"
139    if RegularExpressions.IsEnabled then Warnlog "Similarity Search: 'Regular expressions' is active => BUG!"
140    if NOT MatchCase.IsEnabled then Warnlog "Similarity Search: 'Match case' is active => BUG!"
141    if CurrentSelectionOnly.IsEnabled then Warnlog "Regular expressions: 'Current selection only' is active => BUG!"
142    if SearchForStyles.IsEnabled then Warnlog "Regular expressions: 'Search for Styles' is active => BUG!"
143    if NOT SimilaritySearchFor.IsEnabled then Warnlog "Similarity Search: Button for 'Similarity search' - dialog is active => BUG! "
144    SimilaritySearch.UnCheck
145    Sleep 2
146    FindAndReplace.Close
148    Kontext "DocumentWriter"
149    DocumentWriter.TypeKeys "hallo <Shift Home>"
150    EditSearchAndReplace
151    kontext "FindAndReplace"
152    if NOT CurrentSelectionOnly.IsEnabled then Warnlog "WIth a selected entry, 'Current selection only' isn't active! => BUG"
153    Sleep 2
154    FindAndReplace.Close
155    wait 500
156    Call hCloseDocument
157 endcase
159 '---------------------------------------------------------
160 testcase tCallDialog
161  Dim Shortcut as String
162    Call hNewDocument
163    '/// Open new document ///
164    kontext "FindAndReplace"
165    Sleep 2
166    if FindAndReplace.Exists then FindAndReplace.Close
167    '/// Close Search&Replace dialog if open ///
168    Kontext "DocumentWriter"
169    select case iSprache
170       case 01 : Shortcut = "<Mod1 f>"
171       case 03 : Shortcut = "<Mod1 g>"
172       case 07 : Shortcut = "<Mod1 f>"
173       case 31 : Shortcut = "<Mod1 f>"
174       case 33 : Shortcut = "<Mod1 f>"
175       case 34 : Shortcut = "<Mod1 b>"
176       case 39 : Shortcut = "<Mod1 f>"
177       case 46 : Shortcut = "<Mod1 f>"
178       case 49 : Shortcut = "<Mod1 f>"
179       case 55 : Shortcut = "<Mod1 f>"
180           case 81 : Shortcut = "<Mod1 f>"
181       case 82 : Shortcut = "<Mod1 f>"
182       case 86 : Shortcut = "<Mod1 f>"
183       case 88 : Shortcut = "<Mod1 f>"
184       case else : QAErrorLog "Shortcut to call Find&Replace-Dialog has to be included!"
185                   Call hCloseDocument
186                   goto endsub
187    end select
188    '/// Open Search and Replace dialog with Shortcut depending on current language ///
189    DocumentWriter.TypeKeys Shortcut
190    kontext "FindAndReplace"
191    if FindAndReplace.NotExists then
192       Warnlog "Shortcut " + Shortcut + " didn't call the Find dialog"
193    else
194       printlog "- Dialog has been called with Shortcut: " + Shortcut
195    end if
196    Call hCloseDocument
197    '/// Close active document ///
198    Call hNewDocument
199    '/// Open new document ///
200    Kontext "Navigator"
201    If Navigator.Exists then ViewNavigator
202   printlog "- Check, if dialog is not present in a new document"
203    '/// Check, if dialog is not present in a new document ///
204    kontext "FindAndReplace"
205    if FindAndReplace.Exists then
206       Warnlog "Search-For-Dialog has been opened in a new document"
207       EditSearchAndReplace
208    end if
209    Call hCloseDocument
210    '/// Close active document ///
211 endcase
213 '---------------------------------------------------------
214 testcase tFree_Text
215    Call wSetFindAndReplaceToDefault(1)
216    Such_Text = "non"                               'Suchen in freiem Text
217    Meldungs_Text = "Suchen in freiem Text"
218    SearchFor.SetText Such_Text
219    ReplaceWith.SetText Meldungs_Text
220    SearchNow.Click
221    call Vergleichen_und_ausgeben
222    EditSearchAndReplace
223    kontext "FindAndReplace"            'Suchen&Replace-Fenster "ffnen
224    SearchNow.Click
225    call Vergleichen_und_ausgeben
226    Call hCloseDocument
227 endcase
229 '---------------------------------------------------------
230 testcase tSelection
231    Call wSetFindAndReplaceToDefault(1)
232    Such_Text = "d n"
233    Meldungs_Text = "Suchen in selektiertem Text"              'Suchen in selektiertem Text
234    Sleep 2
235    FindAndReplace.Close
236    kontext "DocumentWriter"
237    DocumentWriter.TypeKeys "<Shift PageDown>"
238    EditSearchAndReplace
239    kontext "FindAndReplace"
240    SearchFor.SetText Such_Text
241    if CurrentSelectionOnly.IsVisible = False then More.Click
242    if not CurrentSelectionOnly.ischecked then                        'Sollte automatisch
243    Warnlog "   'Current selection only' has not been checked automatically"       'gecheckt sein, wenn
244    CurrentSelectionOnly.check                                     'Text markiert ist
245    else
246       printlog "OK: Only in Selection is checked automatically"
247    end if
248    ReplaceWith.SetText Meldungs_Text
249    SearchNow.Click
250     call Vergleichen_und_ausgeben
252    EditSearchAndReplace
253    kontext "FindAndReplace"            'Suchen&Replace-Fenster "ffnen
254    SearchNow.Click
255    call Vergleichen_und_ausgeben
256    Call hCloseDocument
257 endcase
259 '---------------------------------------------------------
260 testcase tPart_of_a_word
261    Call wSetFindAndReplaceToDefault(1)
262    Such_Text = "te"
263    Meldungs_Text = "Suchen Teil eines Wortes"         'Suchen  Teil eines Wortes
264    SearchFor.SetText Such_Text
265    ReplaceWith.SetText Meldungs_Text
266    SearchNow.Click
267    call Vergleichen_und_ausgeben
268    Call hCloseDocument
269 endcase
271 '---------------------------------------------------------
272 testcase tWhole_Word
273    call wSetFindAndReplaceToDefault(1)
274    Such_Text = "illa"
275    Meldungs_Text = "Suchen nur ganzes Wort"        'Suchen  nur ganzes Wort
276    SearchFor.SetText Such_Text
277    ReplaceWith.SetText Meldungs_Text
278    WholeWordsOnly.Check
279    SearchNow.Click                     '"te" ist Teil eines Wortes, "Te" als
280    call Vergleichen_und_ausgeben
281    Call hCloseDocument
282 endcase
284 '---------------------------------------------------------
285 testcase tMatch_Case
286    call wSetFindAndReplaceToDefault(1)
287    Such_Text = "Be"                 'Exakte Suche
288    Meldungs_Text = "Exakte Suche"
289    ReplaceWith.SetText Meldungs_Text
290    'sleep 1
291    MatchCase.check
292    SearchFor.SetText Such_Text
293    SearchAll.Click
294    call Vergleichen_und_ausgeben
295    Call hCloseDocument
296 endcase
298 '---------------------------------------------------------
299 testcase tItalic_Search
300    call wSetFindAndReplaceToDefault(1)
301    Such_Text = "k"                     'Suche nach Format "kursiv"
302    Meldungs_Text = "Suchen Format kursiv"
303    SearchFor.SetText Such_Text
304    try
305     Formats.Click
306     wait 500
307    catch
308     Warnlog "Button 'Format is disabled !"
309     Call hCloseDocument
310     goto endsub
311    endcatch
313    Kontext
314    Active.Setpage TabFont
315    Kontext "TabFont"
316    if gAsianSup = True or gCTLSup = True then
317       try
318          StyleWest.Select 2
319       catch
320          Warnlog "Style has not been found ! -> Asian-Support: " + gAsianSup + "CTL-Support: " + gCTLSup
321          Style.Select 2
322       endcatch
323    else
324       Style.Select 2
325    end if
326    wait 500
327    TabFont.Ok
328    ' Workaround
329    Kontext "FindAndReplace"
330    NoFormat.Click
331    wait 500
332    Formats.Click
333    sleep  1
334    kontext
335    Active.SetPage TabFont
336    kontext "TabFont"
337    sleep  1
338    if gAsianSup = True or gCTLSup = True then
339      StyleWest.Select 2
340    else
341      Style.Select 2
342    end if
343    sleep  1
344    TabFont.OK
345    sleep  1
346    ' Workaround ends here
347    Kontext "FindAndReplace"
348    ReplaceWith.SetText Meldungs_Text
349    sleep  1
350    SearchAll.Click                     'wenn auf Format geachtet wird,
351    sleep  1
352    call Vergleichen_und_ausgeben             'darf nur ein "k" gefunden werden
353    sleep  1
354    Call hCloseDocument
355 endcase
357 '---------------------------------------------------------
358 testcase tItalic_Replace
359    call wSetFindAndReplaceToDefault(1)
360    Such_Text = "kursiv"                'Suche Format "kursiv", ersetze
361    Meldungs_Text = "Ersetzte kursiv mit durchgestrichen"    'mit Format "durchgestrichen"
362    SearchFor.SetText Such_Text
363    wait 500
364    try
365     NoFormat.Click
366    catch
367    endcatch
368    wait 500
369    Formats.Click
370    sleep  1
371    kontext
372    Active.SetPage TabFont
373    kontext "TabFont"
374    sleep  1
375    if gAsianSup = True or gCTLSup = True then
376       try
377          StyleWest.Select 2
378       catch
379          Warnlog "Style has not been found ! -> Asian-Support: " + gAsianSup + "CTL-Support: " + gCTLSup
380          Style.Select 2
381       endcatch
382    else
383      Style.Select 2
384    end if
385    sleep  1
386    TabFont.OK
387    sleep  1
388    kontext "FindAndReplace"
389    NoFormat.Click
390    ' Tried a workaround, because sometimes, searchstring ends with ','. Dont know why !?
391    Formats.Click
392    sleep  1
393    kontext
394    Active.SetPage TabFont
395    kontext "TabFont"
396    sleep  1
397    if gAsianSup = True or gCTLSup = True then
398      StyleWest.Select 2
399    else
400      Style.Select 2
401    end if
402    sleep  1
403    TabFont.OK
404    sleep  1
405    kontext "FindAndReplace"
408    ReplaceWith.SetText "durchgestrichen"
409    sleep  1
410    Formats.Click
411    kontext
412    sleep  1
413    Active.SetPage TabFontEffects
414    kontext "TabFontEffects"
415    sleep  1
416    StrikeThrough.Select 2
417    sleep  1
418    TabFontEffects.OK
419    sleep  1
420    kontext "FindAndReplace"
421    sleep  1
422    ReplaceAll.Click
423    sleep  1
424    kontext
425    sleep  1
426    Kontext "Active"
427    if Active.Exists then
428     if Active.GetRT = 304 then
429      Active.OK                     'MSG-Box (... x ersetzt) schließen
430     else
431      Warnlog "Messagebox, how often replaced, not up !"
432     end if
433    end if
434    sleep  2
435    kontext "FindAndReplace"
436    FindAndReplace.Close
437    sleep  1
438    Kontext "DocumentWriter"
439    DocumentWriter.Typekeys "<MOD1 HOME>"
440    EditSearchAndReplace
441    kontext "FindAndReplace"
442    Such_Text = "durchgestrichen"
443    SearchFor.SetText Such_Text
444    sleep  1
445    if NoFormat.IsVisible = False then More.Click
446    NoFormat.Click
447    sleep  1
448    ReplaceWith.SetText "durchgestrichen suchen"
449    sleep  1
450    NoFormat.Click
451    sleep  1
452    SearchAll.Click
453    sleep  1
454    call Vergleichen_und_ausgeben
455    FormatCharacter
456    Kontext
457    active.SetPage TabFontEffects
458    Kontext "TabFontEffects"
459    if StrikeThrough.GetSelIndex <> 2 then Warnlog "Format 'Strikethrough' has not been overtaken!"
460    TabFontEffects.Cancel
461    Call hCloseDocument
462 endcase
464 '---------------------------------------------------------
465 testcase tUnderline_Search
466     if gCTLSup = True then
467         QAErrorlog "No Check for attributes if CTL enabled!"
468         goto endsub
469     end if        
470     call wSetFindAndReplaceToDefault(1)
471     Such_Text = "U"                     'search for Attributes underlined
472     Meldungs_Text = "search Attribut Underlined"
473     if gAsianSup = false then
474         Select Case iSprache
475             case 01: ToggleAttribute(30,"True")             'Check Attributes underlined
476             case 07: ToggleAttribute(16,"True")             'Check Attributes underlined
477             case 31: ToggleAttribute(12,"True")             'Check Attributes underlined
478             case 33: ToggleAttribute(27,"True")
479             case 34: ToggleAttribute(28,"True")
480             case 39: ToggleAttribute(27,"True")
481             case 46: ToggleAttribute(30,"True")            
482             case 49: ToggleAttribute(28,"True")
483             case 55: ToggleAttribute(29,"True")
484             case 88: ToggleAttribute(13,"True")
485             case else : QAErrorlog "Please adapt test for this language!"
486                     Call hCloseDocument
487                     goto endsub
488         end select
489     else
490         Select Case iSprache
491             case 01: ToggleAttribute(39,"True")             'Check Attributes underlined
492             case 07: ToggleAttribute(22,"True")             
493             case 31: ToggleAttribute(17,"True")             'Onderstrepen
494             case 33: ToggleAttribute(36,"True")             ' Soulignage
495             case 34: ToggleAttribute(37,"True")             ' Subrayado
496             case 39: ToggleAttribute(35,"True")             ' Sottolineato
497             case 46: ToggleAttribute(40,"True")             ' Understruken
498             case 49: ToggleAttribute(37,"True")             ' Unterstrichen
499             case 55: ToggleAttribute(38,"True")             ' Sublinhado
500             case 88: ToggleAttribute(13,"True")
501             case else : QAErrorlog "Please adapt test for this language!"
502                     Call hCloseDocument
503                     goto endsub
504         end select   
505     end if
506    
507    SearchFor.SetText Such_Text
508    ReplaceWith.SetText Meldungs_Text
509    SearchAll.Click                     'if looking for the Attributes,
510    call Vergleichen_und_ausgeben
511    Call hCloseDocument
512 endcase
514 '---------------------------------------------------------
515 testcase tUnderline_Replace
516     if gCTLSup = True then
517         QAErrorlog "No Check for attributes if CTL enabled!"
518         goto endsub
519     end if        
520     call wSetFindAndReplaceToDefault(1)
521     Such_Text = "Unterstrichen"                  'search for Attributes underlined
522     Meldungs_Text = "search underlined, replace shadow"      'replace with 'shadow'
523     SearchFor.SetText Such_Text
524     if gAsianSup = false then
525         Select Case iSprache
526             case 01: ToggleAttribute(30,"True")             'Check Attributes underlined
527             case 07: ToggleAttribute(16,"True")
528             case 31: ToggleAttribute(12,"True")
529             case 33: ToggleAttribute(27,"True")
530             case 34: ToggleAttribute(28,"True")
531             case 39: ToggleAttribute(27,"True")
532             case 46: ToggleAttribute(30,"True")            
533             case 49: ToggleAttribute(28,"True")
534             case 55: ToggleAttribute(29,"True")
535             case 88: ToggleAttribute(13,"True")
536             case else : QAErrorlog "Please adapt test for this language!"
537                     Call hCloseDocument
538                     goto endsub
539         end select
540     else
541         Select Case iSprache
542             case 01: ToggleAttribute(39,"True")             'Check Attributes underlined
543             case 07: ToggleAttribute(22,"True")
544             case 31: ToggleAttribute(17,"True")             ' Onderstrepen
545             case 33: ToggleAttribute(36,"True")             ' Soulignage
546             case 34: ToggleAttribute(37,"True")             ' Subrayado
547             case 39: ToggleAttribute(35,"True")             ' Sottolineato
548             case 46: ToggleAttribute(40,"True")             ' Understruken
549             case 49: ToggleAttribute(37,"True")             ' Unterstrichen
550             case 55: ToggleAttribute(38,"True")             ' Sublinhado
551             case 88: ToggleAttribute(13,"True")
552             case else : QAErrorlog "Please adapt test for this language!"
553                     Call hCloseDocument
554                     goto endsub
555         end select   
556     end if
557     ReplaceWith.SetText "Schatten"
558     Formats.Click
559     kontext
560     Active.SetPage TabFontEffects
561     kontext "TabFontEffects"
562     Shadow.Check
563     TabFontEffects.OK
564     kontext "FindAndReplace"
565     ReplaceAll.Click
566     Kontext "Active"
567     if Active.Exists then
568         if Active.GetRT = 304 then
569             Active.OK                     'MSG-Box (... x ersetzt) schließen
570         end if
571     end if
572     kontext "FindAndReplace"
573     Such_Text = "Schatten"
574     SearchFor.SetText Such_Text
575     NoFormat.Click
576     'ReplaceWith.SetText Meldungs_Text
577     SearchAll.Click
578     call Vergleichen_und_ausgeben
579     FormatCharacter
580     Kontext
581     active.SetPage TabFontEffects
582     Kontext "TabFontEffects"
583     if NOT Shadow.IsChecked then Warnlog "Attribute 'Shadow' has not been overtaken!"
584     TabFontEffects.Cancel
585     Call hCloseDocument
586 endcase
588 '---------------------------------------------------------
589 testcase tAll_Replace
590    call wSetFindAndReplaceToDefault(1)
591    Such_Text = "x"                     'Replace alle
592    Meldungs_Text = "Replace alle"
593    SearchFor.SetText Such_Text
594    ReplaceWith.SetText Meldungs_Text
595    ReplaceWith.SetText "y"
596    ReplaceAll.Click
597    Kontext "Active"
598    if Active.Exists then
599     if Active.GetRT = 304 then
600      Active.OK                     'MSG-Box (... x ersetzt) schließen
601     end if
602    end if
603    Such_Text = "y"                     'Suchen  aller "y", um die Ersetzung
604    kontext "FindAndReplace"            'zu pruefen
605    SearchFor.SetText Such_Text
606    ReplaceWith.SetText Meldungs_Text
607    SearchAll.Click
608    Such_Text = "yyyy"                  '4 mal wurde ersetzt
609    call Vergleichen_und_ausgeben
610    Call hCloseDocument
611 endcase
613 '---------------------------------------------------------
614 testcase tReplace_Arial_with_TmsRmn
615    call wSetFindAndReplaceToDefault(1)
616    Such_Text = "opus"                  'Suche Arial, 16 pt, ersetze
617    Meldungs_Text = "Ers. Arial mit Times Roman"       'mit Times New Roman, normal 24pt
618    SearchFor.SetText Such_Text
620    Formats.Click
621    kontext
622    Active.SetPage TabFont
623    kontext "TabFont"
624    try
625       FontWest.SetText "Arial"
626    catch
627       Font.SetText "Arial"
628    endcatch
629    sleep 2
630    try
631       SizeWest.SetText "16"
632    catch
633       Size.SetText "16"
634    endcatch
635    sleep 2
636    TabFont.OK
637    kontext "FindAndReplace"
638    ReplaceWith.SetText "Ersetzungstext"
639    sleep 2
641    Formats.Click
642    kontext
643    Active.SetPage TabFont
644    kontext "TabFont"
645    if gAsianSup = True or gCTLSup = True then
646                 try
647                         FontWest.SetText "Times New Roman"
648                 catch
649                 Warnlog "Control: 'FontWest' has not been found ! -> Asian-Support: " + gAsianSup + "CTL-Support: " + gCTLSup
650                         Font.SetText "Times New Roman"
651                 endcatch
652         else
653                 Font.SetText "Times New Roman"
654         end if
655    sleep 2
656    if gAsianSup = True or gCTLSup = True then
657      StyleWest.Select 1
658    else
659      Style.Select 1
660    end if
661    sleep 2
662    try
663       SizeWest.SetText "20"
664    catch
665       Size.SetText "20"
666    endcatch
667    sleep 2
668    TabFont.OK
669    sleep 2
670    kontext "FindAndReplace"
671    ReplaceAll.Click
673    sleep 2
674    kontext
675    Kontext "Active"
676    if Active.Exists then
677     if Active.GetRT = 304 then
678      Active.OK                     'MSG-Box (... x ersetzt) schließen
679     else
680      Warnlog "Messagebox, how often replaced, not up !"
681     end if
682    end if
683    Sleep 2
684    kontext "FindAndReplace"
685    FindAndReplace.Close
686    Kontext "DocumentWriter"
687    DocumentWriter.Typekeys "<MOD1 HOME>"
689    EditSearchAndReplace
690    kontext "FindAndReplace"
691    Such_Text = "Ersetzungstext"
692    SearchFor.SetText Such_Text
693    if NoFormat.IsVisible = False then More.Click
694    NoFormat.Click
695    ReplaceWith.SetText "Ersetzungstext suchen"
696    NoFormat.Click
697    SearchAll.Click
698    call Vergleichen_und_ausgeben
699    Call hCloseDocument
700 endcase
702 '---------------------------------------------------------
703 testcase tBackwards_Search
704    call wSetFindAndReplaceToDefault(1)
705    Sleep 2
706    FindAndReplace.Close
707    kontext "DocumentWriter"               'Suchen  rückwärts, dafür an
708    DocumentWriter.Typekeys "<PAGEDOWN>"            'das Ende des Dokuments gehen
709    DocumentWriter.Typekeys "<MOD1 END>"
710    Such_Text = "no"
711    Meldungs_Text = "Suchen rückwärts"
712    EditSearchAndReplace
713    kontext "FindAndReplace"
714    if Backwards.IsVisible = False then More.Click
715    Backwards.Check
716    if WholeWordsOnly.ischecked then
717       Warnlog "   'Match case' is checked"
718       WholeWordsOnly.uncheck
719    end if
720    SearchFor.SetText Such_Text
721    ReplaceWith.SetText Meldungs_Text
722    SearchNow.Click
723    call Vergleichen_und_ausgeben
724    Call hCloseDocument
725 endcase
727 '---------------------------------------------------------
728 testcase tSeveral_Times
729   dim Zaehler as integer
731    call wSetFindAndReplaceToDefault(1)
732    Such_Text = "m"                     'Suchen  mehrmals
733    Meldungs_Text = "Suchen mehrmals"
734    SearchFor.SetText Such_Text
735    ReplaceWith.SetText Meldungs_Text
736    for Zaehler = 1 to 10
737       SearchNow.Click
738    next Zaehler
739    call Vergleichen_und_ausgeben
740    Call hCloseDocument
741 endcase
743 '---------------------------------------------------------
744 testcase tAlle_Suchen
745    call wSetFindAndReplaceToDefault(1)
746    Such_Text = "x"                     'Suchen  alle
747    Meldungs_Text = "Suchen alle"
748    SearchFor.SetText Such_Text
749    ReplaceWith.SetText Meldungs_Text
750    SearchAll.Click
751    Such_Text = "xxxx"                  'im Beispieltext kommt "x" 4 mal vor
752    call Vergleichen_und_ausgeben
753    Call hCloseDocument
754 endcase
756 '---------------------------------------------------------
757 testcase tFurther_Look_up_At_The_Beginning
758    call wSetFindAndReplaceToDefault(1)
759    Sleep 2
760    FindAndReplace.Close             'Meldung am Dokumentende
761    kontext "DocumentWriter"
762    DocumentWriter.Typekeys "<MOD1 END>"            'and Ende des Dokuments gehen
763    Such_Text = "o"
764    Meldungs_Text = "Am Dokumentanfang weitersuchen"
765    EditSearchAndReplace
766    kontext "FindAndReplace"
767    SearchFor.SetText Such_Text
768    ReplaceWith.SetText Meldungs_Text
769    SearchNow.Click
770    Kontext "Active"
771    if Active.Exists (1) then
772       dummy_text = Active.GetText               'Auslesen der Meldung (dt/engl/frz)
773       call Meldungs_Test (dummy_text)           'in der Query-Box und Schließen
774       Active.Yes                 'mit JA
775    end if
776    call Vergleichen_und_ausgeben
777    Call hCloseDocument
778 endcase
780 '---------------------------------------------------------
781 testcase tParagraphStyle_Search
782     call wSetFindAndReplaceToDefault(1)
783     ' print "the base for the dialog isn't reached!???? before"
784     if Not SearchForStyles.IsVisible then More.Click
785     SearchForStyles.Check    
786     ' <font color=#ff0000> TBO TODO : insert global LOCALE routine for text : 'Heading' </FONT>
787     Select Case iSprache
788         Case 01 : Such_Text = "Heading"
789         Case 03 : Such_Text = "Título"
790         Case 07 : Such_Text = "Заголовок"
791         Case 31 : Such_Text = "Kop"
792         Case 33 : Such_Text = "Titre"
793         Case 34 : Such_Text = "Encabezado"
794         Case 39 : Such_Text = "Intestazione"
795         Case 46 : Such_Text = "Överskrift"
796         Case 49 : Such_Text = "Überschrift"          'Suchen  Absatzformat "Überschrift"
797         Case 55 : Such_Text = "Título Principal"
798         Case 81 : Such_Text = "見出し"
799         Case 86 : Such_Text = "标题"
800         Case 88 : Such_Text = "標題"
801         case else:  QAErrorlog "Insert heading-name (" + wGetHeadingName + ") for language: " + iSprache
802                     Call hCloseDocument
803                     goto endsub
804     end select
805     Meldungs_Text = "Suchen Absatzformat"
806     Sleep 2
807     FindAndReplace.Close
808     kontext "DocumentWriter"
809     DocumentWriter.Typekeys "<RIGHT>"
810     DocumentWriter.Typekeys "<LEFT>"
811     EditSearchAndReplace
812     kontext "FindAndReplace"
813     if SearchForStyles.IsVisible = False then More.Click
814     SearchForStyles.Check
815     sleep 1                       'Vorlagen muessen erst gelesen werden
816     SearchForStyle.Select Such_Text
817     SearchNow.Click
818     Such_Text = chr(9) + "Absatzformat: Überschrift"
819     call Vergleichen_und_ausgeben
820     Call hCloseDocument
821 endcase
823 '---------------------------------------------------------
824 testcase tText_In_Table
825     call wSetFindAndReplaceToDefault(1)
826 'warnlog "WorkAround beginn-----------------"
827 '   kontext "FindAndReplace"
828 '   Sleep 2
829 '   if FindAndReplace.Exists then            'Evtl. offenes Fenster schließen
830 '      FindAndReplace.Close
831 '   end if
832 '   kontext "DocumentWriter"
833 '   EditSearchAndReplace
834 '   kontext "FindAndReplace"           'Suchen&Replace-Fenster öffnen
835 '   sleep 2
836 'warnlog "WorkAround ending!-----------------"
838  'print "the base for the dialog isn't reached!???? after!"
839    Such_Text = "Tabelle"                  'Suchen Text in Tabelle
840    Meldungs_Text = "Text in Tabelle"
841    try
842       SearchFor.SetText Such_Text
843    catch
844       print "Text in table not enabled"
845    endcatch
846    ReplaceWith.SetText Meldungs_Text
847    SearchNow.Click
848    call Vergleichen_und_ausgeben
849    Call hCloseDocument
850 endcase
852 '---------------------------------------------------------
853 testcase tText_In_Frame
854    call wSetFindAndReplaceToDefault(1)
855    Such_Text = "Rahmen"                'Suchen  Text in Rahmen
856    Meldungs_Text = "Suchen Text in Rahmen"   '
857    SearchFor.SetText Such_Text
858    ReplaceWith.SetText Meldungs_Text
859    SearchNow.Click
860    call Vergleichen_und_ausgeben
861    Call hCloseDocument
862 endcase
864 '---------------------------------------------------------
866 testcase tSimilarity_Search
867   dim Zaehler as integer
868   dim Zaehler2 as integer
869   dim Zeichen_Tauschen as integer
870   dim Zeichen_Hinzufuegen as integer
871   dim Zeichen_Entfernen as integer
873    call wSetFindAndReplaceToDefault(1)
874    Such_Text = "Ähnlichkeit"              'Ähnlichkeitssuche
875    SearchFor.SetText Such_Text
876    if SimilaritySearch.IsVisible = False then More.Click
877    SimilaritySearch.check
878    for Zaehler2 = 1 to 4                  'Es werden die Optionen
879       for Zaehler = 1 to 3                'Tauschen, Hinzufuegen und Entfernen
880          Zeichen_Tauschen = 0             '1 bis 3 mal angechewählt
881          Zeichen_Hinzufuegen = 0
882          Zeichen_Entfernen = 0
883          if SimilaritySearch.IsVisible = False then More.Click
884          SimilaritySearchFor.click
885          kontext "Aehnlichkeitssuche"
886          Kombinieren.check
887          ZeichenTauschen.ToMin
888          ZeichenHinzufuegen.ToMin
889          ZeichenEntfernen.ToMin
890          ZeichenTauschen.Less
891          ZeichenHinzufuegen.Less
892          ZeichenEntfernen.Less
893          select case Zaehler2
894             Case 1 : Zeichen_Tauschen = Zaehler
895             Case 2 : Zeichen_Hinzufuegen = Zaehler
896             Case 3 : Zeichen_Entfernen = Zaehler
897             Case 4 : Zaehler = 3             'Die 3 Optionen werden gleichzeitig
898                      Zeichen_Tauschen = Zaehler       'angewählt.
899                      Zeichen_Hinzufuegen = Zaehler
900                      Zeichen_Entfernen = Zaehler
901          end select
902          ZeichenTauschen.More (Zeichen_Tauschen)
903          ZeichenHinzufuegen.More (Zeichen_Hinzufuegen)
904          ZeichenEntfernen.More (Zeichen_Entfernen)
905          Aehnlichkeitssuche.OK
906          kontext "FindAndReplace"
907          SearchAll.Click
908          select case Zeichen_Tauschen
909             Case 1 : Such_Text = "Ähnlechkiit"
910                      Meldungs_Text = "Ähnlichkeitssuche Tauschen 1x"
911             Case 2 : Such_Text = "ÄhnlechkiitÄhnilchkiet"
912                      Meldungs_Text = "Ähnlichkeitssuche Tauschen 2x"
913             Case 3 : Such_Text = "ÄhnlechkiitÄhnilchkiethänilchkiet"
914                      Meldungs_Text = "Ähnlichkeitssuche Tauschen 3x"
915          end select
916          select case Zeichen_Hinzufuegen
917             Case 1 : Such_Text = "Ähnnlichkeit"
918                      Meldungs_Text = "Ähnlichkeitssuche Hinzufuegen 1x"
919             Case 2 : Such_Text = "ÄhnnlichkeitÄhnnliichkeit"
920                      Meldungs_Text = "Ähnlichkeitssuche Hinzufuegen 2x"
921             Case 3 : Such_Text = "ÄhnnlichkeitÄhnnliichkeitÄhnliichhkeeit"
922                      Meldungs_Text = "Ähnlichkeitssuche Hinzufuegen 3x"
923          end select
924          select case Zeichen_Entfernen
925             Case 1 : Such_Text = "Ähnlichkei"
926                      Meldungs_Text = "Ähnlichkeitssuche Entfernen 1x"
927             Case 2 : Such_Text = "ÄhnlichkeiÄhnlichke"
928                      Meldungs_Text = "Ähnlichkeitssuche Entfernen 2x"
929             Case 3 : Such_Text = "ÄhnlichkeiÄhnlichkeÄhnlichk"
930                      Meldungs_Text = "Ähnlichkeitssuche Entfernen 3x"
931          end select
932          if Zaehler2 = 4 then
933             Such_Text = "ÄhnlechkiitÄhnilchkiethänilchkietÄhnnlichkeitÄhnnliichkeitÄhnliichhkeeitÄhnlichkeiÄhnlichkeÄhnlichkÄnhliikheeii"
934             Meldungs_Text ="Ähnlichkeitssuche Hinzu+Entfern+Tausch, je3x"
935          end if
936          call Vergleichen_und_ausgeben
937          kontext "DocumentWriter"
938          DocumentWriter.Typekeys "<PAGEUP>",          'an den Anfang des Textes gehen
939          DocumentWriter.Typekeys "<MOD1 HOME>"
940          EditSearchAndReplace
941          kontext "FindAndReplace"            'Suchen&Replace-Fenster öffnen
942       next Zaehler
943    next Zaehler2
944    Call hCloseDocument
945 endcase
947 ' ----------------------------------------------------------------------------------
949 function wCountNumberOfAttributes() as Integer
950    Dim i as integer, AttributeCount as integer
951    Attribute.Click
952    Kontext "Attribute"
953    wait 500
954    ' Count how much Attributes are in the list
955    For i = 1 to 200
956     try
957        Auswahl.Select i
958        printlog Auswahl.GetSelText
959        AttributeCount = AttributeCount + 1
960     catch
961       wCountNumberOfAttributes = AttributeCount
962       i = 202
963     endcatch
964    next i
965    Attribute.Close
966 end function
968 ' ----------------------------------------------------------------------------------
970 function wSelectAttributeName(aNumber as integer, AsianSupport as boolean, SetState as integer) as string
971  'This function checks for the Attribute name depending on the given number (aNumber).
972  'SetState is given to check or uncheck the Attribute in list
973  'Returns the Attribute name if found and successfully checked in list.
974  'Default for this test is given from the german office-Version (easier for me:-))
975  Dim i as integer, aSelectIt as String
976  Kontext "FindAndReplace"
977  Attributes.Click
978  Kontext "Attribute"
980  Select Case aNumber
981   Case 1
982    Select Case iSprache
983     Case 49: aSelectIt = "Absatz trennen"
984     Case else: Warnlog "Language not supported. No test"
985                exit function
986    end select
988   Case 2
989    Select Case iSprache
990     Case 49: aSelectIt = "Absätze zusammenhalten"
991     Case else: Warnlog "Language not supported. No test"
992                exit function
993    end select
995   Case 3
996    Select Case iSprache
997     Case 49: aSelectIt = "Abstand"
998     Case else: Warnlog "Language not supported. No test"
999                exit function
1000    end select
1002   Case 4
1003    Select Case iSprache
1004     Case 49: aSelectIt = "Asiatische Schrift"
1005     Case else: Warnlog "Language not supported. No test"
1006                exit function
1007    end select
1009   Case 5
1010    Select Case iSprache
1011     Case 49: aSelectIt = "Ausrichtung"
1012     Case else: Warnlog "Language not supported. No test"
1013                exit function
1014    end select
1016   Case 6
1017    Select Case iSprache
1018     Case 49: aSelectIt = "Auszeichnung"
1019     Case else: Warnlog "Language not supported. No test"
1020                exit function
1021    end select
1023   Case 7
1024    Select Case iSprache
1025     Case 49: aSelectIt = "Betonungszeichen"
1026     Case else: Warnlog "Language not supported. No test"
1027                exit function
1028    end select
1030   Case 8
1031    Select Case iSprache
1032     Case 49: aSelectIt = "Blinkend"
1033     Case else: Warnlog "Language not supported. No test"
1034                exit function
1035    end select
1037   Case 9
1038    Select Case iSprache
1039     Case 49: aSelectIt = "Doppelzeilig"
1040     Case else: Warnlog "Language not supported. No test"
1041                exit function
1042    end select
1044   Case 10
1045    Select Case iSprache
1046     Case 49: aSelectIt = "Durchgestrichen"
1047     Case else: Warnlog "Language not supported. No test"
1048                exit function
1049    end select
1051   Case 11
1052    Select Case iSprache
1053     Case 49: aSelectIt = "Einzug"
1054     Case else: Warnlog "Language not supported. No test"
1055                exit function
1056    end select
1058   Case 12
1059    Select Case iSprache
1060     Case 49: aSelectIt = "Hängende Interpunktion"
1061     Case else: Warnlog "Language not supported. No test"
1062                exit function
1063    end select
1065   Case 13
1066    Select Case iSprache
1067     Case 49: aSelectIt = "Hurenkinder"
1068     Case else: Warnlog "Language not supported. No test"
1069                exit function
1070    end select
1072   Case 14
1073    Select Case iSprache
1074     Case 49: aSelectIt = "Kerning"
1075     Case else: Warnlog "Language not supported. No test"
1076                exit function
1077    end select
1079   Case 15
1080    Select Case iSprache
1081     Case 49: aSelectIt = "Kontur"
1082     Case else: Warnlog "Language not supported. No test"
1083                exit function
1084    end select
1086   Case 16
1087    Select Case iSprache
1088     Case 49: aSelectIt = "Position"
1089     Case else: Warnlog "Language not supported. No test"
1090                exit function
1091    end select
1093   Case 17
1094    Select Case iSprache
1095     Case 49: aSelectIt = "Registerhaltigkeit"
1096     Case else: Warnlog "Language not supported. No test"
1097                exit function
1098    end select
1100   Case 18
1101    Select Case iSprache
1102     Case 49: aSelectIt = "Relief"
1103     Case else: Warnlog "Language not supported. No test"
1104                exit function
1105    end select
1107   Case 19
1108    Select Case iSprache
1109     Case 49: aSelectIt = "Rotation"
1110     Case else: Warnlog "Language not supported. No test"
1111                exit function
1112    end select
1114   Case 20
1115    Select Case iSprache
1116     Case 49: aSelectIt = "Schattiert"
1117     Case else: Warnlog "Language not supported. No test"
1118                exit function
1119    end select
1121   Case 21
1122    Select Case iSprache
1123     Case 49: aSelectIt = "Schrift"
1124     Case else: Warnlog "Language not supported. No test"
1125                exit function
1126    end select
1128   Case 22
1129    Select Case iSprache
1130     Case 49: aSelectIt = "Schriftfarbe"
1131     Case else: Warnlog "Language not supported. No test"
1132                exit function
1133    end select
1135   Case 23
1136    Select Case iSprache
1137     Case 49: aSelectIt = "Schriftgrad"
1138     Case else: Warnlog "Language not supported. No test"
1139                exit function
1140    end select
1142   Case 24
1143    Select Case iSprache
1144     Case 49: aSelectIt = "Schriftgrad asiatische Schrift"
1145     Case else: Warnlog "Language not supported. No test"
1146                exit function
1147    end select
1149   Case 25
1150    Select Case iSprache
1151     Case 49: aSelectIt = "Schriftstärke"
1152     Case else: Warnlog "Language not supported. No test"
1153                exit function
1154    end select
1156   Case 26
1157    Select Case iSprache
1158     Case 49: aSelectIt = "Schriftstärke asiatische Schrift"
1159     Case else: Warnlog "Language not supported. No test"
1160                exit function
1161    end select
1163   Case 27
1164    Select Case iSprache
1165     Case 49: aSelectIt = "Schriftstellung"
1166     Case else: Warnlog "Language not supported. No test"
1167                exit function
1168    end select
1170   Case 28
1171    Select Case iSprache
1172     Case 49: aSelectIt = "Schriftstellung asiatische Schrift"
1173     Case else: Warnlog "Language not supported. No test"
1174                exit function
1175    end select
1177   Case 29
1178    Select Case iSprache
1179     Case 49: aSelectIt = "Schusterjungen"
1180     Case else: Warnlog "Language not supported. No test"
1181                exit function
1182    end select
1184   Case 30
1185    Select Case iSprache
1186     Case 49: aSelectIt = "Seitenvorlage"
1187     Case else: Warnlog "Language not supported. No test"
1188                exit function
1189    end select
1191   Case 31
1192    Select Case iSprache
1193     Case 49: aSelectIt = "Silbentrennung"
1194     Case else: Warnlog "Language not supported. No test"
1195                exit function
1196    end select
1198   Case 32
1199    Select Case iSprache
1200     Case 49: aSelectIt = "Skalierung"
1201     Case else: Warnlog "Language not supported. No test"
1202                exit function
1203    end select
1205   Case 33
1206    Select Case iSprache
1207     Case 49: aSelectIt = "Sprache"
1208     Case else: Warnlog "Language not supported. No test"
1209                exit function
1210    end select
1212   Case 34
1213    Select Case iSprache
1214     Case 49: aSelectIt = "Sprache asiatische Schrift"
1215     Case else: Warnlog "Language not supported. No test"
1216                exit function
1217    end select
1219   Case 35
1220    Select Case iSprache
1221     Case 49: aSelectIt = "Tabulatoren"
1222     Case else: Warnlog "Language not supported. No test"
1223                exit function
1224    end select
1226   Case 36
1227    Select Case iSprache
1228     Case 49: aSelectIt = "Text Abstand"
1229     Case else: Warnlog "Language not supported. No test"
1230                exit function
1231    end select
1233   Case 37
1234    Select Case iSprache
1235     Case 49: aSelectIt = "Unterstrichen"
1236     Case else: Warnlog "Language not supported. No test"
1237                exit function
1238    end select
1240   Case 38
1241    Select Case iSprache
1242     Case 49: aSelectIt = "Verbotene Zeichen"
1243     Case else: Warnlog "Language not supported. No test"
1244                exit function
1245    end select
1247   Case 39
1248    Select Case iSprache
1249     Case 49: aSelectIt = "Vertikale Textausrichtung"
1250     Case else: Warnlog "Language not supported. No test"
1251                exit function
1252    end select
1254   Case 40
1255    Select Case iSprache
1256     Case 49: aSelectIt = "Wortweise"
1257     Case else: Warnlog "Language not supported. No test"
1258                exit function
1259    end select
1261   Case 41
1262    Select Case iSprache
1263     Case 49: aSelectIt = "Zeichenhintergrund"
1264     Case else: Warnlog "Language not supported. No test"
1265                exit function
1266    end select
1268   Case 42
1269    Select Case iSprache
1270     Case 49: aSelectIt = "Zeilenabstand"
1271     Case else: Warnlog "Language not supported. No test"
1272                exit function
1273    end select
1275  end select
1277  ' Searches for selected Attribute in Attributes list
1278   For i = 1 to 42
1279    try
1280     Auswahl.Select i
1281     if Ucase(Auswahl.GetSelText) = Ucase(aSelectIt) then
1282      Select Case SetState
1283       Case 1
1284         Auswahl.UnCheck
1285       Case 2
1286         Auswahl.Check
1287      end select
1288      wSelectAttributeName = aSelectIt
1289      i = 50
1290     end if
1291    catch
1292      i = 50
1293    endcatch
1294   next i
1295   'if Attributes not found
1296   if i = 42 then
1297    if AsianSupport = True then Warnlog "Unable to locate Attribute in list!"
1298    wSelectAttributeName = ""
1299   end if
1300   Attribute.Ok
1301 end function
1304 sub wCheckAttribute(aNumber as integer)
1305  Dim i as integer
1306  Kontext "FindAndReplace"
1307  SearchNow.Click
1308  if wCheckActiveMessageboxes = False then
1309   Warnlog "Search for Attributes has failed!"
1310   exit sub
1311  end if
1312  Select Case aNumber
1313   Case 1   ' "Absatz trennen"
1314     EditCopy
1315     if Left$(GetClipboardtext,15) <> "First Paragraph" then
1316      Warnlog "-  Wrong paragraph has been found!"
1317     end if
1318   Case 2    '"Absätze zusammenhalten"
1319     EditCopy
1320     if Left$(GetClipboardtext,25) <> "Keep with next paragraph1" then
1321      Warnlog "-  Wrong paragraph has been found!"
1322     end if
1323   Case 3    '"Abstand"
1324     EditCopy
1325     if Left$(GetClipBoardText,15) <> "Spacing between" then
1326      Warnlog "- Wrong paragraph has been found!"
1327     end if
1328   Case 4    '"Asiatische Schrift"
1329   Case 5    '"Ausrichtung"
1330      EditCopy
1331      if Left$(GetClipBoardtext,20) <> "Wow, Alignment right" then
1332       Warnlog "- Wrong paragraph has been found!"
1333      else
1334       printlog "-  'Alignment right' found!"
1335      end if
1336      For i = 1 to 2
1337       Kontext "FindAndReplace"
1338       SearchNow.Click
1339       if wCheckActiveMessageboxes = False then
1340        Warnlog "Search for Attributes has failed!"
1341        exit sub
1342       end if
1343       EditCopy
1344       Select Case i
1345        Case 1
1346          if Left$(GetClipBoardtext,23) <> "Wow, Alignment centered" then
1347           Warnlog "- Wrong paragraph has been found!"
1348           exit sub
1349          else
1350           printlog "-  'Alignment centered' found!"
1351          end if
1352        Case 2
1353          if Left$(GetClipBoardtext,24) <> "Wow, Alignment justified" then
1354           Warnlog "- Wrong paragraph has been found!"
1355          exit sub
1356          else
1357           printlog "-  'Alignment justified' found!"
1358          end if
1359       end select
1360      next i
1361   Case 6    '"Auszeichnung"
1362      EditCopy
1363      If Ucase(GetClipBoardtext) <> "CAPITALS" then
1364       Warnlog "Wrong effect has been found"
1365       exit sub
1366      end if
1367      For i = 1 to 3
1368       Kontext "FindAndReplace"
1369       SearchNow.Click
1370       if wCheckActiveMessageboxes = False then
1371        Warnlog "Search for effects has failed!"
1372        exit sub
1373       end if
1374       EditCopy
1375       Select Case i
1376        Case 1
1377         If Ucase(GetClipBoardtext) <> "LOWERCASE" then
1378          Warnlog "Wrong effect has been found"
1379          exit sub
1380         end if
1381        Case 2
1382         If Ucase(GetClipBoardtext) <> "TITLE" then
1383          Warnlog "Wrong effect has been found"
1384          exit sub
1385         end if
1386        Case 3
1387         If Ucase(GetClipBoardtext) <> "SMALL CAPITALS" then
1388          Warnlog "Wrong effect has been found"
1389          exit sub
1390         end if
1391       end select
1392      next i
1393   Case 7    '"Betonungszeichen"
1394   Case 8    '"Blinkend"
1395     EditCopy
1396     if Left$(GetClipBoardText,13) <> "Blinking text" then
1397      Warnlog "- Wrong Attribute has been found!"
1398     end if
1399   Case 9     '"Doppelzeilig"
1400   Case 10    '"Durchgestrichen"
1401     EditCopy
1402     if Left$(GetClipBoardText,14) <> "Strike through" then
1403      Warnlog "- Wrong Attribute has been found!"
1404     end if
1405     For i = 1 to 4
1406      Kontext "FindAndReplace"
1407      SearchNow.Click
1408      EditCopy
1409      if Left$(GetClipBoardText,14) <> "Strike through" then
1410       Warnlog "- Wrong Attribute has been found!"
1411      end if
1412     next i
1413   Case 11    '"Einzug"
1414     EditCopy
1415     if Left$(GetClipBoardText,6) <> "Indent" then
1416      Warnlog "- Wrong Attribute has been found!"
1417     end if
1418   Case 12    '"Hängende Interpunktion"
1419   Case 13    '"Hurenkinder"
1420     EditCopy
1421     if Left$(GetClipBoardText, 9) <> "Hurenkind" then
1422      Warnlog "- Wrong Attribute has been found!"
1423     end if
1424     Kontext "FindAndReplace"
1425     SearchNow.Click
1426     EditCopy
1427     if Left$(GetClipBoardText, 8) <> "tstststs" then
1428      Warnlog "- Wrong Attribute has been found!"
1429     end if
1430   Case 14    '"Kerning"
1431     EditCopy
1432     if Left$(GetClipBoardText, 8) <> "Kerning1" then
1433      Warnlog "- Wrong Attribute has been found!"
1434     end if
1435     Kontext "FindAndReplace"
1436     SearchNow.Click
1437     EditCopy
1438     if Left$(GetClipBoardText, 8) <> "Kerning2" then
1439      Warnlog "- Wrong Attribute has been found!"
1440     end if
1441   Case 15    '"Kontur"
1442     EditCopy
1443     if Left$(GetClipBoardText, 6) <> "Kontur" then
1444      Warnlog "- Wrong Attribute has been found!"
1445     end if
1446   Case 16    '"Position"
1447     EditCopy
1448     if Left$(GetClipBoardText, 4) <> "Hoch" then
1449      Warnlog "- Wrong Attribute has been found!"
1450     end if
1451     Kontext "FindAndReplace"
1452     SearchNow.Click
1453     EditCopy
1454     if Left$(GetClipBoardText, 4) <> "Tief" then
1455      Warnlog "- Wrong Attribute has been found!"
1456     end if
1457   Case 17    '"Registerhaltigkeit"
1459   Case 18    '"Relief"
1460   Case 19    '"Rotation"
1461   Case 20    '"Schattiert"
1462   Case 21    '"Schrift"
1463   Case 22    '"Schriftfarbe"
1464   Case 23    '"Schriftgrad"
1465   Case 24    '"Schriftgrad asiatische Schrift"
1466   Case 25    '"Schriftstärke"
1467   Case 26    '"Schriftstärke asiatische Schrift"
1468   Case 27    '"Schriftstellung"
1469   Case 28    '"Schriftstellung asiatische Schrift"
1470   Case 29    '"Schusterjungen"
1471   Case 30    '"Seitenvorlage"
1472   Case 31    '"Silbentrennung"
1473   Case 32    '"Skalierung"
1474   Case 33    '"Sprache"
1475   Case 34    '"Sprache asiatische Schrift"
1476   Case 35    '"Tabulatoren"
1477   Case 36    '"Text Abstand"
1478   Case 37    '"Unterstrichen"
1479   Case 38    '"Verbotene Zeichen"
1480   Case 39    '"Vertikale Textausrichtung"
1481   Case 40    '"Wortweise"
1482   Case 41    '"Zeichenhintergrund"
1483   Case 42    '"Zeilenabstand"
1484  end select
1485   Kontext "FindAndReplace"
1486 end sub
1488 function wCheckActiveMessageboxes() as boolean
1489    wCheckActiveMessageboxes=True
1490    Kontext "Active"
1491    if Active.Exists then
1492     if Active.GetRT = 304 then
1493      try  ' Question if StarOffice should search at start of document
1494       Active.yes
1495       ' Exit when search has again failed
1496       if Active.Exists then
1497        if Active.GetRT = 304 then
1498         wCheckActiveMessageboxes = False
1499         Warnlog Active.Gettext
1500         Active.Ok
1501        end if
1502       end if
1503      catch
1504       wCheckActiveMessageboxes = False
1505       Warnlog Active.Gettext
1506       Active.Ok
1507      endcatch
1508     end if
1509    end if
1510 end function
1512 '---------------------------------------------------------
1513 '            Unterprogramme
1514 '---------------------------------------------------------
1515 '---------------------------------------------------------
1516 sub wSetFindAndReplaceToDefault(WhichDocument as integer)
1517     '/// <font color=#ff0000> TODO: translate this test ///'
1518     '/// file "input\\writer\\such_u_e.sxw" will be used <FONT> ///
1519     Dim i as integer
1520     Select Case WhichDocument
1521         Case 0
1522             Call hNewDocument  ' empty Document
1523         Case 1
1524             Call hFileOpen ( gTesttoolPath +"writer\optional\input\search\such_u_e.sxw")
1525             Call sMakeReadOnlyDocumentEditable
1526         case 2
1527             Call hFileOpen ( gTesttoolPath +"writer\optional\input\search\attrib.sxw")
1528             Call sMakeReadOnlyDocumentEditable
1529     end select
1530     kontext "FindAndReplace"
1531     Sleep 2
1532     if FindAndReplace.Exists then          'Evtl. offenes Fenster schließen
1533         FindAndReplace.Close
1534     end if
1535     kontext "DocumentWriter"
1536     DocumentWriter.Typekeys "<PAGEUP>",          'an den Anfang des Textes gehen
1537     DocumentWriter.Typekeys "<MOD1 HOME>"
1538     EditSearchAndReplace
1539     kontext "FindAndReplace"            'Suchen&Replace-Fenster öffnen
1540     if Not SearchForStyles.IsVisible then More.Click
1541     if SearchForStyles.IsEnabled then SearchForStyles.Uncheck
1542     try
1543         SearchFor.SetText ""
1544     catch
1545         warnlog "in 'grundzustand' writing a text to search for is not possible :-("
1546     endcatch
1547     if SimilaritySearch.IsEnabled then SimilaritySearch.Uncheck
1548     ' Column 1
1549     WholeWordsOnly.Uncheck
1550     Backwards.Uncheck
1551     RegularExpressions.Uncheck
1552     ' Column 2
1553     MatchCase.Uncheck
1554     if CurrentSelectionOnly.IsEnabled then CurrentSelectionOnly.Uncheck
1555     'Column 3
1556     Attributes.Click
1557     Kontext "Attribute"
1558     ' List has 32 Attributes
1559     For i = 1 to 32
1560         Auswahl.Select i
1561         Auswahl.Uncheck
1562     Next i
1563     Attribute.OK
1564     kontext "FindAndReplace"
1565     if NoFormat.IsEnabled then NoFormat.Click
1566     Kontext "FindAndReplace"
1567 end sub
1569 '---------------------------------------------------------
1570 sub Vergleichen_und_ausgeben
1571                               'ht Such_Text mit dem,
1572     dim i as integer           
1573     dim Boxen_RT as integer    
1574     
1575     kontext
1576     for i = 1 to 2                      'Close all Message-, Info-, and Query-Boxes
1577       if active.exists (1) then           
1578          Boxen_RT = Active.GetRT
1579          select case Boxen_RT
1580             Case 304, 305 : Active.OK
1581             Case 308 : Active.Yes
1582          end select
1583     end if
1584     next i
1585     kontext "FindAndReplace"
1586     Sleep 2
1587     try
1588         FindAndReplace.Close
1589     catch
1590         Warnlog "Dialog is not present. Should be open!"
1591     endcatch
1592     
1593     wait 500
1594     Kontext "DocumentWriter"
1595     try
1596         BearbeitenKopieren               
1597     catch                     
1598         DocumentWriter.Typekeys "<PAGEUP>"
1599         DocumentWriter.Typekeys "<MOD1 END>"
1600         DocumentWriter.Typekeys "<SHIFT LEFT>", 15
1601         EditCopy
1602     endcatch
1603     wait 500
1604     dummy_Text = GetClipboardText
1605     if dummy_Text = Such_Text then
1606         Printlog "OK   ",Meldungs_Text
1607     else
1608         warnlog "'",Such_Text,"' was not found, but '", Dummy_Text, "' " '"With '" + Meldungs_Text+ "'
1609     end if
1610     Sleep 2
1611 end sub
1613 '---------------------------------------------------------  'abhängig von der Sprache wird die
1614 sub Meldungs_Test
1615                      'Meldung "...bis zum Dokumentende
1616     dim Text_In_Meldung as string, sProduct as string
1618     if gOOO = true then
1619         sProduct = "OpenOffice.org"
1620     else
1621         sProduct = "StarOffice"
1622     end if
1623     
1624     select case iSprache
1625         Case 01 : Text_In_Meldung = sProduct & " Writer has searched to the end of the document. Do you want to continue at the beginning?"
1626         Case 07 : Text_In_Meldung = sProduct & " Writer осуществил поиск к концу документа. Продолжить поиск с начала документа?"
1627         Case 03 : Text_In_Meldung = "O " & sProduct & " Writer procurou até ao fim do documento. Deseja continuar a procura no início do documento?"
1628         Case 31 : Text_In_Meldung = sProduct & " Writer heeft tot aan het einde van het document gezocht. Wilt u doorgaan met zoeken vanaf het begin?"
1629         Case 33 : Text_In_Meldung = sProduct & " Writer a atteint la fin du document. Souhaitez-vous reprendre la recherche au début du document ?"
1630         Case 34 : Text_In_Meldung = sProduct & " Writer ha buscado hasta el final del documento. ¿Desea continuar la búsqueda desde el principio?"
1631         Case 39 : Text_In_Meldung = sProduct & " Writer ha cercato fino alla fine del documento. Volete continuare dall'inizio del documento?"
1632         Case 46 : Text_In_Meldung = sProduct & " Writer har sökt till slutet av dokument. Vill du fortsätta sökningen i början av dokumentet?"
1633         Case 49 : Text_In_Meldung = sProduct & " Writer hat bis zum Ende des Dokumentes gesucht. Möchten Sie die Suche am Dokumentanfang fortsetzen?"
1634                 Case 55 : Text_In_Meldung = sProduct & " Writer pesquisou até o final do documento. Deseja continuar do início?"
1635         Case 81 : Text_In_Meldung = sProduct & " Writer は、文書末まで検索しました。文書の始めに戻って続行しますか。"
1636         Case 82 : Text_In_Meldung = sProduct & " Writer가 문서의 끝까지 검색했습니다. 문서의 시작부분에서 검색을 계속하겠습니까?"
1637         Case 88 : Text_In_Meldung = sProduct & " Writer 已經搜尋至文件的結束位置。要從文件的起始位置繼續搜尋?"
1638     end select
1640     if Dummy_text = Text_In_Meldung then
1641         printlog "OK   Correct Message at end of document"
1642     else
1643         if Text_In_Meldung > "" then
1644             Warnlog "   No correct message at end of document"
1645             printlog Dummy_text
1646         else
1647             QAErrorlog "Please adapt test for this language!"
1648             printlog Dummy_text
1649         end if
1650     end if
1651 end sub
1654 function ToggleAttribute(sNumber as integer, sCheck as boolean)
1655     Kontext "FindAndReplace"
1656     Attributes.Click
1657     Kontext "Attribute"
1658     Auswahl.Select sNumber             'Check Attributes underlined
1659     wait 500
1660     if sCheck = "True" then
1661         Auswahl.Check
1662     else
1663         Auswahl.Uncheck
1664     end if
1665     wait 500
1666     Attribute.OK
1667     Kontext "FindAndReplace"
1668 end function
1671 function wGetHeadingName() as string
1672    ' This function gets the name 'Heading' from Stylist
1673    ' Needed this function for additional languages !
1674    FormatStylist
1675    Kontext "Stylist"
1676    if Stylist.NotExists then FormatStylist
1677    Absatzvorlagen.Click
1679    ' "Heading" should always be the 9th entry
1680    Gruppenliste.Select 5 ' Automatic
1681    wait 500
1682    Vorlagenliste.Select 9 ' Heading
1683    wGetHeadingName = Vorlagenliste.GetSeltext
1684    Call SetClipboard (wGetHeadingName)
1685    printlog "- Name of 'heading' for this language has been pasted to clipboard!"
1686    Stylist.Close
1687 end function
1689 '---------------------------------------------------------
1690 sub   LoadIncludeFiles
1691    use "inc\master.inc"
1692    use "inc\gvariabl.inc"
1693    gApplication = "WRITER"
1694    Call GetUseFiles
1695 end sub