* mock_ainputbox.prg - inlocuieste FUNCTION aInputBox (din oproceduri_comune.prg) in teste, ca * fereastra modala de introducere sa NU blocheze testul headless. Se incarca cu SET PROCEDURE ... * ADDITIVE langa mock_amessagebox.prg (aceeasi rezolutie de nume: castiga fisierul de proceduri * deschis cel mai recent). * gnMockInputBox (PUBLIC, optional): valoarea returnata la fiecare apel (implicit 1). * gcMockInputSecventa (PUBLIC, optional): lista de valori separate prin virgula, returnate pe rand * (apelul N ia valoarea N, ultimul apel se repeta) - pentru fluxuri care reiau intrebarea, ex. * numar de varianta invalid urmat de unul valid. Are prioritate fata de gnMockInputBox. * gnMockInputCount (PUBLIC, optional): contor de apeluri - pentru aserti de tipul "nu s-a cerut * numarul variantei cand exista o singura varianta". * gcMockUltimPrompt (PUBLIC, optional): textul ultimului prompt primit. FUNCTION aInputBox LPARAMETERS tcPrompt, tcTitle, txDefaultValue, tnLeft, tnTop, tcFormat, tcInputMask, tcPasswordChar LOCAL luRaspuns, lnApel, lcValoare IF TYPE('gnMockInputCount') = 'N' gnMockInputCount = gnMockInputCount + 1 lnApel = gnMockInputCount ELSE lnApel = 1 ENDIF luRaspuns = IIF(TYPE('gnMockInputBox') = 'N', gnMockInputBox, 1) IF TYPE('gcMockInputSecventa') = 'C' AND !EMPTY(gcMockInputSecventa) lcValoare = GETWORDNUM(gcMockInputSecventa, MIN(m.lnApel, GETWORDCOUNT(gcMockInputSecventa, ',')), ',') luRaspuns = VAL(m.lcValoare) ENDIF IF TYPE('gcMockUltimPrompt') = 'C' gcMockUltimPrompt = TRANSFORM(tcPrompt) ENDIF IF TYPE('gcUILog') = 'C' DO HarnessLog WITH 'MOCK aInputBox apelat: [' + ALLTRIM(TRANSFORM(tcPrompt)) + '] -> returnez ' + TRANSFORM(luRaspuns) ENDIF RETURN luRaspuns ENDFUNC