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:
63
Teste/test_conectare_roa.prg
Normal file
63
Teste/test_conectare_roa.prg
Normal 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
|
||||
Reference in New Issue
Block a user