Files
comun/utile/Teste/mock_cauta_alfa_anaf_label.prg
Marius Mutu 6aebd474fc Teste headless: verificare ANAF la alegerea clientului cu contract activ
Harness ROAACNPRO-specific (gcAppPath propriu, spre deosebire de test_init_env_auto.prg
care e fixat pe ROACONT), shadow pentru cauta_alfa() si testul care reproduce/confirma
label-ul ANAF pe caut_client_contract_activ(), plus repro pentru scoping-ul gresit al
lui poDate in do_cauta_partener (Thisform.poDate vs poDate PRIVATE).
2026-08-03 08:13:16 +03:00

53 lines
2.6 KiB
Plaintext

* mock_cauta_alfa_anaf_label.prg - inlocuieste DOAR PROCEDURE cauta_alfa (COMUN\programe\cauta_alfa.prg,
* linia 16), la fel ca mock_cauta_alfa_dialog.prg (vezi acolo motivatia completa: CursorFill() cere
* conexiune reala, Show() modal blocheaza headless). Aici NU se simuleaza alegerea unui rand -
* scopul e sa verifice DOAR daca label-ul ANAF (lb_anaf, anaf_verif_cautare din ocautare.prg) e
* activat de apelantul real (caut_partener / caut_client_contract_activ), replicand liniile 211-220
* din cauta_alfa.prg (poVerifAlegere.Activeaza/Dezactiveaza), fara sa mai deschida formularul.
*
* Trebuie incarcat PRIMUL (inaintea "SET PROCEDURE TO cauta_alfa ADDITIVE" din test_init_env_auto.prg) -
* la nume duplicat de procedura VFP foloseste fisierul incarcat PRIMUL.
*
* Control test: goDlgTest - formularul REAL cauta_alfa_form, PRE-CONSTRUIT in scriptul principal
* (capcana l, docs/testare-ui-vfp.md: CREATEOBJECT dintr-o procedura intoarce obiect stricat headless).
* Rezultat expus: gcTestAnafActivat, gcTestAnafLabelType, gcTestAnafLabelVisible, gcTestAnafLabelCaption
Procedure cauta_alfa
Parameters tcselect,tcfiltru,tcschema,tcorder,tccoloana,tcTitlu,tcTitluColoane, ;
tcNume_Proc,tl_AllInList,tcFiltruOriginal,tcPrimaColoana, tnPornire, tnTipReturn, ;
tcIdColumn, tlDesktop, tcGroup, tcGridDynamicBackColor, tcGridToolTip, tlModParam, tcStringCriterii, ;
tcProceduraVerifica, tcProceduraCopiaza,tcLocate
LOCAL oForm_cautare, oReturnScattObj
oForm_cautare = goDlgTest
gcTestDiag = 'Type(tlVerificaANAF)=' + TYPE('tlVerificaANAF') + ' val=' + TRANSFORM(IIF(TYPE('tlVerificaANAF')='L', tlVerificaANAF, '?')) + ;
' Type(tdDataDoc)=' + TYPE('tdDataDoc') + ' Type(poVerifAlegere)=' + TYPE('poVerifAlegere') + ;
' Type(lnNivelANAF)=' + TYPE('lnNivelANAF')
gcTestAnafActivat = .F.
gcTestAnafLabelType = 'N/A (poVerifAlegere neinstantiat)'
gcTestAnafLabelVisible = .F.
gcTestAnafLabelCaption = ''
IF TYPE('poVerifAlegere') = 'O' AND !ISNULL(poVerifAlegere)
gcTestAnafActivat = .T.
ADDPROPERTY(oForm_cautare, 'oVerifAlegere', poVerifAlegere)
poVerifAlegere.Activeaza(oForm_cautare)
poVerifAlegere.VerificaRand(.T.)
gcTestAnafLabelType = TYPE('oForm_cautare.lb_anaf')
IF gcTestAnafLabelType == 'O'
gcTestAnafLabelVisible = oForm_cautare.lb_anaf.Visible
gcTestAnafLabelCaption = oForm_cautare.lb_anaf.Caption
ENDIF
poVerifAlegere.Dezactiveaza()
ENDIF
*-- raspuns minimal: butonul Renunta (testul verifica doar label-ul, nu alegerea unui rand)
gnButon = 0
SELECT (oForm_cautare.crs_cursor)
SCATTER NAME oReturnScattObj BLANK
RETURN oReturnScattObj
Endproc && cauta_alfa (shadow test - label ANAF)