2008-03-10 09:53 UTC+0100 Belgrano Massimo (mbelgrano/at/deltain.it)

* harbour/utils/hbtest/rt_trans.prg
    ! added news regression test 
      Corretted error
      Formatted source
This commit is contained in:
Massimo Belgrano
2008-03-11 08:59:01 +00:00
parent 1875d88dd6
commit 8f184a368d
2 changed files with 249 additions and 236 deletions

View File

@@ -1,4 +1,4 @@
/*
/*
* $Id$
*/
@@ -7,6 +7,12 @@
For example:
2002-12-01 13:30 UTC+0100 Foo Bar <foo.bar@foobar.org>
*/
2008-03-10 09:53 UTC+0100 Belgrano Massimo (mbelgrano/at/deltain.it)
* harbour/utils/hbtest/rt_trans.prg
! added news regression test
Corretted error
Formatted source
2008-03-10 13:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapifs.h

View File

@@ -56,7 +56,9 @@
#include "rt_vars.ch"
FUNCTION Main_TRANS()
LOCAL cOldDate := Set( _SET_DATEFORMAT )
LOCAL cOldDate := Set(_SET_DATEFORMAT)
local cOldFixed :=set(_SET_FIXED)
local cOldDecim :=set(_SET_DECIMALS)
local dt
/* TRANSFORM() */
@@ -425,7 +427,7 @@ FUNCTION Main_TRANS()
* ? transform( "AB", "@E" )
* ? transform( "ab", "@E" )
* [druzus]
*/
*/
TEST_LINE( Transform(".", "@E" ) , " " )
TEST_LINE( Transform(",", "@E" ) , "." )
TEST_LINE( Transform("..", "@E" ) , ","+Chr(0)+"" )
@@ -513,266 +515,271 @@ FUNCTION Main_TRANS()
Set( _SET_DATEFORMAT, cOldDate )
TEST_LINE( Transform( "abcd", "@9!*") , "ABCD" )
TEST_LINE( Transform( "abcd", "@_9!*") , "ABCD" )
TEST_LINE( Transform( "abcd", "@_9"+chr(9)+"9!9"), "aBc" )
TEST_LINE( Transform( "abcd", "@!!!" ), "ABCD" )
TEST_LINE( Transform( "abcd", "@9"), "abcd" )
TEST_LINE( Transform( "abcd", "@9!*") , "ABCD" )
TEST_LINE( Transform( "abcd", "@_9!*") , "ABCD" )
TEST_LINE( Transform( "abcd", "@_9"+chr(9)+"9!9"), "aBc" )
TEST_LINE( Transform( "abcd", "@!!!" ), "ABCD" )
TEST_LINE( Transform( "abcd", "@9"), "abcd" )
TEST_LINE( Transform( 134.24, "99,999.99") , " 134.24" )
TEST_LINE( Transform( 134.24, "@E 99,999.99") , " 134,24" )
TEST_LINE( Transform( -134.24,"@E 99,999.99") , " -134,24" )
TEST_LINE( Transform( 134.24, "@E99,999.99") , " 134,24" )
TEST_LINE( Transform( -134.24, "@E99,999.99") , " -134,24" )
TEST_LINE( Transform( 134.24, "99,999.99") , " 134.24" )
TEST_LINE( Transform( 134.24, "@E 99,999.99") , " 134,24" )
TEST_LINE( Transform( -134.24,"@E 99,999.99") , " -134,24" )
TEST_LINE( Transform( 134.24, "@E99,999.99") , " 134,24" )
TEST_LINE( Transform( -134.24, "@E99,999.99") , " -134,24" )
TEST_LINE( Transform(-7, "@X 9999") , " 7 DB")
TEST_LINE( Transform(stod("19920509"), "@E") , "09/05/92")
TEST_LINE( Transform(val("3.10"),"@X") , "3.10")
TEST_LINE( Transform(0.80,".9999") , ".8000" )
TEST_LINE( Transform(-0.80, ".9999") , ".****" )
TEST_LINE( Transform(12345.123, "@X99") , " 12345.123")
TEST_LINE( Transform(-12345.123, "@X99") , " 12345.123 DB" )
TEST_LINE( Transform( 123456.78, "@E"), " 123456,78")
TEST_LINE( Transform(0,"@C 9.99"), "0.00")
TEST_LINE( Transform(-7, "@X 9999") , " 7 DB")
SET DATE FORMAT TO "MM/DD/YY"
TEST_LINE( Transform(stod("19920509"), "@E") , "09/05/92")
TEST_LINE( Transform(val("3.10"),"@X") , "3.10")
TEST_LINE( Transform(0.80,".9999") , ".8000" )
TEST_LINE( Transform(-0.80, ".9999") , ".****" )
TEST_LINE( Transform(12345.123, "@X99") , " 12345.123")
TEST_LINE( Transform(-12345.123, "@X99") , " 12345.123 DB" )
TEST_LINE( Transform( 123456.78, "@E"), " 123456,78")
TEST_LINE( Transform(0,"@C 9.99"), "0.00")
#ifdef __HARBOUR__
dt:=stod("19871231")
set date format to "MM:DD:YYYY"
TEST_LINE( Transform( dt, "@E") , "31:12:1987" )
set date format to "DD:MM:YYYY"
TEST_LINE( Transform( dt, "@E") , "31:12:1987")
set date format to "YYYY:MM:DD"
TEST_LINE( Transform( dt, "@E") , "31:12:1987")
set date format to "YYYY:DD:MM"
TEST_LINE( Transform( dt, "@E") , "31:12:1987")
set date format to "YY:MM:DD"
TEST_LINE( Transform( dt, "@E") , "31:12:87")
set date format to "MM:DD:YY"
TEST_LINE( Transform( dt, "@E") , "31:12:87")
set date format to "DD:MM:YY"
TEST_LINE( Transform( dt, "@E") , "31:12:87")
set date format to "<YY:DD.MM>"
TEST_LINE( Transform( dt, "@E") , "<31:12.87>")
set date format to "|YY|MM|DD|"
TEST_LINE( Transform( dt, "@E") , "|31|12|87|")
set date format to "MM<DD>YY"
TEST_LINE( Transform( dt, "@E") , "31<12>87")
dt:=stod("19871231")
set date format to "MM:DD:YYYY"
TEST_LINE( Transform( dt, "@E") , "31:12:1987" )
set date format to "DD:MM:YYYY"
TEST_LINE( Transform( dt, "@E") , "31:12:1987")
set date format to "YYYY:MM:DD"
TEST_LINE( Transform( dt, "@E") , "31:12:1987")
set date format to "YYYY:DD:MM"
TEST_LINE( Transform( dt, "@E") , "31:12:1987")
set date format to "YY:MM:DD"
TEST_LINE( Transform( dt, "@E") , "31:12:87")
set date format to "MM:DD:YY"
TEST_LINE( Transform( dt, "@E") , "31:12:87")
set date format to "DD:MM:YY"
TEST_LINE( Transform( dt, "@E") , "31:12:87")
set date format to "<YY:DD.MM>"
TEST_LINE( Transform( dt, "@E") , "<31:12.87>")
set date format to "|YY|MM|DD|"
TEST_LINE( Transform( dt, "@E") , "|31|12|87|")
set date format to "MM<DD>YY"
TEST_LINE( Transform( dt, "@E") , "31<12>87")
#endif
Set( _SET_DATEFORMAT, cOldDate)
TEST_LINE( Transform( -5, "@(Z $###,##9.99") , "( 5.00)" )
TEST_LINE( Transform( -10, "@)Z $###,##9.99") , "$ (10.00)" )
TEST_LINE( Transform( -20, "@Z $###,##9.99") , "$ -20.00" )
TEST_LINE( Transform(100,"9999.") , " 100.")
TEST_LINE( Transform(1.1,"@B!99.99") , "1.1 ")
TEST_LINE( Transform(12.345,"@R 99/99") , " /12")
TEST_LINE( Transform( "1234567890", "@9") , "1234567890")
TEST_LINE( Transform( 1234567890, "@9") , " 1234567890")
TEST_LINE( Transform( 1234, "9 999") , "1 234" )
TEST_LINE( Transform( 123.123456, "999.99.99.99") , "123.12.45. " )
TEST_LINE( Transform( 123.123456, "$$$.$$.$$.$$") , "123.12.45. " )
TEST_LINE( Transform( 123.123456, "***.**.**.**") , "123.12.45. " )
TEST_LINE( Transform( 99999, "9.999") , "*.***" )
TEST_LINE( Transform( 99, "*.***") , "*.***" )
TEST_LINE( Transform( 12345, "9999.") , "****." )
TEST_LINE( Transform( -5, "@(Z $###,##9.99") , "( 5.00)" )
TEST_LINE( Transform( -10, "@)Z $###,##9.99") , "$ (10.00)" )
TEST_LINE( Transform( -20, "@Z $###,##9.99") , "$ -20.00" )
TEST_LINE( Transform(100,"9999.") , " 100.")
TEST_LINE( Transform(1.1,"@B!99.99") , "1.1 ")
TEST_LINE( Transform(12.345,"@R 99/99") , " /12")
TEST_LINE( Transform( "1234567890", "@9") , "1234567890")
TEST_LINE( Transform( 1234567890, "@9") , " 1234567890")
TEST_LINE( Transform( 1234, "9 999") , "1 234" )
TEST_LINE( Transform( 123.123456, "999.99.99.99") , "123.12.45. " )
TEST_LINE( Transform( 123.123456, "$$$.$$.$$.$$") , "123.12.45. " )
TEST_LINE( Transform( 123.123456, "***.**.**.**") , "123.12.45. " )
TEST_LINE( Transform( 99999, "9.999") , "*.***" )
TEST_LINE( Transform( 99, "*.***") , "*.***" )
TEST_LINE( Transform( 12345, "9999.") , "****." )
TEST_LINE( Transform(-12345.00, "@(") , "( 12345.00)")
TEST_LINE( Transform(-12345.00, "@)") , " (12345.00)")
TEST_LINE( Transform(-123456789.00, "@(") , "(123456789.00)")
TEST_LINE( Transform(-123456789.00, "@)") , "(123456789.00)")
TEST_LINE( Transform(-1234567890, "@(") , "( 1234567890)")
TEST_LINE( Transform(-1234567890, "@)") , " (1234567890)")
TEST_LINE( Transform(-12345, "@( [999999]") , "( 12345])")
TEST_LINE( Transform(-12345, "@) [999999]") , "[(12345])")
TEST_LINE( Transform(-12345, "@( $999999") , "( 12345)")
TEST_LINE( Transform(-12345, "@) $999999") , "$(12345)")
TEST_LINE( Transform(-12345, "@( #999999") , "( 12345)")
TEST_LINE( Transform(-12345, "@) #999999") , " (12345)")
TEST_LINE( Transform(-12345, "@( $99999") , "(12345)")
TEST_LINE( Transform(-12345, "@) $99999") , "(12345)")
TEST_LINE( Transform(-12345, "@( #99999") , "(12345)")
TEST_LINE( Transform(-12345, "@) #99999") , "(12345)")
TEST_LINE( Transform(-12345, "@( 6798^999") , "(7*8^***)")
TEST_LINE( Transform(-12345, "@( 9798^9999") , "(718^2345)")
TEST_LINE( Transform(-12345.00, "@(") , "( 12345.00)")
TEST_LINE( Transform(-12345.00, "@)") , " (12345.00)")
TEST_LINE( Transform(-123456789.00, "@(") , "(123456789.00)")
TEST_LINE( Transform(-123456789.00, "@)") , "(123456789.00)")
TEST_LINE( Transform(-1234567890, "@(") , "( 1234567890)")
TEST_LINE( Transform(-1234567890, "@)") , " (1234567890)")
TEST_LINE( Transform(-12345, "@( [999999]") , "( 12345])")
TEST_LINE( Transform(-12345, "@) [999999]") , "[(12345])")
TEST_LINE( Transform(-12345, "@( $999999") , "( 12345)")
TEST_LINE( Transform(-12345, "@) $999999") , "$(12345)")
TEST_LINE( Transform(-12345, "@( #999999") , "( 12345)")
TEST_LINE( Transform(-12345, "@) #999999") , " (12345)")
TEST_LINE( Transform(-12345, "@( $99999") , "(12345)")
TEST_LINE( Transform(-12345, "@) $99999") , "(12345)")
TEST_LINE( Transform(-12345, "@( #99999") , "(12345)")
TEST_LINE( Transform(-12345, "@) #99999") , "(12345)")
TEST_LINE( Transform(-12345, "@( 6798^999") , "(7*8^***)")
TEST_LINE( Transform(-12345, "@( 9798^9999") , "(718^2345)")
TEST_LINE( Transform( 134.24, "@E99,999.99") , " 134,24" )
TEST_LINE( Transform( -134.24, "@E99,999.99") , " -134,24" )
TEST_LINE( Transform(0.80,".9999") , ".8000")
TEST_LINE( Transform(-0.80,".9999") , ".****")
TEST_LINE( Transform(12345.123, "@X99") , " 12345.123")
TEST_LINE( Transform(-12345.123, "@X99") , " 12345.123 DB")
TEST_LINE( Transform( 123456.78, "@E" ) , " 123456,78")
TEST_LINE( Transform(0,"@C 9.99") , "0.00")
TEST_LINE( Transform(1.1,"@B!99.99") , "1.1 ")
TEST_LINE( Transform(-12345, "@) [999999]") , "[(12345])")
TEST_LINE( Transform(-12345, "@) $999999") , "$(12345)")
TEST_LINE( Transform(-12345, "@) *999999") , "*(12345)")
TEST_LINE( Transform(-12345, "@) #999999") , " (12345)")
TEST_LINE( Transform(-12345, "@) *9$9*999]") , "*($12345])")
TEST_LINE( Transform(-12345, "@) *999*999]") , "* (12345])")
TEST_LINE( Transform(-12345, "@) 0999*999]") , "0 (12345])")
TEST_LINE( Transform(-12345, "@) 1999*999]") , "1 (12345])")
TEST_LINE( Transform(-12345, "@) *[99*999]") , "([ 12345])")
TEST_LINE( Transform(-12345, "@) *****999]") , "(**12345])")
TEST_LINE( Transform(-12345, "@) *1***999]") , "(1*12345])")
TEST_LINE( Transform(-12345, "@) * 999999]") , "* (12345])")
TEST_LINE( Transform( -5, "@(Z $###,##9.99") , "( 5.00)" )
TEST_LINE( Transform( -10, "@)Z $###,##9.99") , "$ (10.00)" )
TEST_LINE( Transform( -5, "@(Z $999,999.99") , "( 5.00)" )
TEST_LINE( Transform( -10, "@)Z $999,999.99") , "$ (10.00)" )
TEST_LINE( Transform( -5, "@(Z 999,999.99") , "( 5.00)" )
TEST_LINE( Transform( -10, "@)Z 999,999.99") , " (10.00)" )
TEST_LINE( Transform( -20, "@Z $###,##9.99") , "$ -20.00" )
TEST_LINE( Transform(0.1,".9") , ".1")
TEST_LINE( Transform(0.0,".9") , ".0")
TEST_LINE( Transform(1,".9") , ".*")
TEST_LINE( Transform(.456,".9") , ".5")
TEST_LINE( Transform(123,"99.-") , "**.-")
TEST_LINE( Transform( 134.24, "@E99,999.99") , " 134,24" )
TEST_LINE( Transform( -134.24, "@E99,999.99") , " -134,24" )
TEST_LINE( Transform(0.80,".9999") , ".8000")
TEST_LINE( Transform(-0.80,".9999") , ".****")
TEST_LINE( Transform(12345.123, "@X99") , " 12345.123")
TEST_LINE( Transform(-12345.123, "@X99") , " 12345.123 DB")
TEST_LINE( Transform( 123456.78, "@E" ) , " 123456,78")
TEST_LINE( Transform(0,"@C 9.99") , "0.00")
TEST_LINE( Transform(1.1,"@B!99.99") , "1.1 ")
TEST_LINE( Transform(-12345, "@) [999999]") , "[(12345])")
TEST_LINE( Transform(-12345, "@) $999999") , "$(12345)")
TEST_LINE( Transform(-12345, "@) *999999") , "*(12345)")
TEST_LINE( Transform(-12345, "@) #999999") , " (12345)")
TEST_LINE( Transform(-12345, "@) *9$9*999]") , "*($12345])")
TEST_LINE( Transform(-12345, "@) *999*999]") , "* (12345])")
TEST_LINE( Transform(-12345, "@) 0999*999]") , "0 (12345])")
TEST_LINE( Transform(-12345, "@) 1999*999]") , "1 (12345])")
TEST_LINE( Transform(-12345, "@) *[99*999]") , "([ 12345])")
TEST_LINE( Transform(-12345, "@) *****999]") , "(**12345])")
TEST_LINE( Transform(-12345, "@) *1***999]") , "(1*12345])")
TEST_LINE( Transform(-12345, "@) * 999999]") , "* (12345])")
TEST_LINE( Transform( -5, "@(Z $###,##9.99") , "( 5.00)" )
TEST_LINE( Transform( -10, "@)Z $###,##9.99") , "$ (10.00)" )
TEST_LINE( Transform( -5, "@(Z $999,999.99") , "( 5.00)" )
TEST_LINE( Transform( -10, "@)Z $999,999.99") , "$ (10.00)" )
TEST_LINE( Transform( -5, "@(Z 999,999.99") , "( 5.00)" )
TEST_LINE( Transform( -10, "@)Z 999,999.99") , " (10.00)" )
TEST_LINE( Transform( -20, "@Z $###,##9.99") , "$ -20.00" )
TEST_LINE( Transform(0.1,".9") , ".1")
TEST_LINE( Transform(0.0,".9") , ".0")
TEST_LINE( Transform(1,".9") , ".*")
TEST_LINE( Transform(.456,".9") , ".5")
TEST_LINE( Transform(123,"99.-") , "**.-")
TEST_LINE( Transform(-123.45,"999,999.99") , " -123.45")
TEST_LINE( Transform(-123456.78,"999,999,999.99") , " -123,456.78")
TEST_LINE( Transform(-123456.78,"$$$,$$$,$$$.$$") , "$$ -123,456.78")
TEST_LINE( Transform(-123456.78,"***,***,***.**") , "***-123,456.78")
TEST_LINE( Transform(123456.78,"@E 888,$$$,$$$.$$") , "888.123.456,78")
TEST_LINE( Transform(123456.78,"@E 888x,$$$,$$$.$$") , "888xx123.456,78")
TEST_LINE( Transform(123456.78,"@E 888x,,$$$,$$$.$$") , "888xxx123.456,78")
TEST_LINE( Transform(123456.78,"@E 8,88x,,$$$,$$$.$$") , "8.88xxx123.456,78")
TEST_LINE( Transform(123456.78,"@E 8,88x,,$$$,,$$$.$$") , "8.88xxx123..456,78")
TEST_LINE( Transform(123456.78,"@E 8,88x,,$$$,,$$$.$$77,7") , "8.88xxx123..456,7877,7")
TEST_LINE( Transform(123456,"@E 8,88x,,$$$,,$$$77,7") , "8.88xxx123..45677,7")
TEST_LINE( Transform(123456,"@E -,999,999") , " -123.456")
TEST_LINE( Transform(12345,"@E -,999,999") , " - 12.345")
TEST_LINE( Transform(12345,"@E -,|999,999") , " -| 12.345")
TEST_LINE( Transform(12345,"@E ^-,|999,999") , "^^-| 12.345")
TEST_LINE( Transform(12345,"@E 1-,|999,999") , "11-| 12.345")
TEST_LINE( Transform(12345,"@E |--,|999,999") , "|---| 12.345")
TEST_LINE( Transform(-123.45,"999,999.99") , " -123.45")
TEST_LINE( Transform(-123456.78,"999,999,999.99") , " -123,456.78")
TEST_LINE( Transform(-123456.78,"$$$,$$$,$$$.$$") , "$$ -123,456.78")
TEST_LINE( Transform(-123456.78,"***,***,***.**") , "***-123,456.78")
TEST_LINE( Transform(123456.78,"@E 888,$$$,$$$.$$") , "888.123.456,78")
TEST_LINE( Transform(123456.78,"@E 888x,$$$,$$$.$$") , "888xx123.456,78")
TEST_LINE( Transform(123456.78,"@E 888x,,$$$,$$$.$$") , "888xxx123.456,78")
TEST_LINE( Transform(123456.78,"@E 8,88x,,$$$,$$$.$$") , "8.88xxx123.456,78")
TEST_LINE( Transform(123456.78,"@E 8,88x,,$$$,,$$$.$$") , "8.88xxx123..456,78")
TEST_LINE( Transform(123456.78,"@E 8,88x,,$$$,,$$$.$$77,7") , "8.88xxx123..456,7877,7")
TEST_LINE( Transform(123456,"@E 8,88x,,$$$,,$$$77,7") , "8.88xxx123..45677,7")
TEST_LINE( Transform(123456,"@E -,999,999") , " -123.456")
TEST_LINE( Transform(12345,"@E -,999,999") , " - 12.345")
TEST_LINE( Transform(12345,"@E -,|999,999") , " -| 12.345")
TEST_LINE( Transform(12345,"@E ^-,|999,999") , "^^-| 12.345")
TEST_LINE( Transform(12345,"@E 1-,|999,999") , "11-| 12.345")
TEST_LINE( Transform(12345,"@E |--,|999,999") , "|---| 12.345")
TEST_LINE( Transform(12.34,"@E 99'99") , " '12")
TEST_LINE( Transform(12.34,"99,99,11") , " 12,11")
TEST_LINE( Transform(12.34,"@E 99,99,11") , " 12,11")
TEST_LINE( Transform(12.34,"@E 99,") , "12,")
TEST_LINE( Transform(12.34,"@E 9,9") , "1.2")
TEST_LINE( Transform(12.34,"@E ab,cd.ef9,9.99,.--") , "abbcd,ef***,* ,.--")
TEST_LINE( Transform(12.34,"@E ab,cd,ef9,9.99,.--") , "abbcddef1.2,34,.--")
TEST_LINE( Transform(12.34,"@E ,ab,cd,ef9,9.99,.--") , ",abbcddef1.2,34,.--")
TEST_LINE( Transform(12.34,"@E ,,,,99,.99,.--") , ",,,,12.,34,.--")
TEST_LINE( Transform(124.4,"@E ,,,,9,9.99,.--") , ",,,,***,**,.--")
TEST_LINE( Transform( 1.2,"@E ,,,,*,*.**,.--") , ",,,,**1,20,.--")
TEST_LINE( Transform(12.34,"@E ,,,,*,*.**,.--") , ",,,,1.2,34,.--")
TEST_LINE( Transform(12.34,"@E ,,,,*,*.**,.--,--") , ",,,,1.2,34,.--,--")
TEST_LINE( Transform(12.34,"@E ,,,,*,*,.,**") , ",,,,1.2.,,34")
TEST_LINE( Transform(12.34,",,,,*,*,.,**") , ",,,,1,2,..34")
TEST_LINE( Transform(12.34,",,,,*,*,.,*|,*") , ",,,,1,2,..3||4")
TEST_LINE( Transform(12.34,",,,,*,*,.,*,*") , ",,,,1,2,..3,4")
TEST_LINE( Transform(123.345678912,"@E 999.99.99,99.99.") , "123,34,67.89, .")
TEST_LINE( Transform(12.34,"@E 99'99") , " '12")
TEST_LINE( Transform(12.34,"99,99,11") , " 12,11")
TEST_LINE( Transform(12.34,"@E 99,99,11") , " 12,11")
TEST_LINE( Transform(12.34,"@E 99,") , "12,")
TEST_LINE( Transform(12.34,"@E 9,9") , "1.2")
TEST_LINE( Transform(12.34,"@E ab,cd.ef9,9.99,.--") , "abbcd,ef***,* ,.--")
TEST_LINE( Transform(12.34,"@E ab,cd,ef9,9.99,.--") , "abbcddef1.2,34,.--")
TEST_LINE( Transform(12.34,"@E ,ab,cd,ef9,9.99,.--") , ",abbcddef1.2,34,.--")
TEST_LINE( Transform(12.34,"@E ,,,,99,.99,.--") , ",,,,12.,34,.--")
TEST_LINE( Transform(124.4,"@E ,,,,9,9.99,.--") , ",,,,***,**,.--")
TEST_LINE( Transform( 1.2,"@E ,,,,*,*.**,.--") , ",,,,**1,20,.--")
TEST_LINE( Transform(12.34,"@E ,,,,*,*.**,.--") , ",,,,1.2,34,.--")
TEST_LINE( Transform(12.34,"@E ,,,,*,*.**,.--,--") , ",,,,1.2,34,.--,--")
TEST_LINE( Transform(12.34,"@E ,,,,*,*,.,**") , ",,,,1.2.,,34")
TEST_LINE( Transform(12.34,",,,,*,*,.,**") , ",,,,1,2,..34")
TEST_LINE( Transform(12.34,",,,,*,*,.,*|,*") , ",,,,1,2,..3||4")
TEST_LINE( Transform(12.34,",,,,*,*,.,*,*") , ",,,,1,2,..3,4")
TEST_LINE( Transform(123.345678912,"@E 999.99.99,99.99.") , "123,34,67.89, .")
#ifdef __HARBOUR__
TEST_LINE( Transform( 1234567890123456789, "99999999999999999999") , " 1234567890123456789" )
TEST_LINE( Transform( -1234567890123456789, "99999999999999999999") , "-1234567890123456789" )
TEST_LINE( Transform( 1234567890123456789, "99999999999999999999") , " 1234567890123456789" )
TEST_LINE( Transform( -1234567890123456789, "99999999999999999999") , "-1234567890123456789" )
#else
TEST_LINE( Transform( 1234567890123456789, "99999999999999999999") , " 1234567890123457000" )
TEST_LINE( Transform( -1234567890123456789, "99999999999999999999") , "-1234567890123457000" )
TEST_LINE( Transform( 1234567890123456789, "99999999999999999999") , " 1234567890123457000" )
TEST_LINE( Transform( -1234567890123456789, "99999999999999999999") , "-1234567890123457000" )
#endif
set(_SET_DATEFORMAT,"YYYY/MM/DD")
TEST_LINE( Transform(12345678,"@D") , "1234/56/78")
set(_SET_DATEFORMAT,"YYYY.MM.DD")
TEST_LINE( Transform(1234.56789,"@D") , "1234.56.9 ")
set(_SET_DATEFORMAT,"YYYY.MM:DD")
TEST_LINE( Transform(1234.56789,"@D"), "1234.56:79")
TEST_LINE( Transform(123.345678912,"@D ") , " 123.34:57")
set(_SET_DATEFORMAT,"MM-DD-YYYY")
TEST_LINE( Transform(.t.,"@RE <|,yY#lL,|>") , "99-99-9999T")
TEST_LINE( Transform(.f.,"@RE <|,yY#lL,|>") , "99-99-9999F")
TEST_LINE( Transform(.t.,"@RD <|,yY#lL,|>") , "99-99-9999T")
TEST_LINE( Transform(.f.,"@RD <|,yY#lL,|>") , "99-99-9999F")
TEST_LINE( Transform(.f.,"@DE <|,yY#lL,|>") , "9")
TEST_LINE( Transform("abcdefghij","@S15! <XXXXXXXX>") , "<BCDEFGHI>")
TEST_LINE( Transform("abcdefghij","@S0! <XXXXXXXX>") , "<BCDEFGHI>")
TEST_LINE( Transform("abcdefghij","@S5! <XXXXXXXX>") , "<BCDE")
set(_SET_DATEFORMAT,"YYYY/MM/DD")
TEST_LINE( Transform(12345678,"@D") , "1234/56/78")
set(_SET_DATEFORMAT,"YYYY.MM.DD")
TEST_LINE( Transform(1234.56789,"@D") , "1234.56.9 ")
set(_SET_DATEFORMAT,"YYYY.MM:DD")
TEST_LINE( Transform(1234.56789,"@D"), "1234.56:79")
TEST_LINE( Transform(123.345678912,"@D ") , " 123.34:57")
set(_SET_DATEFORMAT,cOldDate)
set fixed on
TEST_LINE( Transform( 1234, ) , " 1234" )
TEST_LINE( Transform( 1234, "" ) , " 1234" )
TEST_LINE( Transform( 1234, "@" ), " 1234" )
TEST_LINE( Transform( 1234, "@!"), " 1234" )
TEST_LINE( Transform( -1234, ), " -1234" )
TEST_LINE( Transform( -1234, "@" ), " -1234" )
TEST_LINE( Transform(.t.,"@RE <|,yY#lL,|>") , "99-99-9999T")
TEST_LINE( Transform(.f.,"@RE <|,yY#lL,|>") , "99-99-9999F")
TEST_LINE( Transform(.t.,"@RD <|,yY#lL,|>") , "99-99-9999T")
TEST_LINE( Transform(.f.,"@RD <|,yY#lL,|>") , "99-99-9999F")
TEST_LINE( Transform(.f.,"@DE <|,yY#lL,|>") , "9")
TEST_LINE( Transform("abcdefghij","@S15! <XXXXXXXX>") , "<BCDEFGHI>")
TEST_LINE( Transform("abcdefghij","@S0! <XXXXXXXX>") , "<BCDEFGHI>")
TEST_LINE( Transform("abcdefghij","@S5! <XXXXXXXX>") , "<BCDE")
set fixed on
TEST_LINE( Transform( 1234, ) , " 1234" )
TEST_LINE( Transform( 1234, "" ) , " 1234" )
TEST_LINE( Transform( 1234, "@" ), " 1234" )
TEST_LINE( Transform( 1234, "@!"), " 1234" )
TEST_LINE( Transform( -1234, ), " -1234" )
TEST_LINE( Transform( -1234, "@" ), " -1234" )
#ifdef HB_C52_STRICT
TEST_LINE( Transform( round(123,0), ) , " 123.00" )
TEST_LINE( Transform( round(123,0), "@!") , " 123.00" )
TEST_LINE( Transform( round(123.0,0), ) , " 123.00" )
TEST_LINE( Transform( round(123.0,0),"@!") , " 123.00" )
TEST_LINE( Transform( round(123,0), ) , " 123.00" )
TEST_LINE( Transform( round(123,0), "@!") , " 123.00" )
TEST_LINE( Transform( round(123.0,0), ) , " 123.00" )
TEST_LINE( Transform( round(123.0,0),"@!") , " 123.00" )
#endif
TEST_LINE( Transform( 1234.567, ) , " 1234.57" )
TEST_LINE( Transform( 1234.567, "") , " 1234.57" )
TEST_LINE( Transform( 1234.567, "@" ) , " 1234.57" )
TEST_LINE( Transform( 1234.567, "@!") , " 1234.57" )
TEST_LINE( Transform( -1234.567, ) , " -1234.57" )
TEST_LINE( Transform( -1234.567, "@") , " -1234.57" )
TEST_LINE( Transform( val("-1.0"), ) , "-1.00" )
TEST_LINE( Transform( val("-1.0"), "@") , "-1.00" )
TEST_LINE( Transform( val("-123"), ) , " -123" )
TEST_LINE( Transform( val("-123"), "@") , " -123" )
TEST_LINE( Transform( 0, ) , " 0" )
TEST_LINE( Transform( 0.0, ) , " 0.00" )
TEST_LINE( Transform( val("1"), ) , " 1" )
TEST_LINE( Transform( val("12"), ) , " 12" )
TEST_LINE( Transform( val("123"), ) , " 123" )
TEST_LINE( Transform( val("1234"), ) , " 1234" )
set decimal to 3
TEST_LINE( Transform( 0.0, ) , " 0.000" )
TEST_LINE( Transform( val("1"), ) , " 1" )
TEST_LINE( Transform( val("12"), ) , " 12" )
TEST_LINE( Transform( val("123"), ) , " 123" )
TEST_LINE( Transform( val("1234"), ) , " 1234" )
set decimal to 4
TEST_LINE( Transform( 0.0, ) , " 0.0000" )
TEST_LINE( Transform( val("1"), ) , " 1" )
TEST_LINE( Transform( val("12"), ) , " 12" )
TEST_LINE( Transform( val("123"), ) , " 123" )
TEST_LINE( Transform( val("1234"), ) , " 1234" )
set fixed off
TEST_LINE( Transform( 1234.567, ) , " 1234.57" )
TEST_LINE( Transform( 1234.567, "") , " 1234.57" )
TEST_LINE( Transform( 1234.567, "@" ) , " 1234.57" )
TEST_LINE( Transform( 1234.567, "@!") , " 1234.57" )
TEST_LINE( Transform( -1234.567, ) , " -1234.57" )
TEST_LINE( Transform( -1234.567, "@") , " -1234.57" )
TEST_LINE( Transform( val("-1.0"), ) , "-1.00" )
TEST_LINE( Transform( val("-1.0"), "@") , "-1.00" )
TEST_LINE( Transform( val("-123"), ) , " -123" )
TEST_LINE( Transform( val("-123"), "@") , " -123" )
TEST_LINE( Transform( 0, ) , " 0" )
TEST_LINE( Transform( 0.0, ) , " 0.00" )
TEST_LINE( Transform( val("1"), ) , " 1" )
TEST_LINE( Transform( val("12"), ) , " 12" )
TEST_LINE( Transform( val("123"), ) , " 123" )
TEST_LINE( Transform( val("1234"), ) , " 1234" )
set decimal to 3
TEST_LINE( Transform( 0.0, ) , " 0.000" )
TEST_LINE( Transform( val("1"), ) , " 1" )
TEST_LINE( Transform( val("12"), ) , " 12" )
TEST_LINE( Transform( val("123"), ) , " 123" )
TEST_LINE( Transform( val("1234"), ) , " 1234" )
set decimal to 4
TEST_LINE( Transform( 0.0, ) , " 0.0000" )
TEST_LINE( Transform( val("1"), ) , " 1" )
TEST_LINE( Transform( val("12"), ) , " 12" )
TEST_LINE( Transform( val("123"), ) , " 123" )
TEST_LINE( Transform( val("1234"), ) , " 1234" )
TEST_LINE( Transform( -1234, ) , " -1234" )
TEST_LINE( Transform( -1234, "@B") , "-1234 " )
TEST_LINE( Transform( -1234, "@(") , "( 1234)" )
TEST_LINE( Transform( -1234, "@)") , " (1234)" )
TEST_LINE( Transform( -1234, "@B)") , "(1234) " )
TEST_LINE( Transform( -1234, "@B(") , "(1234) " )
TEST_LINE( Transform( "( 12)", "@B(") , "( 12)" )
TEST_LINE( Transform( "( 12)", "@B)") , "( 12)" )
TEST_LINE( Transform( " 12", "@B(") , "12 " )
TEST_LINE( Transform( " 12", "@B)") , "12 " )
set(_SET_FIXED,cOldFixed )
set(_SET_DECIMALS,cOldDecim)
TEST_LINE( Transform( -1234, ) , " -1234" )
TEST_LINE( Transform( -1234, "@B") , "-1234 " )
TEST_LINE( Transform( -1234, "@(") , "( 1234)" )
TEST_LINE( Transform( -1234, "@)") , " (1234)" )
TEST_LINE( Transform( -1234, "@B)") , "(1234) " )
TEST_LINE( Transform( -1234, "@B(") , "(1234) " )
TEST_LINE( Transform( "( 12)", "@B(") , "( 12)" )
TEST_LINE( Transform( "( 12)", "@B)") , "( 12)" )
TEST_LINE( Transform( " 12", "@B(") , "12 " )
TEST_LINE( Transform( " 12", "@B)") , "12 " )
#ifdef __HARBOUR__
TEST_LINE( Transform( 1234, "@L") , "0000001234" )
TEST_LINE( Transform( 1234, "@0") , "0000001234" )
TEST_LINE( Transform( 1234, "@L(") , "0000001234" )
TEST_LINE( Transform( 1234, "@0)") , "0000001234" )
TEST_LINE( Transform( -1234, "@L(") , "(000001234)" )
TEST_LINE( Transform( -1234, "@0)") , "(000001234)" )
TEST_LINE( Transform( 1234, "@L") , "0000001234" )
TEST_LINE( Transform( 1234, "@0") , "0000001234" )
TEST_LINE( Transform( 1234, "@L(") , "0000001234" )
TEST_LINE( Transform( 1234, "@0)") , "0000001234" )
TEST_LINE( Transform( -1234, "@L(") , "(000001234)" )
TEST_LINE( Transform( -1234, "@0)") , "(000001234)" )
/* please test it with FoxPro and xbase++ to check if they give the same result */
TEST_LINE( Transform( -1234, "@L") , "-000001234" )
TEST_LINE( Transform( -1234, "@0") , "-000001234" )
TEST_LINE( Transform( -1234, "@L") , "-000001234" )
TEST_LINE( Transform( -1234, "@0") , "-000001234" )
#endif
/* FlagShip extensions */
TEST_LINE( Transform( -1234, "@Z") , " -1234" )
TEST_LINE( Transform( 1234, "@Z") , " 1234" )
TEST_LINE( Transform( -1234, "@F") , " -1234" )
TEST_LINE( Transform( 1234, "@F") , " 1234" )
TEST_LINE( Transform( -1234, "@T") , " -1234" )
TEST_LINE( Transform( 1234, "@T") , " 1234" )
TEST_LINE( Transform( -1234, "@Z") , " -1234" )
TEST_LINE( Transform( 1234, "@Z") , " 1234" )
TEST_LINE( Transform( -1234, "@F") , " -1234" )
TEST_LINE( Transform( 1234, "@F") , " 1234" )
TEST_LINE( Transform( -1234, "@T") , " -1234" )
TEST_LINE( Transform( 1234, "@T") , " 1234" )
TEST_LINE( Transform( 123456789.12, "@,39 999,999,999.99") , "123,456,789.12" )
TEST_LINE( Transform( 123456789.12, "@,39 999,999,999.99") , "123,456,789.12" )
TEST_LINE( Transform( 123.456, "@R 9 9 9.9") , "1 2 3.5" )
TEST_LINE( Transform( 123456789.12, "@,39 999,999,999.99") , "123,456,789.12" )
TEST_LINE( Transform( 123456789.12, "@,39 999,999,999.99") , "123,456,789.12" )
TEST_LINE( Transform( 123.456, "@R 9 9 9.9") , "1 2 3.5" )
RETURN NIL
#ifndef __HARBOUR__
func stod(s)
local cDf:=set(_SET_DATEFORMAT,"YYYY/MM/DD"), dt
dt:=ctod(stuff(stuff(s,7,0,"/"),5,0,"/"))
set(_SET_DATEFORMAT,cDf)
return dt
local cDf:=set(_SET_DATEFORMAT,"YYYY/MM/DD"), dt
dt:=ctod(stuff(stuff(s,7,0,"/"),5,0,"/"))
set(_SET_DATEFORMAT,cDf)
return dt
#endif
/* Don't change the position of this #include. */
#include "rt_init.ch"