Files
harbour-core/harbour/tests/fortest.prg
2000-02-14 06:54:30 +00:00

66 lines
1.3 KiB
Plaintext

//
// $Id$
//
// Testing Harbour For Next loops for Clipper compatibility
// ; Donated to the public domain by Victor Szakats <info@szelvesz.hu>
// TODO: add test for "step 0"
static snFrom
static snTo
static snStep
function Main()
local array
local tmp, n
QOut( "Testing Harbour For Next loops." )
array := {{ 1, 10, 1 },;
{ 10, 1, -1 },;
{ 1, 10, -1 },;
{ 10, 1, 1 },;
{ 1, 10, 4 },;
{ 10, 1, -4 },;
{ 1, 10, -4 },;
{ 10, 1, 4 }}
for tmp := 1 TO Len(array)
snFrom := array[tmp][1]
snTo := array[tmp][2]
snStep := array[tmp][3]
OutStd( "From: ") ; OutStd(snFrom)
OutStd(" To: ") ; OutStd(snTo)
OutStd(" Step: ") ; OutStd(snStep)
OutStd(Chr(13) + Chr(10))
for n := Eval({|| ValFrom() }) to Eval({|| ValTo() }) step Eval({|| ValStep() })
OutStd("Exec ") ; OutStd(n) ; OutStd(Chr(13) + Chr(10))
next n
next
return nil
static function ValFrom()
OutStd("From") ; OutStd(Chr(13) + Chr(10))
return snFrom
static function ValTo()
OutStd("To") ; OutStd(Chr(13) + Chr(10))
return snTo
static function ValStep()
OutStd("Step") ; OutStd(Chr(13) + Chr(10))
return snStep