* 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
