Initial: flux text FoxBin2Prg (git urmareste .??2 in-arbore, binarele VFP git-ignored)

Include si sistemul de depanare/testare headless din Teste\ (harness UI cu capturi, verificare de sintaxa prin compilare, wrappere text<->binar) si docs\depanare_testare_flora2roa.md.
This commit is contained in:
2026-08-02 08:56:52 +03:00
commit 2736cbd525
49 changed files with 16011 additions and 0 deletions

View File

@@ -0,0 +1,63 @@
* test_conectare_roa.prg - verifica drumul de initializare CU conectare la Oracle.
* Ruleaza cu datele din settings.ini; daca baza nu e accesibila, testul trebuie sa raporteze
* esecul si sa iasa - NU sa ramana agatat pe un dialog de login (SQLSetProp DispLogin).
*
* vfp9.exe -A -T "Teste\test_conectare_roa.prg"
* Nu face parte din suita implicita: depinde de reteaua/serverul Oracle.
SET SAFETY OFF
SET TALK OFF
PUBLIC gcUILog, gcSyncDir, gnTestFail
gnTestFail = 0
LOCAL lcTestDir, llConectat
lcTestDir = ADDBS(JUSTPATH(SYS(16, 0)))
gcUILog = lcTestDir + 'test_conectare_roa_log.txt'
gcSyncDir = lcTestDir + 'uisync\'
IF !DIRECTORY(gcSyncDir)
MD (gcSyncDir)
ENDIF
STRTOFILE('START ' + TTOC(DATETIME()) + CHR(13) + CHR(10), gcUILog)
* fara dialog de login: headless, un prompt ODBC ar bloca procesul la nesfarsit
SQLSETPROP(0, 'DispLogin', 3)
llConectat = DO_CONECTARE(lcTestDir)
HarnessLog('gnHandle = ' + TRANSFORM(gnHandle))
TestAssert(TYPE('goConn') = 'O', 'goConn instantiat chiar si fara conectare')
TestAssert(TYPE('gnHandle') = 'N', 'gnHandle este numeric')
IF llConectat
TestAssert(gnHandle > 0, 'conectare reusita la ' + ALLTRIM(goApp.oSettings.host))
LOCAL lnSucces
lnSucces = goExecutor.oExecute(GetHash('cSql=>select 1 as unu from dual??cCursor=>cPing'))
TestAssertEqual(1, lnSucces, 'interogare de test executata')
IF USED('cPing')
TestAssertEqual(1, cPing.unu, 'baza a raspuns corect')
USE IN (SELECT('cPing'))
ENDIF
goConn.Disconnect()
TestAssert(goConn.GetHandle() <= 0, 'deconectare reusita')
ELSE
HarnessLog('Conectare esuata (host ' + ALLTRIM(goApp.oSettings.host) + ;
'). Testul a iesit controlat, fara sa ramana agatat.')
TestAssert(gnHandle <= 0, 'esecul de conectare e raportat, nu ascuns')
ENDIF
HarnessLog('REZULTAT: ' + TestRezultat())
DO HarnessDone WITH TestRezultat()
QUIT
FUNCTION DO_CONECTARE
LPARAMETERS tcTestDir
LOCAL llOk
llOk = .F.
DO (tcTestDir + 'test_init_env_auto.prg') WITH .T.
SET PROCEDURE TO (tcTestDir + 'ui_harness.prg') ADDITIVE
SET PROCEDURE TO (tcTestDir + 'mock_amessagebox.prg') ADDITIVE
DO HarnessInit
llOk = (TYPE('gnHandle') = 'N' AND gnHandle > 0)
RETURN llOk
ENDFUNC