- Corrección de Tests y agregado de nuevos UT
This commit is contained in:
139
TESTS/ft__foxbin2prg__c_conversor_bin_a_prg.prg
Normal file
139
TESTS/ft__foxbin2prg__c_conversor_bin_a_prg.prg
Normal file
@@ -0,0 +1,139 @@
|
||||
DEFINE CLASS ft__foxbin2prg__c_conversor_bin_a_prg AS FxuTestCase OF FxuTestCase.prg
|
||||
|
||||
#IF .F.
|
||||
LOCAL THIS AS ft__foxbin2prg__c_conversor_bin_a_prg OF ft__foxbin2prg__c_conversor_bin_a_prg.PRG
|
||||
#ENDIF
|
||||
|
||||
#DEFINE C_FB2P_VALUE_I '<fb2p_value>'
|
||||
#DEFINE C_FB2P_VALUE_F '</fb2p_value>'
|
||||
#DEFINE CR_LF CHR(13) + CHR(10)
|
||||
#DEFINE C_CR CHR(13)
|
||||
#DEFINE C_LF CHR(10)
|
||||
#DEFINE C_TAB CHR(9)
|
||||
#DEFINE C_PROC 'PROCEDURE'
|
||||
#DEFINE C_ENDPROC 'ENDPROC'
|
||||
#DEFINE C_TEXT 'TEXT'
|
||||
#DEFINE C_ENDTEXT 'ENDTEXT'
|
||||
#DEFINE C_IF_F '#IF .F.'
|
||||
#DEFINE C_ENDIF '#ENDIF'
|
||||
#DEFINE C_DEFINE_CLASS 'DEFINE CLASS'
|
||||
#DEFINE C_ENDDEFINE_CLASS 'ENDDEFINE'
|
||||
icObj = NULL
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION SETUP
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
*LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG"
|
||||
*DOEVENTS FORCE
|
||||
SET PROCEDURE TO 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
oFXU_LIB = CREATEOBJECT('CL_FXU_CONFIG')
|
||||
oFXU_LIB.setup_comun()
|
||||
|
||||
*THIS.icObj = NEWOBJECT("c_conversor_base", "FOXBIN2PRG.PRG")
|
||||
*loObj = THIS.icObj
|
||||
*loObj.l_Test = .F.
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION TearDown
|
||||
#IF .F.
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
#ENDIF
|
||||
THIS.icObj = NULL
|
||||
|
||||
IF VARTYPE(oFXU_LIB) = "O"
|
||||
oFXU_LIB.teardown_comun()
|
||||
oFXU_LIB = NULL
|
||||
ENDIF
|
||||
RELEASE PROCEDURE 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
RELEASE oFXU_LIB
|
||||
CLOSE PROCEDURES
|
||||
CLEAR RESOURCES
|
||||
SYS(1104)
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION Evaluate_results
|
||||
LPARAMETERS toEx AS EXCEPTION, tnCodError_Esperado
|
||||
|
||||
#IF .F.
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
#ENDIF
|
||||
LOCAL loObj AS c_conversor_bin_a_prg OF "FOXBIN2PRG.PRG"
|
||||
loObj = THIS.icObj
|
||||
|
||||
IF PCOUNT() = 0
|
||||
THIS.messageout( "* Support method, not a valid test." )
|
||||
RETURN .T.
|
||||
ENDIF
|
||||
|
||||
IF ISNULL(toEx)
|
||||
*-- Visualizaci<63>n de valores
|
||||
THIS.messageout( ' CodError: ' + TRANSFORM(tnCodError_Esperado) )
|
||||
|
||||
|
||||
*-- Evaluaci<63>n de valores
|
||||
*THIS.assertequals( '[' + tcMemo_Esperado + ']', '[' + tcMemo_Salida + ']', "Contenido del Memo de PROCEDURE" )
|
||||
|
||||
ELSE
|
||||
*-- Evaluaci<63>n de errores
|
||||
THIS.messageout( "Error " + TRANSFORM(toEx.ERRORNO) + ', ' + TRANSFORM(toEx.MESSAGE) )
|
||||
THIS.messageout( toEx.PROCEDURE + ', ' + TRANSFORM(toEx.LINENO) )
|
||||
THIS.messageout( TRANSFORM(toEx.LINECONTENTS) )
|
||||
|
||||
THIS.assertequals( tnCodError_Esperado, toEx.ERRORNO, 'Error' )
|
||||
ENDIF
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaLaLibreria_PROCEDURE_IN_LPARAMETERS_VCX_y_NoDevolverErrores
|
||||
LOCAL lnCodError, lnCodError_Esperado ;
|
||||
, lc_File, lc_InputFile, lc_OutputFile, lcParent, lcClass, lcObjName, loReg_Esperado, loReg, lcTipoBinario ;
|
||||
, loModulo AS CL_CLASE OF "FOXBIN2PRG.PRG" ;
|
||||
, loCnv 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
|
||||
loCnv = NEWOBJECT("c_foxbin2prg", "FOXBIN2PRG.PRG")
|
||||
*loCnv.l_Debug = .F.
|
||||
*loCnv.l_ShowErrors = .F.
|
||||
*loCnv.l_Test = .T.
|
||||
|
||||
|
||||
*-- DATOS DE ENTRADA
|
||||
STORE 0 TO lnCodError
|
||||
lc_File = 'PROCEDURE_IN_LPARAMETERS.VCX'
|
||||
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
||||
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
||||
lnCodError_Esperado = 0
|
||||
|
||||
oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File, LEFT( JUSTEXT(lc_File),2 ) + '?' ) )
|
||||
|
||||
loCnv.Ejecutar( lc_OutputFile, '', '', '', '1', '0', '0', '', '', .T. )
|
||||
*loCnv.Ejecutar( FORCEEXT(lc_OutputFile, LEFT( JUSTEXT(lc_File),2 ) + '2' ), '', '', '', '0', '0', '0', '', '', .T. )
|
||||
THIS.Evaluate_results( loEx, lnCodError_Esperado )
|
||||
|
||||
CATCH TO loEx
|
||||
THIS.Evaluate_results( loEx, lnCodError_Esperado )
|
||||
|
||||
FINALLY
|
||||
USE IN (SELECT("ARCHIVOBIN_IN"))
|
||||
USE IN (SELECT("TABLABIN"))
|
||||
STORE NULL TO loModulo, loCnv
|
||||
RELEASE loModulo, loCnv
|
||||
ENDTRY
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
ENDDEFINE
|
||||
129
TESTS/ft__foxbin2prg__c_conversor_prg_a_bin.prg
Normal file
129
TESTS/ft__foxbin2prg__c_conversor_prg_a_bin.prg
Normal file
@@ -0,0 +1,129 @@
|
||||
DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_bin AS FxuTestCase OF FxuTestCase.prg
|
||||
|
||||
#IF .F.
|
||||
LOCAL THIS AS ft__foxbin2prg__c_conversor_prg_a_bin OF ft__foxbin2prg__c_conversor_prg_a_bin.PRG
|
||||
#ENDIF
|
||||
|
||||
#DEFINE CR_LF CHR(13) + CHR(10)
|
||||
#DEFINE C_CR CHR(13)
|
||||
#DEFINE C_LF CHR(10)
|
||||
#DEFINE C_TAB CHR(9)
|
||||
icObj = NULL
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION SETUP
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
*LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG"
|
||||
*DOEVENTS FORCE
|
||||
SET PROCEDURE TO 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
oFXU_LIB = CREATEOBJECT('CL_FXU_CONFIG')
|
||||
oFXU_LIB.setup_comun()
|
||||
|
||||
*THIS.icObj = NEWOBJECT("c_conversor_base", "FOXBIN2PRG.PRG")
|
||||
*loObj = THIS.icObj
|
||||
*loObj.l_Test = .F.
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION TearDown
|
||||
#IF .F.
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
#ENDIF
|
||||
THIS.icObj = NULL
|
||||
|
||||
IF VARTYPE(oFXU_LIB) = "O"
|
||||
oFXU_LIB.teardown_comun()
|
||||
oFXU_LIB = NULL
|
||||
ENDIF
|
||||
RELEASE PROCEDURE 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
RELEASE oFXU_LIB
|
||||
CLOSE PROCEDURES
|
||||
CLEAR RESOURCES
|
||||
SYS(1104)
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION Evaluate_results
|
||||
LPARAMETERS toEx AS EXCEPTION, tnCodError_Esperado
|
||||
|
||||
#IF .F.
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
#ENDIF
|
||||
LOCAL loObj AS c_conversor_bin_a_prg OF "FOXBIN2PRG.PRG"
|
||||
loObj = THIS.icObj
|
||||
|
||||
IF PCOUNT() = 0
|
||||
THIS.messageout( "* Support method, not a valid test." )
|
||||
RETURN .T.
|
||||
ENDIF
|
||||
|
||||
IF ISNULL(toEx)
|
||||
*-- Visualizaci<63>n de valores
|
||||
THIS.messageout( ' CodError: ' + TRANSFORM(tnCodError_Esperado) )
|
||||
|
||||
|
||||
*-- Evaluaci<63>n de valores
|
||||
*THIS.assertequals( '[' + tcMemo_Esperado + ']', '[' + tcMemo_Salida + ']', "Contenido del Memo de PROCEDURE" )
|
||||
|
||||
ELSE
|
||||
*-- Evaluaci<63>n de errores
|
||||
THIS.messageout( "Error " + TRANSFORM(toEx.ERRORNO) + ', ' + TRANSFORM(toEx.MESSAGE) )
|
||||
THIS.messageout( toEx.PROCEDURE + ', ' + TRANSFORM(toEx.LINENO) )
|
||||
THIS.messageout( TRANSFORM(toEx.LINECONTENTS) )
|
||||
|
||||
THIS.assertequals( tnCodError_Esperado, toEx.ERRORNO, 'Error' )
|
||||
ENDIF
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaLaLibreria_PROCEDURE_IN_LPARAMETERS_VC2_y_NoDevolverErrores
|
||||
LOCAL lnCodError, lnCodError_Esperado ;
|
||||
, lc_File, lc_InputFile, lc_OutputFile, lcParent, lcClass, lcObjName, loReg_Esperado, loReg, lcTipoBinario ;
|
||||
, loModulo AS CL_CLASE OF "FOXBIN2PRG.PRG" ;
|
||||
, loCnv 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
|
||||
loCnv = NEWOBJECT("c_foxbin2prg", "FOXBIN2PRG.PRG")
|
||||
*loCnv.l_Debug = .F.
|
||||
*loCnv.l_ShowErrors = .F.
|
||||
*loCnv.l_Test = .T.
|
||||
|
||||
|
||||
*-- DATOS DE ENTRADA
|
||||
STORE 0 TO lnCodError
|
||||
lc_File = 'PROCEDURE_IN_LPARAMETERS.VC2'
|
||||
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
||||
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
||||
lnCodError_Esperado = 0
|
||||
|
||||
oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File, LEFT( JUSTEXT(lc_File),2 ) + '?' ) )
|
||||
|
||||
loCnv.Ejecutar( lc_OutputFile, '', '', '', '1', '0', '0', '', '', .T. )
|
||||
*loCnv.Ejecutar( FORCEEXT(lc_OutputFile, LEFT( JUSTEXT(lc_File),2 ) + '2' ), '', '', '', '0', '0', '0', '', '', .T. )
|
||||
THIS.Evaluate_results( loEx, lnCodError_Esperado )
|
||||
|
||||
CATCH TO loEx
|
||||
THIS.Evaluate_results( loEx, lnCodError_Esperado )
|
||||
|
||||
FINALLY
|
||||
USE IN (SELECT("ARCHIVOBIN_IN"))
|
||||
USE IN (SELECT("TABLABIN"))
|
||||
STORE NULL TO loModulo, loCnv
|
||||
RELEASE loModulo, loCnv
|
||||
ENDTRY
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
ENDDEFINE
|
||||
@@ -0,0 +1,127 @@
|
||||
DEFINE CLASS ut__foxbin2prg__c_conversor_base__get_SeparatedLineAndComment AS FxuTestCase OF FxuTestCase.prg
|
||||
|
||||
#IF .F.
|
||||
LOCAL THIS AS ut__foxbin2prg__c_conversor_base__get_SeparatedLineAndComment OF ut__foxbin2prg__c_conversor_base__get_SeparatedLineAndComment.PRG
|
||||
#ENDIF
|
||||
|
||||
#DEFINE C_FB2P_VALUE_I '<fb2p_value>'
|
||||
#DEFINE C_FB2P_VALUE_F '</fb2p_value>'
|
||||
#DEFINE CR_LF CHR(13) + CHR(10)
|
||||
#DEFINE C_CR CHR(13)
|
||||
#DEFINE C_LF CHR(10)
|
||||
#DEFINE C_TAB CHR(9)
|
||||
#DEFINE C_PROC 'PROCEDURE'
|
||||
#DEFINE C_ENDPROC 'ENDPROC'
|
||||
#DEFINE C_TEXT 'TEXT'
|
||||
#DEFINE C_ENDTEXT 'ENDTEXT'
|
||||
#DEFINE C_IF_F '#IF .F.'
|
||||
#DEFINE C_ENDIF '#ENDIF'
|
||||
#DEFINE C_DEFINE_CLASS 'DEFINE CLASS'
|
||||
#DEFINE C_ENDDEFINE_CLASS 'ENDDEFINE'
|
||||
icObj = NULL
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION SETUP
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG"
|
||||
SET PROCEDURE TO 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
oFXU_LIB = CREATEOBJECT('CL_FXU_CONFIG')
|
||||
oFXU_LIB.setup_comun()
|
||||
|
||||
THIS.icObj = NEWOBJECT("c_conversor_base", "FOXBIN2PRG.PRG")
|
||||
loObj = THIS.icObj
|
||||
loObj.l_Test = .T.
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION TearDown
|
||||
#IF .F.
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
#ENDIF
|
||||
THIS.icObj = NULL
|
||||
|
||||
IF VARTYPE(oFXU_LIB) = "O"
|
||||
oFXU_LIB.teardown_comun()
|
||||
oFXU_LIB = NULL
|
||||
ENDIF
|
||||
RELEASE PROCEDURE 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION Evaluate_results
|
||||
LPARAMETERS toEx AS EXCEPTION, tnCodError_Esperado ;
|
||||
, tcLinea, tcComentario, tcLinea_Esperada, tcComentario_Esperado
|
||||
|
||||
#IF .F.
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
#ENDIF
|
||||
LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG"
|
||||
loObj = THIS.icObj
|
||||
|
||||
IF PCOUNT() = 0
|
||||
THIS.messageout( "* Support method, not a valid test." )
|
||||
RETURN .T.
|
||||
ENDIF
|
||||
|
||||
IF ISNULL(toEx)
|
||||
*-- Algunos ajustes para mejor visualizaci<63>n de caracteres especiales
|
||||
tcLinea = oFXU_LIB.mejorarPresentacionCaracteresEspeciales( tcLinea )
|
||||
tcLinea_Esperada = oFXU_LIB.mejorarPresentacionCaracteresEspeciales( tcLinea_Esperada )
|
||||
tcComentario = oFXU_LIB.mejorarPresentacionCaracteresEspeciales( tcComentario )
|
||||
tcComentario_Esperado = oFXU_LIB.mejorarPresentacionCaracteresEspeciales( tcComentario_Esperado )
|
||||
|
||||
|
||||
*-- Visualizaci<63>n de valores
|
||||
THIS.messageout( ' Linea = [' + TRANSFORM(tcLinea) + ']' )
|
||||
THIS.messageout( ' Comentario = [' + TRANSFORM(tcComentario) + ']' )
|
||||
|
||||
|
||||
*-- Evaluaci<63>n de valores
|
||||
THIS.assertequals( tcLinea_Esperada, tcLinea, "L<>nea de c<>digo" )
|
||||
THIS.assertequals( tcComentario_Esperado, tcComentario, "Comentario" )
|
||||
|
||||
ELSE
|
||||
*-- Evaluaci<63>n de errores
|
||||
THIS.messageout( "Error " + TRANSFORM(toEx.ERRORNO) + ', ' + TRANSFORM(toEx.MESSAGE) )
|
||||
THIS.messageout( toEx.PROCEDURE + ', ' + TRANSFORM(toEx.LINENO) )
|
||||
THIS.messageout( TRANSFORM(toEx.LINECONTENTS) )
|
||||
|
||||
THIS.assertequals( tnCodError_Esperado, toEx.ERRORNO, 'Error' )
|
||||
ENDIF
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION Deberia_DevolverSeparados_LineaDeCodigo_y_Valor
|
||||
LOCAL lnCodError, lcMenError, lnCodError_Esperado ;
|
||||
, lcLinea, lcLineaOriginal, lcComentario, lcLinea_Esperada, lcComentario_Esperado ;
|
||||
, loEx AS EXCEPTION
|
||||
LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG"
|
||||
loObj = THIS.icObj
|
||||
loEx = NULL
|
||||
|
||||
*-- DATOS DE ENTRADA
|
||||
STORE 0 TO lnCodError
|
||||
lcComentario = ' con algunos comentarios '
|
||||
lcLinea = ' esta es una linea de c<>digo '
|
||||
lcLineaOriginal = lcLinea + '&' + '&' + lcComentario
|
||||
|
||||
*-- DATOS ESPERADOS
|
||||
STORE 0 TO lnCodError_Esperado
|
||||
lcLinea_Esperada = lcLinea
|
||||
lcComentario_Esperado = lcComentario
|
||||
|
||||
*-- TEST
|
||||
loObj.get_SeparatedLineAndComment( @lcLineaOriginal, @lcComentario )
|
||||
|
||||
THIS.Evaluate_results( loEx, lnCodError_Esperado, @lcLinea, @lcComentario, @lcLinea_Esperada, @lcComentario_Esperado )
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
ENDDEFINE
|
||||
@@ -0,0 +1,180 @@
|
||||
DEFINE CLASS ut__foxbin2prg__c_conversor_base__lineIsOnlyCommentAndNoMetadata AS FxuTestCase OF FxuTestCase.prg
|
||||
|
||||
#IF .F.
|
||||
LOCAL THIS AS ut__foxbin2prg__c_conversor_base__lineIsOnlyCommentAndNoMetadata OF ut__foxbin2prg__c_conversor_base__lineIsOnlyCommentAndNoMetadata.PRG
|
||||
#ENDIF
|
||||
|
||||
#DEFINE CR_LF CHR(13) + CHR(10)
|
||||
#DEFINE C_CR CHR(13)
|
||||
#DEFINE C_LF CHR(10)
|
||||
#DEFINE C_TAB CHR(9)
|
||||
icObj = NULL
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION SETUP
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG"
|
||||
SET PROCEDURE TO 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
oFXU_LIB = CREATEOBJECT('CL_FXU_CONFIG')
|
||||
oFXU_LIB.setup_comun()
|
||||
|
||||
THIS.icObj = NEWOBJECT("c_conversor_base", "FOXBIN2PRG.PRG")
|
||||
loObj = THIS.icObj
|
||||
loObj.l_Test = .T.
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION TearDown
|
||||
#IF .F.
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
#ENDIF
|
||||
THIS.icObj = NULL
|
||||
|
||||
IF VARTYPE(oFXU_LIB) = "O"
|
||||
oFXU_LIB.teardown_comun()
|
||||
oFXU_LIB = NULL
|
||||
ENDIF
|
||||
RELEASE PROCEDURE 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION Evaluate_results
|
||||
LPARAMETERS toEx AS EXCEPTION, tnCodError_Esperado ;
|
||||
, tcLinea, tcComentario, tlRetorno, tcLinea_Esperada, tcComentario_Esperado, tlRetorno_Esperado
|
||||
|
||||
#IF .F.
|
||||
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
|
||||
#ENDIF
|
||||
LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG"
|
||||
loObj = THIS.icObj
|
||||
|
||||
IF PCOUNT() = 0
|
||||
THIS.messageout( "* Support method, not a valid test." )
|
||||
RETURN .T.
|
||||
ENDIF
|
||||
|
||||
IF ISNULL(toEx)
|
||||
*-- Algunos ajustes para mejor visualizaci<63>n de caracteres especiales
|
||||
tcLinea = oFXU_LIB.mejorarPresentacionCaracteresEspeciales( tcLinea )
|
||||
tcLinea_Esperada = oFXU_LIB.mejorarPresentacionCaracteresEspeciales( tcLinea_Esperada )
|
||||
tcComentario = oFXU_LIB.mejorarPresentacionCaracteresEspeciales( tcComentario )
|
||||
tcComentario_Esperado = oFXU_LIB.mejorarPresentacionCaracteresEspeciales( tcComentario_Esperado )
|
||||
|
||||
|
||||
*-- Visualizaci<63>n de valores
|
||||
THIS.messageout( ' Linea = [' + TRANSFORM(tcLinea) + ']' )
|
||||
THIS.messageout( ' Comentario = [' + TRANSFORM(tcComentario) + ']' )
|
||||
THIS.messageout( ' tlRetorno = [' + TRANSFORM(tlRetorno) + ']' )
|
||||
|
||||
|
||||
*-- Evaluaci<63>n de valores
|
||||
THIS.assertequals( tcLinea_Esperada, tcLinea, "L<>nea de c<>digo" )
|
||||
THIS.assertequals( tcComentario_Esperado, tcComentario, "Comentario" )
|
||||
THIS.assertequals( tlRetorno_Esperado, tlRetorno, "Retorno" )
|
||||
|
||||
ELSE
|
||||
*-- Evaluaci<63>n de errores
|
||||
THIS.messageout( "Error " + TRANSFORM(toEx.ERRORNO) + ', ' + TRANSFORM(toEx.MESSAGE) )
|
||||
THIS.messageout( toEx.PROCEDURE + ', ' + TRANSFORM(toEx.LINENO) )
|
||||
THIS.messageout( TRANSFORM(toEx.LINECONTENTS) )
|
||||
|
||||
THIS.assertequals( tnCodError_Esperado, toEx.ERRORNO, 'Error' )
|
||||
ENDIF
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION Deberia_DevolverSeparados_LineaDeCodigo_y_Valor_y_Retornar_False
|
||||
LOCAL lnCodError, lcMenError, lnCodError_Esperado ;
|
||||
, lcLinea, lcLineaOriginal, lcComentario, lcLinea_Esperada, lcComentario_Esperado, llRetorno, llRetorno_Esperado ;
|
||||
, loEx AS EXCEPTION
|
||||
LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG"
|
||||
loObj = THIS.icObj
|
||||
loEx = NULL
|
||||
|
||||
*-- DATOS DE ENTRADA
|
||||
STORE 0 TO lnCodError
|
||||
lcComentario = ' con algunos comentarios '
|
||||
lcLinea = ' esta es una linea de c<>digo '
|
||||
lcLineaOriginal = lcLinea + '&' + '&' + lcComentario
|
||||
|
||||
*-- DATOS ESPERADOS
|
||||
STORE 0 TO lnCodError_Esperado
|
||||
lcLinea_Esperada = lcLinea
|
||||
lcComentario_Esperado = lcComentario
|
||||
llRetorno_Esperado = .F.
|
||||
|
||||
*-- TEST
|
||||
llRetorno = loObj.lineIsOnlyCommentAndNoMetadata( @lcLineaOriginal, @lcComentario )
|
||||
|
||||
THIS.Evaluate_results( loEx, lnCodError_Esperado, @lcLinea, @lcComentario, @llRetorno, @lcLinea_Esperada, @lcComentario_Esperado, @llRetorno_Esperado )
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION Deberia_DevolverSeparados_LineaDeTAG_y_Valor_y_Retornar_False
|
||||
LOCAL lnCodError, lcMenError, lnCodError_Esperado ;
|
||||
, lcLinea, lcLineaOriginal, lcComentario, lcLinea_Esperada, lcComentario_Esperado, llRetorno, llRetorno_Esperado ;
|
||||
, loEx AS EXCEPTION
|
||||
LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG"
|
||||
loObj = THIS.icObj
|
||||
loEx = NULL
|
||||
|
||||
*-- DATOS DE ENTRADA
|
||||
STORE 0 TO lnCodError
|
||||
lcComentario = ' con algunos comentarios '
|
||||
lcLinea = ' *<TAG> esta es una linea de c<>digo '
|
||||
lcLineaOriginal = lcLinea + '&' + '&' + lcComentario
|
||||
lcLineaOriginal = LTRIM( lcLineaOriginal, 0, CHR(9), ' ' )
|
||||
|
||||
*-- DATOS ESPERADOS
|
||||
STORE 0 TO lnCodError_Esperado
|
||||
lcLinea_Esperada = ALLTRIM( lcLinea, 0, CHR(9), ' ' )
|
||||
lcComentario_Esperado = lcLinea_Esperada
|
||||
llRetorno_Esperado = .F.
|
||||
|
||||
*-- TEST
|
||||
llRetorno = loObj.lineIsOnlyCommentAndNoMetadata( @lcLineaOriginal, @lcComentario )
|
||||
|
||||
THIS.Evaluate_results( loEx, lnCodError_Esperado, @lcLineaOriginal, @lcComentario, @llRetorno, @lcLinea_Esperada, @lcComentario_Esperado, @llRetorno_Esperado )
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
*******************************************************************************************************************************************
|
||||
FUNCTION Deberia_DevolverSeparados_LineaDeCodigo_y_Valor_y_Retornar_True
|
||||
LOCAL lnCodError, lcMenError, lnCodError_Esperado ;
|
||||
, lcLinea, lcLineaOriginal, lcComentario, lcLinea_Esperada, lcComentario_Esperado, llRetorno, llRetorno_Esperado ;
|
||||
, loEx AS EXCEPTION
|
||||
LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG"
|
||||
loObj = THIS.icObj
|
||||
loEx = NULL
|
||||
|
||||
*-- DATOS DE ENTRADA
|
||||
STORE 0 TO lnCodError
|
||||
lcComentario = ' con algunos comentarios '
|
||||
lcLinea = ' * esta es una linea de c<>digo '
|
||||
lcLineaOriginal = lcLinea + '&' + '&' + lcComentario
|
||||
lcLineaOriginal = LTRIM(lcLineaOriginal, 0, CHR(9), ' ')
|
||||
|
||||
*-- DATOS ESPERADOS
|
||||
STORE 0 TO lnCodError_Esperado
|
||||
lcLinea_Esperada = lcLinea
|
||||
lcComentario_Esperado = LTRIM(lcComentario)
|
||||
llRetorno_Esperado = .T.
|
||||
|
||||
*-- TEST
|
||||
llRetorno = loObj.lineIsOnlyCommentAndNoMetadata( @lcLineaOriginal, @lcComentario )
|
||||
|
||||
THIS.Evaluate_results( loEx, lnCodError_Esperado, @lcLinea, @lcComentario, @llRetorno, @lcLinea_Esperada, @lcComentario_Esperado, @llRetorno_Esperado )
|
||||
|
||||
ENDFUNC
|
||||
|
||||
|
||||
ENDDEFINE
|
||||
@@ -87,7 +87,7 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O
|
||||
THIS.messageout( 'l_Recompile: ' + TRANSFORM(loFB2P_Esperado.l_Recompile) )
|
||||
THIS.messageout( 'l_NoTimestamps: ' + TRANSFORM(loFB2P_Esperado.l_NoTimestamps) )
|
||||
THIS.messageout( 'l_ClearUniqueID: ' + TRANSFORM(loFB2P_Esperado.l_ClearUniqueID) )
|
||||
THIS.messageout( 'l_Debug: ' + TRANSFORM(loFB2P_Esperado.l_Debug) )
|
||||
THIS.messageout( 'n_Debug: ' + TRANSFORM(loFB2P_Esperado.n_Debug) )
|
||||
THIS.messageout( 'n_ExtraBackupLevels: ' + TRANSFORM(loFB2P_Esperado.n_ExtraBackupLevels) )
|
||||
THIS.messageout( 'l_OptimizeByFilestamp: ' + TRANSFORM(loFB2P_Esperado.l_OptimizeByFilestamp) )
|
||||
|
||||
@@ -105,7 +105,7 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O
|
||||
THIS.assertequals( TRANSFORM(loFB2P_Esperado.l_Recompile), TRANSFORM(loFB2P.l_Recompile), '> l_Recompile' )
|
||||
THIS.assertequals( TRANSFORM(loFB2P_Esperado.l_NoTimestamps), TRANSFORM(loFB2P.l_NoTimestamps), '> l_NoTimestamps' )
|
||||
THIS.assertequals( TRANSFORM(loFB2P_Esperado.l_ClearUniqueID), TRANSFORM(loFB2P.l_ClearUniqueID), '> l_ClearUniqueID' )
|
||||
THIS.assertequals( TRANSFORM(loFB2P_Esperado.l_Debug), TRANSFORM(loFB2P.l_Debug), '> l_Debug' )
|
||||
THIS.assertequals( TRANSFORM(loFB2P_Esperado.n_Debug), TRANSFORM(loFB2P.n_Debug), '> n_Debug' )
|
||||
THIS.assertequals( TRANSFORM(loFB2P_Esperado.n_ExtraBackupLevels), TRANSFORM(loFB2P.n_ExtraBackupLevels), '> n_ExtraBackupLevels' )
|
||||
THIS.assertequals( TRANSFORM(loFB2P_Esperado.l_OptimizeByFilestamp), TRANSFORM(loFB2P.l_OptimizeByFilestamp), '> l_OptimizeByFilestamp' )
|
||||
|
||||
@@ -173,7 +173,7 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_Recompile', .T. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_NoTimestamps', .T. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_ClearUniqueID', .T. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_Debug', .F. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'n_Debug', 0 )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'n_ExtraBackupLevels', 1 )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_OptimizeByFilestamp', .F. )
|
||||
*STRTOFILE('', 'TESTS\DATOS_TEST\foxbin2prg.cfg')
|
||||
@@ -226,7 +226,7 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_Recompile', .T. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_NoTimestamps', .F. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_ClearUniqueID', .F. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_Debug', .F. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'n_Debug', 0 )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'n_ExtraBackupLevels', 0 )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_OptimizeByFilestamp', .F. )
|
||||
*--
|
||||
@@ -296,7 +296,7 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_Recompile', .T. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_NoTimestamps', .T. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_ClearUniqueID', .T. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_Debug', .T. )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'n_Debug', 1 )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'n_ExtraBackupLevels', 1 )
|
||||
ADDPROPERTY( loFB2P_Esperado, 'l_OptimizeByFilestamp', .T. )
|
||||
*--
|
||||
@@ -661,13 +661,13 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O
|
||||
|
||||
*-- DATOS DE ENTRADA
|
||||
STORE 0 TO lnCodError
|
||||
lcSeteo = 'l_Debug'
|
||||
leValorEsperado = .F.
|
||||
lcSeteo = 'n_Debug'
|
||||
leValorEsperado = 0
|
||||
|
||||
|
||||
*-- TEST
|
||||
loFB2P.EvaluarConfiguracion()
|
||||
leValor = loFB2P.l_Debug
|
||||
leValor = loFB2P.n_Debug
|
||||
|
||||
|
||||
CATCH TO loEx
|
||||
@@ -699,13 +699,13 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O
|
||||
|
||||
*-- DATOS DE ENTRADA
|
||||
STORE 0 TO lnCodError
|
||||
lcSeteo = 'l_Debug'
|
||||
leValorEsperado = .F.
|
||||
lcSeteo = 'n_Debug'
|
||||
leValorEsperado = 0
|
||||
|
||||
|
||||
*-- TEST
|
||||
loFB2P.EvaluarConfiguracion()
|
||||
leValor = loFB2P.l_Debug
|
||||
leValor = loFB2P.n_Debug
|
||||
|
||||
|
||||
CATCH TO loEx
|
||||
@@ -737,13 +737,13 @@ DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase O
|
||||
|
||||
*-- DATOS DE ENTRADA
|
||||
STORE 0 TO lnCodError
|
||||
lcSeteo = 'l_Debug'
|
||||
leValorEsperado = .T.
|
||||
lcSeteo = 'n_Debug'
|
||||
leValorEsperado = 1
|
||||
|
||||
|
||||
*-- TEST
|
||||
loFB2P.EvaluarConfiguracion()
|
||||
leValor = loFB2P.l_Debug
|
||||
leValor = loFB2P.n_Debug
|
||||
|
||||
|
||||
CATCH TO loEx
|
||||
|
||||
BIN
foxbin2prg.exe
BIN
foxbin2prg.exe
Binary file not shown.
@@ -5113,8 +5113,7 @@ DEFINE CLASS C_CONVERSOR_BASE AS SESSION
|
||||
ln_AT_Cmt = AT( '&'+'&', tcLine)
|
||||
|
||||
IF ln_AT_Cmt > 0
|
||||
*tcComment = LTRIM( SUBSTR( tcLine, ln_AT_Cmt + 2 ) )
|
||||
tcComment = SUBSTR( tcLine, ln_AT_Cmt + 2 )
|
||||
tcComment = LTRIM( SUBSTR( tcLine, ln_AT_Cmt + 2 ) )
|
||||
tcLine = RTRIM( LEFT( tcLine, ln_AT_Cmt - 1 ), 0, CHR(9), ' ' ) && Quito TABS y espacios de la derecha de la l<>nea de c<>digo
|
||||
ENDIF
|
||||
|
||||
@@ -5340,11 +5339,10 @@ DEFINE CLASS C_CONVERSOR_BASE AS SESSION
|
||||
* NOTA: Recordar que esta funci<63>n suele usarse junto a Set_Line(), que quita TABS y espacios a la izquierda.
|
||||
*---------------------------------------------------------------------------------------------------
|
||||
LPARAMETERS tcLine, tcComment
|
||||
LOCAL lllineIsOnlyCommentAndNoMetadata, ln_AT_Cmt, lcStr
|
||||
LOCAL lllineIsOnlyCommentAndNoMetadata, ln_AT_Cmt
|
||||
|
||||
WITH THIS AS C_CONVERSOR_BASE OF 'FOXBIN2PRG.PRG'
|
||||
.get_SeparatedLineAndComment( @tcLine, @tcComment )
|
||||
*lcStr = LTRIM( tcLine, 0, CHR(9), ' ' )
|
||||
|
||||
DO CASE
|
||||
CASE LEFT(tcLine,2) == '*<'
|
||||
@@ -5356,7 +5354,7 @@ DEFINE CLASS C_CONVERSOR_BASE AS SESSION
|
||||
ENDCASE
|
||||
ENDWITH
|
||||
|
||||
RELEASE tcLine, tcComment, ln_AT_Cmt, lcStr
|
||||
RELEASE tcLine, tcComment, ln_AT_Cmt
|
||||
RETURN lllineIsOnlyCommentAndNoMetadata
|
||||
ENDPROC
|
||||
|
||||
@@ -15333,8 +15331,7 @@ DEFINE CLASS CL_CUS_BASE AS CUSTOM
|
||||
ln_AT_Cmt = AT( '&'+'&', tcLine)
|
||||
|
||||
IF ln_AT_Cmt > 0
|
||||
*tcComment = LTRIM( SUBSTR( tcLine, ln_AT_Cmt + 2 ) )
|
||||
tcComment = SUBSTR( tcLine, ln_AT_Cmt + 2 )
|
||||
tcComment = LTRIM( SUBSTR( tcLine, ln_AT_Cmt + 2 ) )
|
||||
tcLine = RTRIM( LEFT( tcLine, ln_AT_Cmt - 1 ), 0, CHR(9), ' ' ) && Quito TABS y espacios de la derecha de la l<>nea de c<>digo
|
||||
ENDIF
|
||||
|
||||
@@ -15421,8 +15418,7 @@ DEFINE CLASS CL_COL_BASE AS COLLECTION
|
||||
ln_AT_Cmt = AT( '&'+'&', tcLine)
|
||||
|
||||
IF ln_AT_Cmt > 0
|
||||
*tcComment = LTRIM( SUBSTR( tcLine, ln_AT_Cmt + 2 ) )
|
||||
tcComment = SUBSTR( tcLine, ln_AT_Cmt + 2 )
|
||||
tcComment = LTRIM( SUBSTR( tcLine, ln_AT_Cmt + 2 ) )
|
||||
tcLine = RTRIM( LEFT( tcLine, ln_AT_Cmt - 1 ), 0, CHR(9), ' ' ) && Quito TABS y espacios de la derecha de la l<>nea de c<>digo
|
||||
ENDIF
|
||||
|
||||
|
||||
Reference in New Issue
Block a user