Changeset: 251 fdbozzo - 17/05/2014 15:35:23:

- Agregado Unit Testing para comprobar generación de clases, forms, reportes y menús
- Agregado nuevo switch OptimizeByFilestamp que permite desactivar la optimización de regeneración de archivos según el timestamp
This commit is contained in:
fdbozzo
2014-05-17 18:42:55 +02:00
parent c8dec7dd4e
commit d0810cba2e
18 changed files with 488 additions and 5 deletions

View File

@@ -0,0 +1,33 @@
*--------------------------------------------------------------------------------------------------------------------------------------------------------
* (ES) AUTOGENERADO - <20><>ATENCI<43>N!! - <20><>NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!!
* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!!
*--------------------------------------------------------------------------------------------------------------------------------------------------------
*< FOXBIN2PRG: Version="1.19" SourceFile="menu_comments_procedure.mnx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries)
*
*<MenuType>1</MenuType>
*<MenuLocation>REPLACE</MenuLocation>
*<MenuCode>
DEFINE MENU _MSYSMENU BAR
DEFINE PAD _40O0YW62F OF _MSYSMENU PROMPT "A first Entry" COLOR SCHEME 3
ON PAD _40O0YW62F OF _MSYSMENU ACTIVATE POPUP AfirstEntr
*----------------------------------
DEFINE POPUP AfirstEntr MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF AfirstEntr PROMPT "Item 1" ;
KEY ALT+1, "ALT+1" && Do something depending on App version
ON SELECTION BAR 1 OF AfirstEntr iif(oApp.Version()=="v1.0",oApp.Run(1), oApp.Run(2))
DEFINE BAR 2 OF AfirstEntr PROMPT "Hide Errors" && Setup some very effective error handling
ON SELECTION BAR 2 OF AfirstEntr DO BAR_2_OF_AfirstEntr_FB2P
DEFINE PAD _40O0YW62G OF _MSYSMENU PROMPT "E\<dit" COLOR SCHEME 3 ;
KEY ALT+D, "ALT+D" ;
SKIP FOR oApp.Database() == "Production" && Don't show this option when rendering menu item on production
ON PAD _40O0YW62G OF _MSYSMENU ACTIVATE POPUP Edit
*----------------------------------
DEFINE POPUP Edit MARGIN RELATIVE SHADOW COLOR SCHEME 4
*</MenuCode>

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,38 @@
*--------------------------------------------------------------------------------------------------------------------------------------------------------
* (ES) AUTOGENERADO - <20><>ATENCI<43>N!! - <20><>NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!!
* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!!
*--------------------------------------------------------------------------------------------------------------------------------------------------------
*< FOXBIN2PRG: Version="1.19" SourceFile="menu_linebreak.mnx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries)
*
*<MenuType>1</MenuType>
*<MenuLocation>REPLACE</MenuLocation>
*<MenuCode>
DEFINE MENU _MSYSMENU BAR
DEFINE PAD _40O0YW62F OF _MSYSMENU PROMPT "A first Entry" COLOR SCHEME 3
ON PAD _40O0YW62F OF _MSYSMENU ACTIVATE POPUP AfirstEntr
*----------------------------------
DEFINE POPUP AfirstEntr MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF AfirstEntr PROMPT "Item 1" ;
KEY ALT+1, "ALT+1" && Do something depending on App version
ON SELECTION BAR 1 OF AfirstEntr iif(oApp.Version()=="v1.0",oApp.Run(1), oApp.Run(2))
DEFINE BAR 2 OF AfirstEntr PROMPT "Hide Errors"
ON SELECTION BAR 2 OF AfirstEntr DO BAR_2_OF_AfirstEntr_FB2P
DEFINE PAD _40O0YW62G OF _MSYSMENU PROMPT "E\<dit" COLOR SCHEME 3 ;
KEY ALT+D, "ALT+D" ;
SKIP FOR oApp.Database() == "Production" && Don't show this option when rendering menu item on production
ON PAD _40O0YW62G OF _MSYSMENU ACTIVATE POPUP Edit
*----------------------------------
DEFINE POPUP Edit MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE PAD _40O101BHZ OF _MSYSMENU PROMPT "Skip For" COLOR SCHEME 3 ;
SKIP FOR iif(type("oMenu")=="O",oMenu.GetAccess(),.t.) && This comment line has<CR>a line break in it
ON SELECTION PAD _40O101BHZ OF _MSYSMENU messageb("Hello!")
*</MenuCode>

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,161 @@
*--------------------------------------------------------------------------------------------------------------------------------------------------------
* (ES) AUTOGENERADO - <20><>ATENCI<43>N!! - <20><>NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!!
* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!!
*--------------------------------------------------------------------------------------------------------------------------------------------------------
*< FOXBIN2PRG: Version="1.19" SourceFile="test_public_protected.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries)
*
*
DEFINE CLASS cmdbutton1 AS commandbutton
*< CLASSDATA: Baseclass="commandbutton" Timestamp="" Scale="Pixels" Uniqueid="" />
*<DefinedPropArrayMethod>
*p: invalue
*</DefinedPropArrayMethod>
Caption = "Command1"
Height = 27
invalue = Default Value
Name = "cmdbutton1"
Width = 84
ENDDEFINE
DEFINE CLASS cmdsubbutton AS cmdbutton1 OF "test_public_protected.vcx"
*< CLASSDATA: Baseclass="commandbutton" Timestamp="" Scale="Pixels" Uniqueid="" />
PROTECTED invalue
invalue = New Value
Name = "cmdsubbutton"
ENDDEFINE
DEFINE CLASS frmform1 AS form
*< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" />
*-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder
*< OBJECTDATA: ObjPath="txtAddedThisThird" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="Cmdbutton11" UniqueID="" Timestamp="" />
*<DefinedPropArrayMethod>
*m: canprocess
*m: initobjects
*m: processaction
*m: processactionpart1
*m: processactionpart2
*</DefinedPropArrayMethod>
Caption = "Form"
DoCreate = .T.
Name = "frmform1"
ADD OBJECT 'Cmdbutton11' AS cmdsubbutton WITH ;
Height = 36, ;
Left = 60, ;
Name = "Cmdbutton11", ;
Top = 144, ;
Width = 120
*< END OBJECT: ClassLib="test_public_protected.vcx" BaseClass="commandbutton" />
ADD OBJECT 'Command1' AS commandbutton WITH ;
Caption = "This button was added second", ;
DefHeight = , ;
DefLeft = , ;
Height = (25), ;
Left = (this.Height), ;
Name = "Command1", ;
Top = 48, ;
Width = 192
*< END OBJECT: BaseClass="commandbutton" />
ADD OBJECT 'Label1' AS label WITH ;
Caption = "This label was added first", ;
Height = 18, ;
Left = 24, ;
Name = "Label1", ;
Top = 12, ;
Width = 144
*< END OBJECT: BaseClass="label" />
ADD OBJECT 'txtAddedThisThird' AS textbox WITH ;
Height = 25, ;
Left = 24, ;
Name = "txtAddedThisThird", ;
Top = 96, ;
Width = 180
*< END OBJECT: BaseClass="textbox" />
PROTECTED PROCEDURE canprocess
ENDPROC
PROCEDURE Init
*
* Init the form!
*
thisform.Caption = "Hello world!"
ENDPROC
PROTECTED PROCEDURE initobjects
*
* Initialize some objects here
*
ENDPROC
PROCEDURE processaction
*
* ProcessActions again, all public
*
* TODO
ENDPROC
PROTECTED PROCEDURE processactionpart1
*
* Part 1, do some stuff
*
SELECT 0
ENDPROC
PROTECTED PROCEDURE processactionpart2
ENDPROC
ENDDEFINE
DEFINE CLASS frmform2 AS form
*< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" />
*-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder
*< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" />
*<DefinedPropArrayMethod>
*m: privatemethod && A private method
*m: protectedmethod && A protected method
*m: publicmethod && Regular public method
*</DefinedPropArrayMethod>
Caption = "Form"
DoCreate = .T.
Name = "frmform2"
ADD OBJECT 'Label1' AS label WITH ;
Caption = "Added this control first", ;
Height = 25, ;
Left = 36, ;
Name = "Label1", ;
Top = 24, ;
Width = 205
*< END OBJECT: BaseClass="label" />
HIDDEN PROCEDURE privatemethod && A private method
* Private method
ENDPROC
PROTECTED PROCEDURE protectedmethod && A protected method
* Protected method
ENDPROC
PROCEDURE publicmethod && Regular public method
* Pub method
ENDPROC
ENDDEFINE

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,102 @@
*--------------------------------------------------------------------------------------------------------------------------------------------------------
* (ES) AUTOGENERADO - <20><>ATENCI<43>N!! - <20><>NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!!
* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!!
*--------------------------------------------------------------------------------------------------------------------------------------------------------
*< FOXBIN2PRG: Version="1.19" SourceFile="test_report.frx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries)
*
<Reportes
platform="WINDOWS " uniqueid="" timestamp="0" objtype="1" objcode="53" name="" vpos="1.000" hpos="0.000" height="0.000" width="-1.000" order="" unique=".F." environ=".F." boxchar=" " fillchar=" " pengreen="0" penblue="0" fillred="0" fillgreen="0" fillblue="0" pensize="0" penpat="0" fillpat="0" fontface="Courier New" fontstyle="0" fontsize="10" mode="0" ruler="1" rulerlines="0" grid=".T." gridv="12" gridh="12" float=".F." stretch=".F." stretchtop=".F." top=".F." bottom=".F." suptype="0" suprest="0" norepeat=".F." resetrpt="0" pagebreak=".F." colbreak=".F." resetpage=".F." general="0" spacing="0" double=".T." swapheader=".F." swapfooter=".F." ejectbefor=".F." ejectafter=".F." plain=".F." summary=".F." addalias=".T." offset="0" topmargin="0" botmargin="0" totaltype="0" resettotal="0" resoid="1" curpos=".F." supalways=".F." supovflow=".F." suprpcol="0" supgroup="0" supvalchng=".F."
<picture><![CDATA[]]>
<tag><![CDATA[]]>
<tag2><![CDATA[]]>
<penred><![CDATA[0]]>
<style><![CDATA[]]>
<expr><![CDATA[ORIENTATION=0
PAPERSIZE=1
COLOR=2
]]>
<supexpr><![CDATA[]]>
<comment><![CDATA[]]>
<user><![CDATA[]]>
</Reportes>
<Reportes
platform="WINDOWS " uniqueid="" timestamp="0" objtype="9" objcode="1" name="" vpos="0.000" hpos="0.000" height="7500.000" width="0.000" order="" unique=".F." environ=".F." boxchar=" " fillchar=" " pengreen="0" penblue="0" fillred="0" fillgreen="0" fillblue="0" pensize="0" penpat="0" fillpat="0" fontface="" fontstyle="0" fontsize="0" mode="0" ruler="0" rulerlines="0" grid=".F." gridv="0" gridh="0" float=".F." stretch=".F." stretchtop=".F." top=".F." bottom=".F." suptype="0" suprest="0" norepeat=".F." resetrpt="0" pagebreak=".F." colbreak=".F." resetpage=".F." general="0" spacing="0" double=".F." swapheader=".F." swapfooter=".F." ejectbefor=".F." ejectafter=".F." plain=".F." summary=".F." addalias=".F." offset="0" topmargin="0" botmargin="0" totaltype="0" resettotal="0" resoid="0" curpos=".F." supalways=".F." supovflow=".F." suprpcol="0" supgroup="0" supvalchng=".F."
<picture><![CDATA[]]>
<tag><![CDATA[]]>
<tag2><![CDATA[]]>
<penred><![CDATA[0]]>
<style><![CDATA[]]>
<expr><![CDATA[]]>
<supexpr><![CDATA[]]>
<comment><![CDATA[]]>
<user><![CDATA[]]>
</Reportes>
<Reportes
platform="WINDOWS " uniqueid="" timestamp="0" objtype="9" objcode="4" name="" vpos="0.000" hpos="0.000" height="5000.000" width="0.000" order="" unique=".F." environ=".F." boxchar=" " fillchar=" " pengreen="0" penblue="0" fillred="0" fillgreen="0" fillblue="0" pensize="0" penpat="0" fillpat="0" fontface="" fontstyle="0" fontsize="0" mode="0" ruler="0" rulerlines="0" grid=".F." gridv="0" gridh="0" float=".F." stretch=".F." stretchtop=".F." top=".F." bottom=".F." suptype="0" suprest="0" norepeat=".F." resetrpt="0" pagebreak=".F." colbreak=".F." resetpage=".F." general="0" spacing="0" double=".F." swapheader=".F." swapfooter=".F." ejectbefor=".F." ejectafter=".F." plain=".F." summary=".F." addalias=".F." offset="0" topmargin="0" botmargin="0" totaltype="0" resettotal="0" resoid="0" curpos=".F." supalways=".F." supovflow=".F." suprpcol="0" supgroup="0" supvalchng=".F."
<picture><![CDATA[]]>
<tag><![CDATA[]]>
<tag2><![CDATA[]]>
<penred><![CDATA[0]]>
<style><![CDATA[]]>
<expr><![CDATA[]]>
<supexpr><![CDATA[]]>
<comment><![CDATA[]]>
<user><![CDATA[]]>
</Reportes>
<Reportes
platform="WINDOWS " uniqueid="" timestamp="0" objtype="9" objcode="7" name="" vpos="0.000" hpos="0.000" height="5000.000" width="0.000" order="" unique=".F." environ=".F." boxchar=" " fillchar=" " pengreen="0" penblue="0" fillred="0" fillgreen="0" fillblue="0" pensize="0" penpat="0" fillpat="0" fontface="" fontstyle="0" fontsize="0" mode="0" ruler="0" rulerlines="0" grid=".F." gridv="0" gridh="0" float=".F." stretch=".F." stretchtop=".F." top=".F." bottom=".F." suptype="0" suprest="0" norepeat=".F." resetrpt="0" pagebreak=".F." colbreak=".F." resetpage=".F." general="0" spacing="0" double=".F." swapheader=".F." swapfooter=".F." ejectbefor=".F." ejectafter=".F." plain=".F." summary=".F." addalias=".F." offset="0" topmargin="0" botmargin="0" totaltype="0" resettotal="0" resoid="0" curpos=".F." supalways=".F." supovflow=".F." suprpcol="0" supgroup="0" supvalchng=".F."
<picture><![CDATA[]]>
<tag><![CDATA[]]>
<tag2><![CDATA[]]>
<penred><![CDATA[0]]>
<style><![CDATA[]]>
<expr><![CDATA[]]>
<supexpr><![CDATA[]]>
<comment><![CDATA[]]>
<user><![CDATA[]]>
</Reportes>
<Reportes
platform="WINDOWS " uniqueid="" timestamp="0" objtype="23" objcode="0" name="" vpos="16.000" hpos="8.000" height="12.000" width="10.000" order="" unique=".F." environ=".F." boxchar=" " fillchar=" " pengreen="0" penblue="0" fillred="0" fillgreen="0" fillblue="0" pensize="0" penpat="0" fillpat="0" fontface="Courier New" fontstyle="0" fontsize="10" mode="0" ruler="0" rulerlines="0" grid=".F." gridv="0" gridh="0" float=".F." stretch=".F." stretchtop=".F." top=".F." bottom=".F." suptype="0" suprest="0" norepeat=".F." resetrpt="0" pagebreak=".F." colbreak=".F." resetpage=".F." general="0" spacing="0" double=".F." swapheader=".F." swapfooter=".F." ejectbefor=".F." ejectafter=".F." plain=".F." summary=".F." addalias=".F." offset="0" topmargin="0" botmargin="0" totaltype="0" resettotal="0" resoid="0" curpos=".F." supalways=".F." supovflow=".F." suprpcol="0" supgroup="0" supvalchng=".F."
<picture><![CDATA[]]>
<tag><![CDATA[]]>
<tag2><![CDATA[]]>
<penred><![CDATA[4]]>
<style><![CDATA[]]>
<expr><![CDATA[]]>
<supexpr><![CDATA[]]>
<comment><![CDATA[]]>
<user><![CDATA[]]>
</Reportes>
<Reportes
platform="WINDOWS " uniqueid="" timestamp="0" objtype="5" objcode="0" name="" vpos="2500.000" hpos="11250.000" height="3333.333" width="6666.667" order="" unique=".F." environ=".F." boxchar=" " fillchar=" " pengreen="-1" penblue="-1" fillred="-1" fillgreen="-1" fillblue="-1" pensize="0" penpat="0" fillpat="0" fontface="Courier New" fontstyle="0" fontsize="10" mode="1" ruler="0" rulerlines="0" grid=".F." gridv="0" gridh="0" float=".F." stretch=".F." stretchtop=".F." top=".T." bottom=".F." suptype="0" suprest="0" norepeat=".F." resetrpt="0" pagebreak=".F." colbreak=".F." resetpage=".F." general="0" spacing="0" double=".T." swapheader=".F." swapfooter=".F." ejectbefor=".F." ejectafter=".F." plain=".F." summary=".F." addalias=".F." offset="0" topmargin="0" botmargin="0" totaltype="0" resettotal="0" resoid="1" curpos=".T." supalways=".T." supovflow=".T." suprpcol="0" supgroup="0" supvalchng=".F."
<picture><![CDATA[]]>
<tag><![CDATA[]]>
<tag2><![CDATA[]]>
<penred><![CDATA[-1]]>
<style><![CDATA[]]>
<expr><![CDATA["A test:
Caption!"]]>
<supexpr><![CDATA[LEN("This is an example with a CRLF after it") > 0
and .t.]]>
<comment><![CDATA[]]>
<user><![CDATA[]]>
</Reportes>
<Reportes
platform="WINDOWS " uniqueid="" timestamp="0" objtype="25" objcode="0" name="dataenvironment" vpos="0.000" hpos="0.000" height="0.000" width="0.000" order="" unique=".F." environ=".F." boxchar=" " fillchar=" " pengreen="0" penblue="0" fillred="0" fillgreen="0" fillblue="0" pensize="0" penpat="0" fillpat="0" fontface="" fontstyle="0" fontsize="0" mode="0" ruler="0" rulerlines="0" grid=".F." gridv="0" gridh="0" float=".F." stretch=".F." stretchtop=".F." top=".F." bottom=".F." suptype="0" suprest="0" norepeat=".F." resetrpt="0" pagebreak=".F." colbreak=".F." resetpage=".F." general="0" spacing="0" double=".F." swapheader=".F." swapfooter=".F." ejectbefor=".F." ejectafter=".F." plain=".F." summary=".F." addalias=".F." offset="0" topmargin="0" botmargin="0" totaltype="0" resettotal="0" resoid="0" curpos=".F." supalways=".F." supovflow=".F." suprpcol="0" supgroup="0" supvalchng=".F."
<picture><![CDATA[]]>
<tag><![CDATA[
]]>
<tag2><![CDATA[]]>
<penred><![CDATA[0]]>
<style><![CDATA[]]>
<expr><![CDATA[Top = 0
Left = 0
Width = 0
Height = 0
DataSource = .NULL.
Name = "Dataenvironment"
]]>
<supexpr><![CDATA[]]>
<comment><![CDATA[]]>
<user><![CDATA[]]>
</Reportes>

Binary file not shown.

Binary file not shown.

View File

@@ -1209,4 +1209,148 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg
ENDFUNC
*******************************************************************************************************************************************
FUNCTION Evaluate_TX2_Output_Test
LPARAMETERS tcFileName
IF PCOUNT() = 0
THIS.messageout( "* Support method, not a valid test." )
RETURN .T.
ENDIF
LOCAL lnCodError, lnCodError_Esperado ;
, lc_File, lc_OutputFile, lc_OutputFileTx2, lc_OutputFileBak, lcExt2 ;
, lcParent, lcClass, lcObjName, loReg_Esperado ;
, loCtl AS f_optiongroup OF "TESTS\DATOS_READONLY\LIB_CONTROLES.VCX" ;
, 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.EvaluarConfiguracion( '', '', '1', '1', '1', '4', '1', '0' )
*loCnv.l_Test = .T.
*-- DATOS DE ENTRADA
STORE 0 TO lnCodError, lnCodError_Esperado
*-- Copio la librer<65>a en DATOS_TEST
lc_File = UPPER(tcFileName)
lcExt2 = loCnv.Get_Ext2FromExt( JUSTEXT( tcFileName ) )
lc_OutputFile = FORCEPATH( lc_File, oFXU_LIB.cPathDatosTest )
lc_OutputFileTx2 = FORCEEXT( FORCEPATH( lc_File, oFXU_LIB.cPathDatosTest ), lcExt2 )
lc_OutputFileBak = lc_OutputFileTx2 + '.bak'
oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File, LEFT( JUSTEXT(lc_File),2 ) + '?' ) )
COPY FILE (lc_OutputFileTx2) TO (lc_OutputFileBak)
*-- Genero TX2
loCnv.Ejecutar( lc_OutputFile, .F., .F., .F., '1', '0', '1', '', '', .T., '', SYS(5)+CURDIR() )
*-- Genero BIN
loCnv.Ejecutar( FORCEEXT(lc_OutputFile, LEFT( JUSTEXT(lc_OutputFile),2 ) + '2' ), .F., .F., .F., '1', '0', '1', '', '', .T., '', SYS(5)+CURDIR() )
*-- Genero TX2
loCnv.Ejecutar( lc_OutputFile, .F., .F., .F., '1', '0', '1', '', '', .T., '', SYS(5)+CURDIR() )
*-- Comparo resultados
THIS.messageout( "Se compara el archivo de texto generado con el original luego de 2 regeneraciones, para saber si hay cambios" )
THIS.messageout( "OutputFileTx2 = " + lc_OutputFileTx2 )
THIS.messageout( "OutputFileBak = " + lc_OutputFileBak )
THIS.asserttrue( FILETOSTR( lc_OutputFileTx2 ) == FILETOSTR( lc_OutputFileBak ), "COMPARACI<43>N DE ARCHIVOS TX2" )
CATCH TO loEx
THIS.Evaluate_results( loEx, lnCodError_Esperado, lc_OutputFile, lcParent, lcClass, lcObjName, loReg_Esperado )
FINALLY
* USE IN (SELECT("ARCHIVOBIN_IN"))
* USE IN (SELECT("TABLABIN"))
STORE NULL TO loCnv, loCtl
ENDTRY
ENDFUNC
*******************************************************************************************************************************************
FUNCTION Deberia_Ejecutar_FOXBIN2PRG_Para__test_public_protected_vcx__ValidarEl_VC2_GeneradoConElOriginal_Y_NoEncontrarDiferencias
#IF .F.
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
#ENDIF
THIS.Evaluate_TX2_Output_Test( 'test_public_protected.vcx' )
ENDFUNC
*******************************************************************************************************************************************
FUNCTION Deberia_Ejecutar_FOXBIN2PRG_Para__test_report_frx__ValidarEl_FR2_GeneradoConElOriginal_Y_NoEncontrarDiferencias
#IF .F.
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
#ENDIF
THIS.Evaluate_TX2_Output_Test( 'test_report.frx' )
ENDFUNC
*******************************************************************************************************************************************
FUNCTION Deberia_Ejecutar_FOXBIN2PRG_Para__Menu_LineBreak_mnx__ValidarEl_MN2_GeneradoConElOriginal_Y_NoEncontrarDiferencias
#IF .F.
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
#ENDIF
THIS.Evaluate_TX2_Output_Test( 'Menu_LineBreak.mnx' )
ENDFUNC
*******************************************************************************************************************************************
FUNCTION Deberia_Ejecutar_FOXBIN2PRG_Para__Menu_Comments_Procedure_mnx__ValidarEl_MN2_GeneradoConElOriginal_Y_NoEncontrarDiferencias
#IF .F.
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
#ENDIF
THIS.Evaluate_TX2_Output_Test( 'Menu_Comments_Procedure.mnx' )
ENDFUNC
*******************************************************************************************************************************************
FUNCTION Deberia_Ejecutar_FOXBIN2PRG_Para__Lib_Controles_vcx__ValidarEl_MN2_GeneradoConElOriginal_Y_NoEncontrarDiferencias
#IF .F.
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
#ENDIF
THIS.Evaluate_TX2_Output_Test( 'Lib_Controles.vcx' )
ENDFUNC
*******************************************************************************************************************************************
FUNCTION Deberia_Ejecutar_FOXBIN2PRG_Para__f_form_aa_scx__ValidarEl_MN2_GeneradoConElOriginal_Y_NoEncontrarDiferencias
#IF .F.
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
#ENDIF
THIS.Evaluate_TX2_Output_Test( 'f_form_aa.scx' )
ENDFUNC
*******************************************************************************************************************************************
FUNCTION Deberia_Ejecutar_FOXBIN2PRG_Para__f_form_aa2_scx__ValidarEl_MN2_GeneradoConElOriginal_Y_NoEncontrarDiferencias
#IF .F.
PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG'
#ENDIF
THIS.Evaluate_TX2_Output_Test( 'f_form_aa2.scx' )
ENDFUNC
ENDDEFINE

View File

@@ -14,6 +14,7 @@
* Debug: 0 && Don't Activate individual <file>.Log by default / No Activar <archivo>.Log por defecto
* ExtraBackupLevels: 0 && By default 1 BAK is created. With this you can make more .N.BAK, or none / Por defecto 1 BAK es creado. Con esto puede crear m<>s .N.BAK, o ninguno
* ClearUniqueID: 0 && EXPERIMENTAL! - 0=Keep UniqueID, 1=Clear Unique ID. Useful for Diff and Merge / 0=Mantener UniqueID, 1=Borrar Unique ID. Util para Diff y Merge
* OptimizeByFilestamp: 1 && Optimize file regeneration depending on file timestamp / Optimizar la regeneraci<63>n de archivos dependiendo del timestamp de archivo
* XXX_Conversion_Support: N && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
* PJX_Conversion_Support: 2 && Default value
* VCX_Conversion_Support: 2 && Default value
@@ -54,6 +55,7 @@
*Debug: 1
*ExtraBackupLevels: 3
ClearUniqueID: 1
*OptimizeByFilestamp: 0
* EN: Uncomment to activate the new value, comment to deactivate and use the default

View File

@@ -26,7 +26,7 @@ _LegalTrademark = "Creative Commons 4: Reconocimiento - CompartirIgual (by-sa):
_ProductName = " FOXBIN2PRG v1.19.22"
_MajorVer = "1"
_MinorVer = "19"
_Revision = " 332"
_Revision = " 336"
_LanguageID = "1034"
_AutoIncrement = "1"
*</DevInfo>

Binary file not shown.

Binary file not shown.

View File

@@ -582,8 +582,8 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
TRY
LOCAL loEx AS EXCEPTION, dwFileAttributes
DECLARE SHORT 'SetFileAttributes' IN kernel32 AS 'fb2p_SetFileAttributes' STRING tcFileName, INTEGER dwFileAttributes
DECLARE INTEGER 'GetFileAttributes' IN kernel32 AS 'fb2p_GetFileAttributes' STRING tcFileName
DECLARE SHORT 'SetFileAttributes' IN kernel32 AS fb2p_SetFileAttributes STRING tcFileName, INTEGER dwFileAttributes
DECLARE INTEGER 'GetFileAttributes' IN kernel32 AS fb2p_GetFileAttributes STRING tcFileName
* read current attributes for this file
dwFileAttributes = fb2p_GetFileAttributes(tcFileName)
@@ -652,7 +652,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
THROW
FINALLY
CLEAR DLLS 'fb2p_SetFileAttributes', 'fb2p_GetFileAttributes'
CLEAR DLLS fb2p_SetFileAttributes, fb2p_GetFileAttributes
ENDTRY
RETURN
@@ -965,6 +965,8 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
PROCEDURE Get_Ext2FromExt
LPARAMETERS tcExt
LOCAL lcExt2
tcExt = UPPER(tcExt)
WITH THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
lcExt2 = ICASE( tcExt == 'PJX', .c_PJ2 ;
, tcExt == 'VCX', .c_VC2 ;
@@ -976,6 +978,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
, tcExt == 'DBC', .c_DC2 ;
, 'XXX' )
ENDWITH && THIS
RETURN lcExt2
ENDPROC
@@ -1592,7 +1595,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
ENDIF
ENDIF
IF .t_InputFile_TimeStamp >= .t_OutputFile_TimeStamp THEN
IF NOT .l_OptimizeByFilestamp OR .t_InputFile_TimeStamp >= .t_OutputFile_TimeStamp THEN
.c_Type = UPPER(JUSTEXT(.c_OutputFile))
.o_Conversor.c_InputFile = .c_InputFile
.o_Conversor.c_OutputFile = .c_OutputFile