From 9b4d517038685c2a176d2206e4ab5f2263760b61 Mon Sep 17 00:00:00 2001 From: fdbozzo Date: Fri, 3 Apr 2015 01:30:48 +0200 Subject: [PATCH] Preview 13 - Arreglos para herencia de CFGs por directorio y UTs asociados --- FoxBin2PRGVersionFile.txt | 4 +- ...rg__c_foxbin2prg__EvaluarConfiguracion.prg | 50 ++++++++++++++++-- foxbin2prg.exe | Bin 563746 -> 563749 bytes foxbin2prg.prg | 16 +++--- 4 files changed, 57 insertions(+), 13 deletions(-) diff --git a/FoxBin2PRGVersionFile.txt b/FoxBin2PRGVersionFile.txt index a0ab304..14c955b 100644 --- a/FoxBin2PRGVersionFile.txt +++ b/FoxBin2PRGVersionFile.txt @@ -3,7 +3,7 @@ Lparameters toUpdateInfo Local lcNote With toUpdateInfo .VersionNumber = 'v1.19.42' - .VersionDate = Date(2015,03,26) + .VersionDate = Date(2015,04,03) .SourceFileUrl = 'http://vfpxrepository.com/dl/thorupdate/Projects/FoxBin2Prg/FoxBin2Prg.Zip' .Link = 'http://vfpx.codeplex.com/wikipage?title=FoxBin2PRG' @@ -17,7 +17,7 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg Change History ------------------------------------------------------------- -2015/03/26 v1.19.42 +2015/04/03 v1.19.42 - Feature: Added VFP 9 SP1 runtime validation - Bug Fix: Broken SourceSafe compatibility because an error is thrown when querying for file support (Tuvia Vinitsky) - Bug Fix scx/vcx: Process only one TEXT/ENDTEXT nesting level because TEXT/ENDTEXT can't be nested (Lutz Scheffler) diff --git a/TESTS/ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion.prg b/TESTS/ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion.prg index 3aea210..e8ae7fc 100644 --- a/TESTS/ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion.prg +++ b/TESTS/ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion.prg @@ -1845,6 +1845,49 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O ENDFUNC + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_DBF_Como_2_CuandoExistaElArhivo_foxbin2prg_cfg_EnDirectorio2NivelesInferior + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + loFB2P.c_Foxbin2prg_ConfigFile = FULLPATH( 'foxbin2prg.cfg', ADDBS(oFXU_LIB.cPathDatosTest) + '..\' ) + STRTOFILE( 'DBF_Conversion_Support:2', loFB2P.c_Foxbin2prg_ConfigFile ) + + loFB2P.c_InputFile = ADDBS(oFXU_LIB.cPathDatosTest) + 'OTRO\otro.vcx' + + + *-- VALORES ESPERADOS + lcSeteo = 'DBF_Conversion_Support:' + leValorEsperado = 2 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.DBF_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + ERASE (loFB2P.c_Foxbin2prg_ConfigFile) + + ENDTRY + + ENDFUNC + + ******************************************************************************************************************************************* FUNCTION Deberia_SetearElSoporte_DBF_Como_2_CuandoExistaElArhivo_foxbin2prg_cfg_EnDirectorioPadre LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; @@ -2561,7 +2604,7 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O loFB2P.c_Foxbin2prg_ConfigFile = FORCEPATH( 'foxbin2prg.cfg', ADDBS(oFXU_LIB.cPathDatosTest) + 'noexiste' ) loFB2P.c_InputFile = FORCEPATH( 'test.vcx', oFXU_LIB.cPathDatosTest ) lcCFG_File = FORCEPATH( 'foxbin2prg.cfg', oFXU_LIB.cPathDatosTest ) - STRTOFILE( 'LBX_Conversion_Support: 1', lcCFG_File ) + *STRTOFILE( 'LBX_Conversion_Support: 0', lcCFG_File ) *-- DATOS DE ENTRADA @@ -2574,7 +2617,8 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O *-- TEST - loFB2P.EvaluarConfiguracion() && Carga config.Principal + *loFB2P.EvaluarConfiguracion() && Carga config.Principal + loFB2P.LBX_Conversion_Support = 0 loFB2P.EvaluarConfiguracion() && Carga config.secundaria laCFG_CachedAccess(1) = loFB2P.get_l_CFG_CachedAccess() @@ -2582,7 +2626,7 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O loFB2P.EvaluarConfiguracion() && Carga config.secundaria laCFG_CachedAccess(2) = loFB2P.get_l_CFG_CachedAccess() - loFB2P.LBX_Conversion_Support = 0 + *loFB2P.LBX_Conversion_Support = 0 loFB2P.c_InputFile = FORCEPATH( 'test.vcx', ADDBS(oFXU_LIB.cPathDatosTest) + 'otro' ) loFB2P.EvaluarConfiguracion() && Carga config.secundaria laCFG_CachedAccess(3) = loFB2P.get_l_CFG_CachedAccess() diff --git a/foxbin2prg.exe b/foxbin2prg.exe index dbf9bedb1b5ed620fe805ecd85bceac7d6618cbf..ade804f967fde64bacf771f9136ea3cf3e78c43e 100644 GIT binary patch delta 15224 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 0 THEN - .l_CFG_CachedAccess = .T. - ENDIF + .l_CFG_CachedAccess = .F. + .n_CFG_Actual = 0 ENDIF ENDIF ENDIF @@ -1648,19 +1647,20 @@ DEFINE CLASS c_foxbin2prg AS SESSION CASE ISNULL( .o_Configuration( .n_CFG_Actual ) ) *-- Si existe una configuración y es NULL, se usa la predeterminada - .n_CFG_Actual = 0 + *.n_CFG_Actual = 0 lo_CFG = THIS ENDCASE IF .l_Main_CFG_Loaded - IF .l_CFG_CachedAccess THEN + IF .l_CFG_CachedAccess AND .n_CFG_Actual > 0 THEN toParentCFG = lo_CFG .writeLog( '> ' + UPPER(loLang.C_USING_THIS_SETTINGS_LOC) + ': ' + tc_InputFile + ' => (' + lo_CFG.c_Foxbin2prg_ConfigFile + ')' ) .writeLog() ELSE lo_CFG = CREATEOBJECT('CL_CFG') lo_Configuration.Add( lo_CFG, lc_CFG_Path ) + .n_CFG_Actual = lo_Configuration.Count IF NOT ISNULL(toParentCFG) lo_CFG.CopyFrom(toParentCFG) @@ -1670,6 +1670,7 @@ DEFINE CLASS c_foxbin2prg AS SESSION ELSE lo_Configuration.Add( NULL, lc_CFG_Path ) && La NULL se carga solo cuando no hay Main_CFG_loaded todavía. + .n_CFG_Actual = lo_Configuration.Count ENDIF *-- NOTA: SOLO LOS QUE NO VENGAN DE PARÁMETROS EXTERNOS DEBEN ASIGNARSE A lo_CFG AQUÍ. @@ -1678,7 +1679,6 @@ DEFINE CLASS c_foxbin2prg AS SESSION .writeLog( '> ' + loLang.C_READING_CFG_VALUES_FROM_DISK_LOC + ':' ) .writeLog( C_TAB + loLang.C_CONFIGFILE_LOC + ' ' + lcConfigFile ) - .n_CFG_Actual = lo_Configuration.Count lo_CFG.c_Foxbin2prg_ConfigFile = lcConfigFile FOR I = 1 TO ALINES( laConfig, FILETOSTR( lcConfigFile ), 1+4 ) @@ -1917,8 +1917,8 @@ DEFINE CLASS c_foxbin2prg AS SESSION .writeLog( '> ' + UPPER(loLang.C_USING_THIS_SETTINGS_LOC) + ':' ) .writeLog( C_TAB + 'n_CFG_Actual: ' + TRANSFORM(.n_CFG_Actual) + ICASE(.n_CFG_Actual=1, ' [MASTER]', ' [SECONDARY]') ) .writeLog( C_TAB + 'l_CFG_CachedAccess: ' + TRANSFORM(.l_CFG_CachedAccess) ) - .writeLog( C_TAB + 'c_Foxbin2prg_ConfigFile: ' + TRANSFORM(EVL(lo_CFG.c_Foxbin2prg_ConfigFile, '(Internal defaults)') ) ) .writeLog( C_TAB + 'tc_InputFile: ' + TRANSFORM(EVL(tc_InputFile,'') ) ) + .writeLog( C_TAB + 'c_Foxbin2prg_ConfigFile: ' + TRANSFORM(EVL(lo_CFG.c_Foxbin2prg_ConfigFile, '(Internal defaults)') ) ) .writeLog( C_TAB + 'n_ShowProgressbar: ' + TRANSFORM(.n_ShowProgressbar) ) .writeLog( C_TAB + 'l_ShowErrors: ' + TRANSFORM(.l_ShowErrors) ) .writeLog( C_TAB + 'l_Recompile: ' + TRANSFORM(.l_Recompile) + ' (' + tcRecompile + ')' )