* mock_amessagebox.prg - inlocuieste FUNCTION amessagebox (myutils.prg) in testele headless, * ca dialogurile modale sa nu blocheze procesul. Returneaza 6 (Da/OK) implicit. * Se incarca cu SET PROCEDURE ... ADDITIVE dupa initializarea mediului: la nume duplicat de * procedura VFP alege fisierul deschis cel mai recent. * gnMockRaspuns (PUBLIC, optional): valoarea returnata (implicit 6). * gcMockUltimMesaj / gnMockUltimTip (PUBLIC, optional): daca testul declara gcMockUltimMesaj ca * sir, mock-ul memoreaza mesajul si tipul ultimului apel, pentru aserturi pe textul dialogului. FUNCTION amessagebox LPARAMETERS tcMessage, tnDialogBoxType, tcTitle, tcFont, tnTimeOut, tnTimeoutValue LOCAL lnRaspuns lnRaspuns = IIF(TYPE('gnMockRaspuns') = 'N', gnMockRaspuns, 6) IF TYPE('gcMockUltimMesaj') = 'C' gcMockUltimMesaj = TRANSFORM(tcMessage) gnMockUltimTip = IIF(TYPE('tnDialogBoxType') = 'N', tnDialogBoxType, 0) ENDIF TestLog('MOCK amessagebox: [' + ALLTRIM(TRANSFORM(tcMessage)) + '] -> returnez ' + TRANSFORM(lnRaspuns)) RETURN lnRaspuns ENDFUNC * MESSAGEBOX nativ nu se poate umbri; formularul apeleaza si MESSAGEBOX() direct in cateva * locuri. Testele care ating acele ramuri trebuie sa evite conditia care le declanseaza.