diff --git a/harbour/ChangeLog b/harbour/ChangeLog index eb076dc9a2..84b2670b4a 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,31 @@ 2008-12-31 13:59 UTC+0100 Foo Bar */ +2008-08-22 17:03 UTC+0200 Viktor Szakats (harbour.01 syenar hu) + * contrib/make_gcc_all.sh + + Added darwin autodetection. + + * contrib/Makefile + + Added HB_CONTRIB_ADDONS envvar which enables building + local custom contribs stored in the contrib dir. + A separate dir may be better, but we will see. + + * utils/hbtest/hbtest.prg + * Changed test .dbf filename casing to lowercase. + + + tests/rddtest + + tests/rddtest/rddmktst.prg + + tests/rddtest/adscl52.prg + + tests/rddtest/adscl53.prg + + tests/rddtest/ntxcl52.prg + + tests/rddtest/ntxcl53.prg + + tests/rddtest/cdxcl52.prg + + tests/rddtest/rddtst.prg + + tests/rddtest/make_c52.bat + + tests/rddtest/cdxcl53.prg + + tests/rddtest/make_c53.bat + + Added RDD tests from xhb. + 2008-08-22 14:56 UTC+0200 Viktor Szakats (harbour.01 syenar hu) * source/rtl/gtalleg/ssf.h ! Fixed to compile with BCC. diff --git a/harbour/contrib/Makefile b/harbour/contrib/Makefile index a19b83accf..89024de07a 100644 --- a/harbour/contrib/Makefile +++ b/harbour/contrib/Makefile @@ -52,6 +52,8 @@ DIRS = $(HB_CONTRIBLIBS) endif +DIRS += $(HB_CONTRIB_ADDONS) + # DIRS += examples include $(ROOT)config/dir.cf diff --git a/harbour/contrib/make_gcc_all.sh b/harbour/contrib/make_gcc_all.sh index 24e138a165..2e8462ddc8 100755 --- a/harbour/contrib/make_gcc_all.sh +++ b/harbour/contrib/make_gcc_all.sh @@ -20,6 +20,7 @@ if [ -z "$HB_ARCHITECTURE" ]; then *cygwin*) hb_arch="cyg" ;; *dos) hb_arch="dos" ;; *bsd) hb_arch="bsd" ;; + *darwin) hb_arch="darwin" ;; esac fi export HB_ARCHITECTURE="$hb_arch" _HB_ARCH_SAVED=1 diff --git a/harbour/tests/rddtest/adscl52.prg b/harbour/tests/rddtest/adscl52.prg new file mode 100644 index 0000000000..ab816cf47b --- /dev/null +++ b/harbour/tests/rddtest/adscl52.prg @@ -0,0 +1,455 @@ +/* + * $Id$ + */ + +#define _TEST_ADS_ +REQUEST dbfcdx +#define _TESTRDD "dbfcdx" +#include "rddtst.prg" + +FUNCTION test_main() + +RDDTESTC {0,.t.,.t.,.f.}, LOCAL n +RDDTESTF "DBFCDX", {0,.t.,.t.,.f.}, RDDSETDEFAULT() +RDDTESTC {1,.t.,.t.,.f.}, USE "_tst" SHARED +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE OFF +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FNUM tag TG_N to "_tst" +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF "TG_C", {1,.t.,.t.,.f.}, ORDSETFOCUS() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .F.,.F.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .F.,.T.) +RDDTESTC {1,.t.,.t.,.f.}, SET DELETE OFF +RDDTESTC {15,.f.,.f.,.f.}, for n:=1 to 15 ; dbappend() ; replace FNUM with int((n+2)/3) ; replace FSTR with chr(FNUM+48) ; next +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbcommit() +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbunlock() +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTF "TG_N", {15,.f.,.f.,.f.}, ORDSETFOCUS() +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0,.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0.5,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0.5,.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(1.0,.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(1.0,.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(2.0,.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(2.0,.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(2.5,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(2.5,.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(5.0,.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(5.0,.T.,.T.) +RDDTESTF "TG_N", {13,.f.,.f.,.t.}, ORDSETFOCUS(2) +RDDTESTF "TG_C", {13,.f.,.f.,.t.}, ORDSETFOCUS() +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {15,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" DESCEND +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTC {7,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM>2 .AND. FNUM<=4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM<>2 .AND. FNUM<4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTC {16,.t.,.t.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM==6 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTC {15,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR RECNO()<>5 DESCEND +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR RECNO()<>5 +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF "TG_C", {16,.f.,.t.,.f.}, ORDSETFOCUS(0) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTF "", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTC {15,.f.,.f.,.f.}, SET DELETE ON +RDDTESTF .t., {15,.f.,.f.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.T.) + +RETURN NIL diff --git a/harbour/tests/rddtest/adscl53.prg b/harbour/tests/rddtest/adscl53.prg new file mode 100644 index 0000000000..ea7c7860d1 --- /dev/null +++ b/harbour/tests/rddtest/adscl53.prg @@ -0,0 +1,633 @@ +/* + * $Id$ + */ + +#define _TEST_ADS_ +REQUEST dbfcdx +#define _TESTRDD "dbfcdx" +#include "rddtst.prg" + +FUNCTION test_main() + +RDDTESTC {0,.t.,.t.,.f.}, LOCAL n +RDDTESTF "DBFCDX", {0,.t.,.t.,.f.}, RDDSETDEFAULT() +RDDTESTC {1,.t.,.t.,.f.}, USE "_tst" SHARED +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE OFF +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FNUM tag TG_N to "_tst" +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF "TG_C", {1,.t.,.t.,.f.}, ORDSETFOCUS() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF .f., {1,.f.,.t.,.f.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {1,.f.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.f.,.t.,.f.}, DBSEEK("", .F.,.F.) +RDDTESTF .f., {1,.f.,.t.,.f.}, DBSEEK("", .F.,.T.) +RDDTESTC {1,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTC {15,.f.,.f.,.f.}, for n:=1 to 15 ; dbappend() ; replace FNUM with int((n+2)/3) ; replace FSTR with chr(FNUM+48) ; next +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbcommit() +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbunlock() +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTF "TG_N", {15,.f.,.f.,.f.}, ORDSETFOCUS() +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(0,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0,.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(0.5,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0.5,.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(1.0,.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK(1.0,.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(2.0,.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK(2.0,.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(2.5,.T.,.F.) +RDDTESTF .f., {6,.f.,.f.,.f.}, DBSEEK(2.5,.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(5.0,.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK(5.0,.T.,.T.) +RDDTESTF "TG_N", {15,.f.,.f.,.t.}, ORDSETFOCUS(2) +RDDTESTF "TG_C", {15,.f.,.f.,.t.}, ORDSETFOCUS() +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {15,.f.,.f.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(0,"3") +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(1,"4") +RDDTESTF "3", {15,.f.,.f.,.f.}, DBORDERINFO(39) +RDDTESTF "4", {15,.f.,.f.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("1",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("1",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("2",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("5",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF "3", {16,.f.,.t.,.f.}, ORDSCOPE(0,"3") +RDDTESTF "4", {16,.f.,.t.,.f.}, ORDSCOPE(1,"2") +RDDTESTF "3", {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF "2", {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("3",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("3",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("4",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("4",.T.,.T.) +RDDTESTF "3", {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF "2", {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {16,.f.,.t.,.f.}, ORDSCOPE(0,NIL) +RDDTESTF .t., {16,.f.,.t.,.f.}, ORDSCOPE(1,NIL) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {15,.f.,.f.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(0,"4") +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(1,"3") +RDDTESTF "4", {15,.f.,.f.,.f.}, DBORDERINFO(39) +RDDTESTF "3", {15,.f.,.f.,.f.}, DBORDERINFO(40) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("3",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("3",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("4",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("4",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("5",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF "4", {16,.f.,.t.,.f.}, ORDSCOPE(0,"3") +RDDTESTF "3", {16,.f.,.t.,.f.}, ORDSCOPE(1,"4") +RDDTESTF "3", {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF "4", {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("1",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("1",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("2",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("5",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {15,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" DESCEND +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {15,.f.,.f.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF NIL, {16,.f.,.t.,.f.}, ORDSCOPE(0,"4") +RDDTESTF NIL, {16,.f.,.t.,.f.}, ORDSCOPE(1,"3") +RDDTESTF "4", {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF "3", {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .f., {12,.f.,.f.,.f.}, DBSEEK("5",.T.,.F.) +RDDTESTF .f., {12,.f.,.f.,.f.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {12,.f.,.f.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(0,"3") +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(1,"4") +RDDTESTF "3", {15,.f.,.f.,.f.}, DBORDERINFO(39) +RDDTESTF "4", {15,.f.,.f.,.f.}, DBORDERINFO(40) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF "TG_C", {12,.f.,.f.,.f.}, ORDSETFOCUS(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTC {7,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM>2 .AND. FNUM<=4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM<>2 .AND. FNUM<4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {8,.f.,.f.,.f.}, ORDSCOPE(0,"5") +RDDTESTF "5", {8,.f.,.f.,.f.}, DBORDERINFO(39) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTC {16,.t.,.t.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM==6 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.t.,.t.,.f.}, ORDSCOPE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, ORDSCOPE(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, ORDSCOPE(1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDSCOPE(0,NIL) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDSCOPE(1,NIL) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDSCOPE(0,NIL) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDSCOPE(1,NIL) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF NIL, {16,.t.,.t.,.f.}, ORDSCOPE(0,{||"3"}) +RDDTESTF NIL, {16,.t.,.t.,.f.}, ORDSCOPE(1,{||"4"}) +RDDTESTF {||"3"}, {16,.t.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF {||"4"}, {16,.t.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF {||"3"}, {16,.t.,.t.,.f.}, ORDSCOPE({},"3") +RDDTESTF {||"4"}, {16,.t.,.t.,.f.}, ORDSCOPE(1,"4") +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE() +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(0) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(1) +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(0) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(1) +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(0,"3") +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(0) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(1) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(2) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(3) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDSCOPE(0,NIL) +RDDTESTC {15,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR RECNO()<>5 DESCEND +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR RECNO()<>5 +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF "TG_C", {6,.f.,.f.,.f.}, ORDSETFOCUS(0) +RDDTESTC {6,.f.,.f.,.f.}, SET DELETE ON +RDDTESTF .t., {6,.f.,.f.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTF "", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTC {15,.f.,.f.,.f.}, SET DELETE ON +RDDTESTF .t., {15,.f.,.f.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.F.) +RDDTESTF .f., {15,.f.,.f.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.F.) +RDDTESTF .f., {15,.f.,.f.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.T.) +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(0,"3") +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(1,"4") +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("1",10)+" ",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("1",10)+" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("2",10)+" ",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("2",10)+" ",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("5",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("5",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("1",10)+"*",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("1",10)+"*",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("2",10)+"*",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("2",10)+"*",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("5",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("5",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.T.) + +RETURN NIL diff --git a/harbour/tests/rddtest/cdxcl52.prg b/harbour/tests/rddtest/cdxcl52.prg new file mode 100644 index 0000000000..de3e6dde19 --- /dev/null +++ b/harbour/tests/rddtest/cdxcl52.prg @@ -0,0 +1,454 @@ +/* + * $Id$ + */ + +REQUEST dbfcdx +#define _TESTRDD "dbfcdx" +#include "rddtst.prg" + +FUNCTION test_main() + +RDDTESTC {0,.t.,.t.,.f.}, LOCAL n +RDDTESTF "DBFCDX", {0,.t.,.t.,.f.}, RDDSETDEFAULT() +RDDTESTC {1,.t.,.t.,.f.}, USE "_tst" SHARED +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE OFF +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FNUM tag TG_N to "_tst" +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF "TG_C", {1,.t.,.t.,.f.}, ORDSETFOCUS() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .F.,.F.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .F.,.T.) +RDDTESTC {1,.t.,.t.,.f.}, SET DELETE OFF +RDDTESTC {15,.f.,.f.,.f.}, for n:=1 to 15 ; dbappend() ; replace FNUM with int((n+2)/3) ; replace FSTR with chr(FNUM+48) ; next +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbcommit() +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbunlock() +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTF "TG_N", {15,.f.,.f.,.f.}, ORDSETFOCUS() +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0,.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0.5,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0.5,.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(1.0,.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(1.0,.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(2.0,.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(2.0,.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(2.5,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(2.5,.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(5.0,.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(5.0,.T.,.T.) +RDDTESTF "TG_N", {13,.f.,.f.,.t.}, ORDSETFOCUS(2) +RDDTESTF "TG_C", {13,.f.,.f.,.t.}, ORDSETFOCUS() +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {15,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" DESCEND +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTC {7,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM>2 .AND. FNUM<=4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM<>2 .AND. FNUM<4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTC {16,.t.,.t.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM==6 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTC {15,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR RECNO()<>5 DESCEND +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR RECNO()<>5 +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF "TG_C", {16,.f.,.t.,.f.}, ORDSETFOCUS(0) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTF "", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTC {15,.f.,.f.,.f.}, SET DELETE ON +RDDTESTF .t., {15,.f.,.f.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.T.) + +RETURN NIL diff --git a/harbour/tests/rddtest/cdxcl53.prg b/harbour/tests/rddtest/cdxcl53.prg new file mode 100644 index 0000000000..86ea43c1b3 --- /dev/null +++ b/harbour/tests/rddtest/cdxcl53.prg @@ -0,0 +1,677 @@ +/* + * $Id$ + */ + +REQUEST dbfcdx +#define _TESTRDD "dbfcdx" +#include "rddtst.prg" + +FUNCTION test_main() + +RDDTESTC {0,.t.,.t.,.f.}, LOCAL n +RDDTESTF "DBFCDX", {0,.t.,.t.,.f.}, RDDSETDEFAULT() +RDDTESTC {1,.t.,.t.,.f.}, USE "_tst" SHARED +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE OFF +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FNUM tag TG_N to "_tst" +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF "TG_C", {1,.t.,.t.,.f.}, ORDSETFOCUS() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF .f., {1,.f.,.t.,.f.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {1,.f.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.f.,.t.,.f.}, DBSEEK("", .F.,.F.) +RDDTESTF .f., {1,.f.,.t.,.f.}, DBSEEK("", .F.,.T.) +RDDTESTC {1,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTC {15,.f.,.f.,.f.}, for n:=1 to 15 ; dbappend() ; replace FNUM with int((n+2)/3) ; replace FSTR with chr(FNUM+48) ; next +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbcommit() +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbunlock() +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTF "TG_N", {15,.f.,.f.,.f.}, ORDSETFOCUS() +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(0,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0,.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(0.5,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0.5,.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(1.0,.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK(1.0,.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(2.0,.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK(2.0,.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(2.5,.T.,.F.) +RDDTESTF .f., {6,.f.,.f.,.f.}, DBSEEK(2.5,.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(5.0,.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK(5.0,.T.,.T.) +RDDTESTF "TG_N", {15,.f.,.f.,.t.}, ORDSETFOCUS(2) +RDDTESTF "TG_C", {15,.f.,.f.,.t.}, ORDSETFOCUS() +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {15,.f.,.f.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(0,"3") +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(1,"4") +RDDTESTF "3", {15,.f.,.f.,.f.}, DBORDERINFO(39) +RDDTESTF "4", {15,.f.,.f.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("1",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("1",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("2",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("5",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF "3", {16,.f.,.t.,.f.}, ORDSCOPE(0,"3") +RDDTESTF "4", {16,.f.,.t.,.f.}, ORDSCOPE(1,"2") +RDDTESTF "3", {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF "2", {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("3",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("3",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("4",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("4",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, ORDDESCEND() +RDDTESTF .f., {16,.f.,.t.,.f.}, ORDDESCEND(,,.T.) +RDDTESTF .t., {16,.f.,.t.,.f.}, ORDDESCEND() +RDDTESTF "2", {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF "3", {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {16,.f.,.t.,.f.}, ORDSCOPE(0,NIL) +RDDTESTF .t., {16,.f.,.t.,.f.}, ORDSCOPE(1,NIL) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {15,.f.,.f.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF NIL, {16,.f.,.t.,.f.}, ORDSCOPE(0,"4") +RDDTESTF NIL, {16,.f.,.t.,.f.}, ORDSCOPE(1,"3") +RDDTESTF "4", {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF "3", {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .f., {12,.f.,.f.,.f.}, DBSEEK("5",.T.,.F.) +RDDTESTF .f., {12,.f.,.f.,.f.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {12,.f.,.f.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF "4", {16,.f.,.t.,.f.}, ORDSCOPE(0,"3") +RDDTESTF "3", {16,.f.,.t.,.f.}, ORDSCOPE(1,"4") +RDDTESTF "3", {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF "4", {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("3",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("3",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("4",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("4",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("5",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {15,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" DESCEND +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {15,.f.,.f.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF NIL, {16,.f.,.t.,.f.}, ORDSCOPE(0,"4") +RDDTESTF NIL, {16,.f.,.t.,.f.}, ORDSCOPE(1,"3") +RDDTESTF "4", {16,.f.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF "3", {16,.f.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("1",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .f., {12,.f.,.f.,.f.}, DBSEEK("5",.T.,.F.) +RDDTESTF .f., {12,.f.,.f.,.f.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {12,.f.,.f.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(0,"3") +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(1,"4") +RDDTESTF "3", {15,.f.,.f.,.f.}, DBORDERINFO(39) +RDDTESTF "4", {15,.f.,.f.,.f.}, DBORDERINFO(40) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF "TG_C", {12,.f.,.f.,.f.}, ORDSETFOCUS(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTC {7,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM>2 .AND. FNUM<=4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM<>2 .AND. FNUM<4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {8,.f.,.f.,.f.}, ORDSCOPE(0,"5") +RDDTESTF "5", {8,.f.,.f.,.f.}, DBORDERINFO(39) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTC {16,.t.,.t.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM==6 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.t.,.t.,.f.}, ORDSCOPE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, ORDSCOPE(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, ORDSCOPE(1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDSCOPE(0,NIL) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDSCOPE(1,NIL) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDSCOPE(0,NIL) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDSCOPE(1,NIL) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF NIL, {16,.t.,.t.,.f.}, ORDSCOPE(0,{||"3"}) +RDDTESTF NIL, {16,.t.,.t.,.f.}, ORDSCOPE(1,{||"4"}) +RDDTESTF {||"3"}, {16,.t.,.t.,.f.}, DBORDERINFO(39) +RDDTESTF {||"4"}, {16,.t.,.t.,.f.}, DBORDERINFO(40) +RDDTESTF {||"3"}, {16,.t.,.t.,.f.}, ORDSCOPE({},"3") +RDDTESTF {||"4"}, {16,.t.,.t.,.f.}, ORDSCOPE(1,"4") +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE() +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(0) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(1) +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(0) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(1) +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(0,"3") +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(0) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(1) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(2) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(3) +RDDTESTF .f., {16,.t.,.t.,.f.}, ORDDESCEND(,,.T.) +RDDTESTF "4", {16,.t.,.t.,.f.}, ORDSCOPE(0) +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(1) +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(2) +RDDTESTF "3", {16,.t.,.t.,.f.}, ORDSCOPE(3) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDDESCEND(,,.F.) +RDDTESTF .t., {16,.t.,.t.,.f.}, ORDSCOPE(0,NIL) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF .t., {4,.f.,.f.,.f.}, ORDSKIPUNIQUE() +RDDTESTF .t., {7,.f.,.f.,.f.}, ORDSKIPUNIQUE(1) +RDDTESTF .t., {10,.f.,.f.,.f.}, ORDSKIPUNIQUE(2) +RDDTESTF .t., {9,.f.,.f.,.f.}, ORDSKIPUNIQUE(-1) +RDDTESTF .t., {6,.f.,.f.,.f.}, ORDSKIPUNIQUE(-2) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF .t., {1,.t.,.f.,.f.}, ORDSKIPUNIQUE(-1) +RDDTESTF .t., {4,.f.,.f.,.f.}, ORDSKIPUNIQUE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF .t., {12,.f.,.f.,.f.}, ORDSKIPUNIQUE(-1) +RDDTESTF .t., {13,.f.,.f.,.f.}, ORDSKIPUNIQUE() +RDDTESTF .t., {16,.f.,.t.,.f.}, ORDSKIPUNIQUE() +RDDTESTF .t., {15,.f.,.f.,.f.}, ORDSKIPUNIQUE(-1) +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF .t., {2,.f.,.f.,.f.}, ORDSKIPUNIQUE() +RDDTESTF .t., {1,.f.,.f.,.f.}, ORDSKIPUNIQUE(-1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR FNUM<>2 .AND. FNUM<4 +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF .t., {3,.f.,.f.,.f.}, ORDSKIPUNIQUE(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF .t., {7,.f.,.f.,.f.}, ORDSKIPUNIQUE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF .t., {1,.t.,.f.,.f.}, ORDSKIPUNIQUE(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF .t., {16,.f.,.t.,.f.}, ORDSKIPUNIQUE() +RDDTESTC {15,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR RECNO()<>5 DESCEND +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF .t., {7,.f.,.f.,.f.}, ORDSKIPUNIQUE(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF .t., {3,.f.,.f.,.f.}, ORDSKIPUNIQUE() +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" FOR RECNO()<>5 +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF .t., {3,.f.,.f.,.f.}, ORDSKIPUNIQUE(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF .t., {7,.f.,.f.,.f.}, ORDSKIPUNIQUE() +RDDTESTF "TG_C", {7,.f.,.f.,.f.}, ORDSETFOCUS(0) +RDDTESTC {7,.f.,.f.,.f.}, SET DELETE ON +RDDTESTF .t., {7,.f.,.f.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTF "", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTC {15,.f.,.f.,.f.}, SET DELETE ON +RDDTESTF .t., {15,.f.,.f.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR tag TG_C to "_tst" +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.F.) +RDDTESTF .f., {15,.f.,.f.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.F.) +RDDTESTF .t., {3,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.F.) +RDDTESTF .t., {6,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.F.) +RDDTESTF .t., {15,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.F.) +RDDTESTF .f., {15,.f.,.f.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.T.) +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(0,"3") +RDDTESTF NIL, {15,.f.,.f.,.f.}, ORDSCOPE(1,"4") +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("1",10)+" ",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("1",10)+" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("2",10)+" ",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("2",10)+" ",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("5",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("5",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("1",10)+"*",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("1",10)+"*",.T.,.T.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("2",10)+"*",.T.,.F.) +RDDTESTF .f., {7,.f.,.f.,.f.}, DBSEEK(padr("2",10)+"*",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.F.) +RDDTESTF .t., {9,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.F.) +RDDTESTF .t., {12,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("5",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("5",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.T.) + +RETURN NIL diff --git a/harbour/tests/rddtest/make_c52.bat b/harbour/tests/rddtest/make_c52.bat new file mode 100644 index 0000000000..0a440ed1eb --- /dev/null +++ b/harbour/tests/rddtest/make_c52.bat @@ -0,0 +1,43 @@ +@echo off +rem +rem $Id$ +rem + +rem DBFCDX +clipper rddmktst /m/n/w/es2/d_TEST_CMPDIDX_ +if errorlevel 1 goto ERROR +rtlink fi rddmktst lib dbfcdx +if errorlevel 1 goto ERROR +del *.obj +rddmktst cdxcl52.prg dbfcdx +clipper cdxcl52 /m/n/w/es2 +if errorlevel 1 goto ERROR +rtlink fi cdxcl52 lib dbfcdx +if errorlevel 1 goto ERROR + +rem DBFNTX +clipper rddmktst /m/n/w/es2 +if errorlevel 1 goto ERROR +rtlink fi rddmktst lib dbfcdx +if errorlevel 1 goto ERROR +del *.obj +rddmktst ntxcl52.prg dbfntx +clipper ntxcl52 /m/n/w/es2 +if errorlevel 1 goto ERROR +rtlink fi ntxcl52 lib dbfcdx +if errorlevel 1 goto ERROR + +rem DBFCDX for ADS RDD +clipper rddmktst /m/n/w/es2/d_TEST_ADS_ /d_TEST_CMPDIDX_ +if errorlevel 1 goto ERROR +rtlink fi rddmktst lib dbfcdx +if errorlevel 1 goto ERROR +del *.obj +rddmktst adscl52.prg dbfcdx +clipper adscl52 /m/n/w/es2 +if errorlevel 1 goto ERROR +rtlink fi adscl52 lib dbfcdx +if errorlevel 1 goto ERROR + +:ERROR +if exist *.obj del *.obj diff --git a/harbour/tests/rddtest/make_c53.bat b/harbour/tests/rddtest/make_c53.bat new file mode 100644 index 0000000000..a2d74cb216 --- /dev/null +++ b/harbour/tests/rddtest/make_c53.bat @@ -0,0 +1,44 @@ +@echo off +rem +rem $Id$ +rem + +rem DBFCDX +clipper rddmktst /m/n/w/es2/d_TEST_DESCEND_ /d_TEST_UNIQUE_ /d_TEST_SCOPE_ /d_TEST_CMPDIDX_ +if errorlevel 1 goto ERROR +exospace fi rddmktst lib _dbfcdx, dbfcdx +if errorlevel 1 goto ERROR +del *.obj +rddmktst cdxcl53.prg dbfcdx +clipper cdxcl53 /m/n/w/es2 +if errorlevel 1 goto ERROR +exospace fi cdxcl53 lib _dbfcdx, dbfcdx +if errorlevel 1 goto ERROR + +rem DBFNTX +clipper rddmktst /m/n/w/es2 +if errorlevel 1 goto ERROR +exospace fi rddmktst lib _dbfcdx, dbfcdx +if errorlevel 1 goto ERROR +del *.obj +rddmktst ntxcl53.prg dbfntx +clipper ntxcl53 /m/n/w/es2 +if errorlevel 1 goto ERROR +exospace fi ntxcl53 lib _dbfcdx, dbfcdx +if errorlevel 1 goto ERROR + +rem DBFCDX for ADS RDD +clipper rddmktst /m/n/w/es2/d_TEST_ADS_ /d_TEST_SCOPE_ /d_TEST_CMPDIDX_ +if errorlevel 1 goto ERROR +exospace fi rddmktst lib _dbfcdx, dbfcdx +if errorlevel 1 goto ERROR +del *.obj +rddmktst adscl53.prg dbfcdx +clipper adscl53 /m/n/w/es2 +if errorlevel 1 goto ERROR +exospace fi adscl53 lib _dbfcdx, dbfcdx +if errorlevel 1 goto ERROR + + +:ERROR +if exist *.obj del *.obj diff --git a/harbour/tests/rddtest/ntxcl52.prg b/harbour/tests/rddtest/ntxcl52.prg new file mode 100644 index 0000000000..eef706a8a9 --- /dev/null +++ b/harbour/tests/rddtest/ntxcl52.prg @@ -0,0 +1,454 @@ +/* + * $Id$ + */ + +REQUEST dbfntx +#define _TESTRDD "dbfntx" +#include "rddtst.prg" + +FUNCTION test_main() + +RDDTESTC {0,.t.,.t.,.f.}, LOCAL n +RDDTESTF "DBFNTX", {0,.t.,.t.,.f.}, RDDSETDEFAULT() +RDDTESTC {1,.t.,.t.,.f.}, USE "_tst" SHARED +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE OFF +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FNUM to TG_N +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FSTR to TG_C +RDDTESTF "TG_C", {1,.t.,.t.,.f.}, ORDSETFOCUS() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .F.,.F.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .F.,.T.) +RDDTESTC {1,.t.,.t.,.f.}, SET DELETE OFF +RDDTESTC {15,.f.,.f.,.f.}, for n:=1 to 15 ; dbappend() ; replace FNUM with int((n+2)/3) ; replace FSTR with chr(FNUM+48) ; next +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbcommit() +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbunlock() +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS() +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0,.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0.5,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(0.5,.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(1.0,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(1.0,.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(2.0,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(2.0,.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(2.5,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(2.5,.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(5.0,.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(5.0,.T.,.T.) +RDDTESTF "TG_C", {16,.f.,.t.,.f.}, ORDSETFOCUS(2) +RDDTESTF "TG_C", {16,.f.,.t.,.f.}, ORDSETFOCUS() +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {13,.f.,.f.,.f.}, INDEX on FSTR to TG_C DESCEND +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR to TG_C +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTC {7,.f.,.f.,.f.}, INDEX on FSTR to TG_C FOR FNUM>2 .AND. FNUM<=4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR to TG_C FOR FNUM<>2 .AND. FNUM<4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTC {16,.t.,.t.,.f.}, INDEX on FSTR to TG_C FOR FNUM==6 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTC {13,.f.,.f.,.f.}, INDEX on FSTR to TG_C FOR RECNO()<>5 DESCEND +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {13,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR to TG_C FOR RECNO()<>5 +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF "TG_C", {16,.f.,.t.,.f.}, ORDSETFOCUS(0) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTF "", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTC {15,.f.,.f.,.f.}, SET DELETE ON +RDDTESTF .t., {15,.f.,.f.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR to TG_C +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.T.) + +RETURN NIL diff --git a/harbour/tests/rddtest/ntxcl53.prg b/harbour/tests/rddtest/ntxcl53.prg new file mode 100644 index 0000000000..3fc511bd0a --- /dev/null +++ b/harbour/tests/rddtest/ntxcl53.prg @@ -0,0 +1,454 @@ +/* + * $Id$ + */ + +REQUEST dbfntx +#define _TESTRDD "dbfntx" +#include "rddtst.prg" + +FUNCTION test_main() + +RDDTESTC {0,.t.,.t.,.f.}, LOCAL n +RDDTESTF "DBFNTX", {0,.t.,.t.,.f.}, RDDSETDEFAULT() +RDDTESTC {1,.t.,.t.,.f.}, USE "_tst" SHARED +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE OFF +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FNUM to TG_N +RDDTESTC {1,.t.,.t.,.f.}, INDEX on FSTR to TG_C +RDDTESTF "TG_C", {1,.t.,.t.,.f.}, ORDSETFOCUS() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTC {1,.t.,.f.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {1,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .T.,.F.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .F.,.F.) +RDDTESTF .f., {1,.t.,.t.,.f.}, DBSEEK("", .F.,.T.) +RDDTESTC {1,.t.,.t.,.f.}, SET DELETE OFF +RDDTESTC {15,.f.,.f.,.f.}, for n:=1 to 15 ; dbappend() ; replace FNUM with int((n+2)/3) ; replace FSTR with chr(FNUM+48) ; next +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbcommit() +RDDTESTF NIL, {15,.f.,.f.,.f.}, dbunlock() +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS() +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(0,.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(0,.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(0.5,.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(0.5,.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(1.0,.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(1.0,.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(2.0,.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(2.0,.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(2.5,.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(2.5,.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(5.0,.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(5.0,.T.,.T.) +RDDTESTF "TG_C", {1,.f.,.f.,.f.}, ORDSETFOCUS(2) +RDDTESTF "TG_C", {1,.f.,.f.,.f.}, ORDSETFOCUS() +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("", .T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {13,.f.,.f.,.f.}, INDEX on FSTR to TG_C DESCEND +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK("0",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK("1",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK("2",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK("3",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK("4",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK("5",.T.,.T.) +RDDTESTF .f., {13,.f.,.f.,.f.}, DBSEEK("6",.T.,.F.) +RDDTESTF .f., {13,.f.,.f.,.f.}, DBSEEK("6",.T.,.T.) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR to TG_C +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF "TG_C", {15,.f.,.f.,.f.}, ORDSETFOCUS(0) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTC {7,.f.,.f.,.f.}, INDEX on FSTR to TG_C FOR FNUM>2 .AND. FNUM<=4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOTO(12) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR to TG_C FOR FNUM<>2 .AND. FNUM<4 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBGOTO(10) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {9,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTC {16,.t.,.t.,.f.}, INDEX on FSTR to TG_C FOR FNUM==6 +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTC {13,.f.,.f.,.f.}, INDEX on FSTR to TG_C FOR RECNO()<>5 DESCEND +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {13,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR to TG_C FOR RECNO()<>5 +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {1,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBGOTO(5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF "TG_C", {16,.f.,.t.,.f.}, ORDSETFOCUS(0) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {10,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {5,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTF "", {15,.f.,.f.,.f.}, ORDSETFOCUS(1) +RDDTESTC {15,.f.,.f.,.f.}, SET DELETE ON +RDDTESTF .t., {15,.f.,.f.,.f.}, FLOCK() +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTO(1) +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBGOTO(3) +RDDTESTF NIL, {3,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBGOTO(6) +RDDTESTF NIL, {6,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBGOTO(13) +RDDTESTF NIL, {13,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBGOTO(14) +RDDTESTF NIL, {14,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOTO(15) +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(16) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBDELETE() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-10) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBSKIP(5) +RDDTESTF NIL, {2,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBSKIP(6) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(8) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(10) +RDDTESTF NIL, {8,.f.,.f.,.f.}, DBSKIP(-5) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(5) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBSKIP(-6) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(7) +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-8) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(20) +RDDTESTF NIL, {12,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {2,.t.,.f.,.f.}, DBSKIP(-20) +RDDTESTF .t., {2,.t.,.f.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, DELETE ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBCOMMIT() +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTOP() +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(0) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {16,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {16,.t.,.t.,.f.}, DBGOTO(0) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBGOTO(7) +RDDTESTF .t., {7,.f.,.f.,.f.}, DBRLOCK() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBRECALL() +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBUNLOCK() +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.t.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {4,.f.,.f.,.f.}, DBGOTO(4) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {7,.f.,.f.,.f.}, DBSKIP(-1) +RDDTESTF NIL, {11,.f.,.f.,.f.}, DBGOTO(11) +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBSKIP(1) +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE OFF +RDDTESTF .t., {16,.t.,.t.,.f.}, FLOCK() +RDDTESTC {16,.f.,.t.,.f.}, RECALL ALL +RDDTESTF NIL, {16,.f.,.t.,.f.}, DBUNLOCK() +RDDTESTC {16,.f.,.t.,.f.}, SET DELETE ON +RDDTESTF NIL, {1,.f.,.f.,.f.}, DBGOTOP() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBGOBOTTOM() +RDDTESTF NIL, {15,.f.,.f.,.f.}, DBCOMMIT() +RDDTESTC {1,.f.,.f.,.f.}, INDEX on FSTR to TG_C +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr("0",10)+" ",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+" ",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+" ",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+" ",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+" ",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+" ",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+" ",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr(" ",10)+"*",.T.,.T.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.F.) +RDDTESTF .f., {1,.f.,.f.,.f.}, DBSEEK(padr("0",10)+"*",.T.,.T.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.F.) +RDDTESTF .t., {1,.f.,.f.,.t.}, DBSEEK(padr("1",10)+"*",.T.,.T.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.F.) +RDDTESTF .t., {4,.f.,.f.,.t.}, DBSEEK(padr("2",10)+"*",.T.,.T.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.F.) +RDDTESTF .t., {7,.f.,.f.,.t.}, DBSEEK(padr("3",10)+"*",.T.,.T.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.F.) +RDDTESTF .t., {10,.f.,.f.,.t.}, DBSEEK(padr("4",10)+"*",.T.,.T.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.F.) +RDDTESTF .t., {13,.f.,.f.,.t.}, DBSEEK(padr("5",10)+"*",.T.,.T.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.F.) +RDDTESTF .f., {16,.f.,.t.,.f.}, DBSEEK(padr("6",10)+"*",.T.,.T.) + +RETURN NIL diff --git a/harbour/tests/rddtest/rddmktst.prg b/harbour/tests/rddtest/rddmktst.prg new file mode 100644 index 0000000000..19c35ed67a --- /dev/null +++ b/harbour/tests/rddtest/rddmktst.prg @@ -0,0 +1,812 @@ +/* + * $Id$ + */ + +//#define _TEST_ADS_ + +//#define _CLIPPER53_ + +//#define _TEST_DESCEND_ +//#define _TEST_UNIQUE_ +//#define _TEST_SCOPE_ +//#define _TEST_CMPDIDX_ + +#ifdef _TEST_ADS_ + #undef _TEST_DESCEND_ + #undef _TEST_UNIQUE_ +#endif + +#define _TEST_CREATE_ + +#include "rddtst.prg" + +#ifndef _TEST_CMPDIDX_ + #command RDDTEST INDEX on tag to [ FOR ] [ ] => ; + RDDTEST INDEX on to [ FOR ] [ ] +#endif + + +function test_main() +RDDTEST LOCAL n + +RDDTEST RDDSETDEFAULT() + +RDDTEST USE _DBNAME SHARED + +/* movments in empty DB */ +RDDTEST DBGOTOP() +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(0) +RDDTEST DBGOTO(0) +RDDTEST DBSKIP(1) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(0) +RDDTEST SET DELETE ON +RDDTEST DBGOTOP() +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(0) +RDDTEST DBGOTO(0) +RDDTEST DBSKIP(1) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(0) +RDDTEST SET DELETE OFF + +RDDTEST INDEX on FNUM tag TG_N to _DBNAME +RDDTEST INDEX on FSTR tag TG_C to _DBNAME + +RDDTEST ORDSETFOCUS() + +RDDTEST DBGOTOP() +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(0) +RDDTEST DBGOTO(0) +RDDTEST DBSKIP(1) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(0) +RDDTEST SET DELETE ON +RDDTEST DBGOTOP() +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(0) +RDDTEST DBGOTO(0) +RDDTEST DBSKIP(1) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(0) + +RDDTEST DBGOTO(0) +RDDTEST DBSEEK('', .t.,.f.) +RDDTEST DBSEEK('', .t.,.t.) +RDDTEST DBSEEK('', .f.,.f.) +RDDTEST DBSEEK('', .f.,.t.) + +RDDTEST SET DELETE OFF + +RDDTEST ; + for n:=1 to N_LOOP ;; + dbappend() ;; + replace FNUM with int((n+2)/3) ;; + replace FSTR with chr(FNUM+48) ;; + next + +RDDTEST dbcommit() +RDDTEST dbunlock() + +// seeking test +RDDTEST ORDSETFOCUS(1) +RDDTEST ORDSETFOCUS() +RDDTEST DBSEEK(0,.t.,.f.) +RDDTEST DBSEEK(0,.t.,.t.) +RDDTEST DBSEEK(0.5,.t.,.f.) +RDDTEST DBSEEK(0.5,.t.,.t.) +RDDTEST DBSEEK(1.0,.t.,.f.) +RDDTEST DBSEEK(1.0,.t.,.t.) +RDDTEST DBSEEK(2.0,.t.,.f.) +RDDTEST DBSEEK(2.0,.t.,.t.) +RDDTEST DBSEEK(2.5,.t.,.f.) +RDDTEST DBSEEK(2.5,.t.,.t.) +RDDTEST DBSEEK(5.0,.t.,.f.) +RDDTEST DBSEEK(5.0,.t.,.t.) +RDDTEST ORDSETFOCUS(2) +RDDTEST ORDSETFOCUS() + +RDDTEST DBSEEK('', .t.,.f.) +RDDTEST DBSEEK('', .t.,.t.) +RDDTEST DBSEEK(' ',.t.,.f.) +RDDTEST DBSEEK(' ',.t.,.t.) +RDDTEST DBSEEK('0',.t.,.f.) +RDDTEST DBSEEK('0',.t.,.t.) +RDDTEST DBSEEK('1',.t.,.f.) +RDDTEST DBSEEK('1',.t.,.t.) +RDDTEST DBSEEK('2',.t.,.f.) +RDDTEST DBSEEK('2',.t.,.t.) +RDDTEST DBSEEK('3',.t.,.f.) +RDDTEST DBSEEK('3',.t.,.t.) +RDDTEST DBSEEK('4',.t.,.f.) +RDDTEST DBSEEK('4',.t.,.t.) +RDDTEST DBSEEK('5',.t.,.f.) +RDDTEST DBSEEK('5',.t.,.t.) +RDDTEST DBSEEK('6',.t.,.f.) +RDDTEST DBSEEK('6',.t.,.t.) + +#ifdef _TEST_SCOPE_ +RDDTEST ORDSCOPE(TOPSCOPE,'3') +RDDTEST ORDSCOPE(BOTTOMSCOPE,'4') +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +RDDTEST DBSEEK('', .t.,.f.) +RDDTEST DBSEEK('', .t.,.t.) +RDDTEST DBSEEK(' ',.t.,.f.) +RDDTEST DBSEEK(' ',.t.,.t.) +RDDTEST DBSEEK('0',.t.,.f.) +RDDTEST DBSEEK('0',.t.,.t.) +RDDTEST DBSEEK('1',.t.,.f.) +RDDTEST DBSEEK('1',.t.,.t.) +RDDTEST DBSEEK('2',.t.,.f.) +RDDTEST DBSEEK('2',.t.,.t.) +RDDTEST DBSEEK('3',.t.,.f.) +RDDTEST DBSEEK('3',.t.,.t.) +RDDTEST DBSEEK('4',.t.,.f.) +RDDTEST DBSEEK('4',.t.,.t.) +RDDTEST DBSEEK('5',.t.,.f.) +RDDTEST DBSEEK('5',.t.,.t.) +RDDTEST DBSEEK('6',.t.,.f.) +RDDTEST DBSEEK('6',.t.,.t.) + +RDDTEST ORDSCOPE(TOPSCOPE,'3') +RDDTEST ORDSCOPE(BOTTOMSCOPE,'2') +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +RDDTEST DBSEEK('',.t.,.f.) +RDDTEST DBSEEK('',.t.,.t.) +RDDTEST DBSEEK('1',.t.,.f.) +RDDTEST DBSEEK('1',.t.,.t.) +RDDTEST DBSEEK('2',.t.,.f.) +RDDTEST DBSEEK('2',.t.,.t.) +RDDTEST DBSEEK('3',.t.,.f.) +RDDTEST DBSEEK('3',.t.,.t.) +RDDTEST DBSEEK('4',.t.,.f.) +RDDTEST DBSEEK('4',.t.,.t.) +#endif + +#ifdef _TEST_DESCEND_ +RDDTEST ORDDESCEND() +RDDTEST ORDDESCEND(,,.t.) +RDDTEST ORDDESCEND() +#endif +#ifdef _TEST_SCOPE_ +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +RDDTEST ORDSCOPE(TOPSCOPE,NIL) +RDDTEST ORDSCOPE(BOTTOMSCOPE,NIL) +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +#endif +RDDTEST DBSEEK('', .t.,.f.) +RDDTEST DBSEEK('', .t.,.t.) +RDDTEST DBSEEK(' ',.t.,.f.) +RDDTEST DBSEEK(' ',.t.,.t.) +RDDTEST DBSEEK('0',.t.,.f.) +RDDTEST DBSEEK('0',.t.,.t.) +RDDTEST DBSEEK('1',.t.,.f.) +RDDTEST DBSEEK('1',.t.,.t.) +RDDTEST DBSEEK('2',.t.,.f.) +RDDTEST DBSEEK('2',.t.,.t.) +RDDTEST DBSEEK('3',.t.,.f.) +RDDTEST DBSEEK('3',.t.,.t.) +RDDTEST DBSEEK('4',.t.,.f.) +RDDTEST DBSEEK('4',.t.,.t.) +RDDTEST DBSEEK('5',.t.,.f.) +RDDTEST DBSEEK('5',.t.,.t.) +RDDTEST DBSEEK('6',.t.,.f.) +RDDTEST DBSEEK('6',.t.,.t.) +#ifdef _TEST_SCOPE_ +RDDTEST ORDSCOPE(TOPSCOPE,'4') +RDDTEST ORDSCOPE(BOTTOMSCOPE,'3') +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +RDDTEST DBSEEK('', .t.,.f.) +RDDTEST DBSEEK('', .t.,.t.) +RDDTEST DBSEEK(' ',.t.,.f.) +RDDTEST DBSEEK(' ',.t.,.t.) +RDDTEST DBSEEK('0',.t.,.f.) +RDDTEST DBSEEK('0',.t.,.t.) +RDDTEST DBSEEK('1',.t.,.f.) +RDDTEST DBSEEK('1',.t.,.t.) +RDDTEST DBSEEK('2',.t.,.f.) +RDDTEST DBSEEK('2',.t.,.t.) +RDDTEST DBSEEK('3',.t.,.f.) +RDDTEST DBSEEK('3',.t.,.t.) +RDDTEST DBSEEK('4',.t.,.f.) +RDDTEST DBSEEK('4',.t.,.t.) +RDDTEST DBSEEK('5',.t.,.f.) +RDDTEST DBSEEK('5',.t.,.t.) +RDDTEST DBSEEK('6',.t.,.f.) +RDDTEST DBSEEK('6',.t.,.t.) + +RDDTEST ORDSCOPE(TOPSCOPE,'3') +RDDTEST ORDSCOPE(BOTTOMSCOPE,'4') +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +RDDTEST DBSEEK('', .t.,.f.) +RDDTEST DBSEEK('', .t.,.t.) +RDDTEST DBSEEK(' ',.t.,.f.) +RDDTEST DBSEEK(' ',.t.,.t.) +RDDTEST DBSEEK('0',.t.,.f.) +RDDTEST DBSEEK('0',.t.,.t.) +RDDTEST DBSEEK('1',.t.,.f.) +RDDTEST DBSEEK('1',.t.,.t.) +RDDTEST DBSEEK('2',.t.,.f.) +RDDTEST DBSEEK('2',.t.,.t.) +RDDTEST DBSEEK('3',.t.,.f.) +RDDTEST DBSEEK('3',.t.,.t.) +RDDTEST DBSEEK('4',.t.,.f.) +RDDTEST DBSEEK('4',.t.,.t.) +RDDTEST DBSEEK('5',.t.,.f.) +RDDTEST DBSEEK('5',.t.,.t.) +RDDTEST DBSEEK('6',.t.,.f.) +RDDTEST DBSEEK('6',.t.,.t.) +#endif + +RDDTEST INDEX on FSTR tag TG_C to _DBNAME DESCEND +RDDTEST DBSEEK('',.t.,.f.) +RDDTEST DBSEEK('',.t.,.t.) +RDDTEST DBSEEK(' ',.t.,.f.) +RDDTEST DBSEEK(' ',.t.,.t.) +RDDTEST DBSEEK('0',.t.,.f.) +RDDTEST DBSEEK('0',.t.,.t.) +RDDTEST DBSEEK('1',.t.,.f.) +RDDTEST DBSEEK('1',.t.,.t.) +RDDTEST DBSEEK('2',.t.,.f.) +RDDTEST DBSEEK('2',.t.,.t.) +RDDTEST DBSEEK('3',.t.,.f.) +RDDTEST DBSEEK('3',.t.,.t.) +RDDTEST DBSEEK('4',.t.,.f.) +RDDTEST DBSEEK('4',.t.,.t.) +RDDTEST DBSEEK('5',.t.,.f.) +RDDTEST DBSEEK('5',.t.,.t.) +RDDTEST DBSEEK('6',.t.,.f.) +RDDTEST DBSEEK('6',.t.,.t.) + +#ifdef _TEST_SCOPE_ +RDDTEST ORDSCOPE(TOPSCOPE,'4') +RDDTEST ORDSCOPE(BOTTOMSCOPE,'3') +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +RDDTEST DBSEEK('', .t.,.f.) +RDDTEST DBSEEK('', .t.,.t.) +RDDTEST DBSEEK(' ',.t.,.f.) +RDDTEST DBSEEK(' ',.t.,.t.) +RDDTEST DBSEEK('0',.t.,.f.) +RDDTEST DBSEEK('0',.t.,.t.) +RDDTEST DBSEEK('1',.t.,.f.) +RDDTEST DBSEEK('1',.t.,.t.) +RDDTEST DBSEEK('2',.t.,.f.) +RDDTEST DBSEEK('2',.t.,.t.) +RDDTEST DBSEEK('3',.t.,.f.) +RDDTEST DBSEEK('3',.t.,.t.) +RDDTEST DBSEEK('4',.t.,.f.) +RDDTEST DBSEEK('4',.t.,.t.) +RDDTEST DBSEEK('5',.t.,.f.) +RDDTEST DBSEEK('5',.t.,.t.) +RDDTEST DBSEEK('6',.t.,.f.) +RDDTEST DBSEEK('6',.t.,.t.) +#endif + +// skiping test +RDDTEST INDEX on FSTR tag TG_C to _DBNAME +RDDTEST DBGOTOP() +RDDTEST DBSKIP(0) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(0) +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(0) +RDDTEST DBSKIP(1) +RDDTEST DBSKIP(0) + +RDDTEST DBGOTO(1) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(1) +RDDTEST DBSKIP(5) +RDDTEST DBSKIP(5) +RDDTEST DBSKIP(5) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(-5) +RDDTEST DBSKIP(10) +RDDTEST DBSKIP(-5) +RDDTEST DBGOTO(16) +RDDTEST DBSKIP(-1) + +#ifdef _TEST_SCOPE_ +RDDTEST ORDSCOPE(TOPSCOPE,'3') +RDDTEST ORDSCOPE(BOTTOMSCOPE,'4') +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +#endif +RDDTEST DBGOTO(1) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(1) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(4) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(4) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(6) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(6) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(7) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(7) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(12) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(12) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(13) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(13) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(14) +RDDTEST DBSKIP(-1) +RDDTEST DBGOTO(16) +RDDTEST DBSKIP(-1) + +RDDTEST ORDSETFOCUS(0) +RDDTEST DBGOTOP() +RDDTEST DBSKIP(-1) +RDDTEST DBGOTOP() +RDDTEST DBSKIP(-10) + +RDDTEST INDEX on FSTR tag TG_C to _DBNAME FOR FNUM>2 .and. FNUM<=4 +RDDTEST DBGOTO(1) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(1) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(4) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(4) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(6) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(6) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(7) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(7) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(12) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(12) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(13) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(13) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(14) +RDDTEST DBSKIP(-1) +RDDTEST DBGOTO(16) +RDDTEST DBSKIP(-1) + +RDDTEST INDEX on FSTR tag TG_C to _DBNAME FOR FNUM!=2 .and. FNUM<4 +RDDTEST DBGOTO(1) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(1) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(4) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(4) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(7) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(7) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(10) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(10) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(13) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(13) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(14) +RDDTEST DBSKIP(-1) +RDDTEST DBGOTO(16) +RDDTEST DBSKIP(-1) + + +RDDTEST DBGOTOP() +RDDTEST DBSKIP(1) +RDDTEST DBGOTOP() +RDDTEST DBSKIP(-1) + +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(1) +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(-1) + +#ifdef _TEST_SCOPE_ +RDDTEST ORDSCOPE(TOPSCOPE,'5') +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +#endif +RDDTEST DBGOTO(1) +RDDTEST DBGOTOP() +RDDTEST DBGOBOTTOM() + +RDDTEST INDEX on FSTR tag TG_C to _DBNAME FOR FNUM==6 +RDDTEST DBGOTO(1) +RDDTEST DBGOTOP() +RDDTEST DBGOBOTTOM() + +#ifdef _TEST_SCOPE_ +RDDTEST ORDSCOPE() +RDDTEST ORDSCOPE(TOPSCOPE) +RDDTEST ORDSCOPE(BOTTOMSCOPE) +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +RDDTEST ORDSCOPE(TOPSCOPE,NIL) +RDDTEST ORDSCOPE(BOTTOMSCOPE,NIL) +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +RDDTEST ORDSCOPE(TOPSCOPE,NIL) +RDDTEST ORDSCOPE(BOTTOMSCOPE,NIL) +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +RDDTEST ORDSCOPE(TOPSCOPE,{||'3'}) +RDDTEST ORDSCOPE(BOTTOMSCOPE,{||'4'}) +RDDTEST DBORDERINFO(DBOI_SCOPETOP) +RDDTEST DBORDERINFO(DBOI_SCOPEBOTTOM) +RDDTEST ORDSCOPE({},'3') +RDDTEST ORDSCOPE(BOTTOMSCOPE,'4') +RDDTEST ORDSCOPE() +RDDTEST ORDSCOPE(TOPSCOPE) +RDDTEST ORDSCOPE(BOTTOMSCOPE) +RDDTEST ORDSCOPE(TOPSCOPE) +RDDTEST ORDSCOPE(BOTTOMSCOPE) +RDDTEST ORDSCOPE(TOPSCOPE,'3') +RDDTEST ORDSCOPE(0) +RDDTEST ORDSCOPE(1) +RDDTEST ORDSCOPE(2) +RDDTEST ORDSCOPE(3) +#ifdef _TEST_DESCEND_ +RDDTEST ORDDESCEND(,,.t.) +RDDTEST ORDSCOPE(0) +RDDTEST ORDSCOPE(1) +RDDTEST ORDSCOPE(2) +RDDTEST ORDSCOPE(3) +RDDTEST ORDDESCEND(,,.f.) +#endif +RDDTEST ORDSCOPE(TOPSCOPE,NIL) +#endif + +#ifdef _TEST_UNIQUE_ +RDDTEST INDEX on FSTR tag TG_C to _DBNAME +RDDTEST DBGOTOP() +RDDTEST ORDSKIPUNIQUE() +RDDTEST ORDSKIPUNIQUE(1) +RDDTEST ORDSKIPUNIQUE(2) +RDDTEST ORDSKIPUNIQUE(-1) +RDDTEST ORDSKIPUNIQUE(-2) +RDDTEST DBGOTOP() +RDDTEST ORDSKIPUNIQUE(-1) +RDDTEST ORDSKIPUNIQUE() +RDDTEST DBGOBOTTOM() +RDDTEST ORDSKIPUNIQUE(-1) +RDDTEST ORDSKIPUNIQUE() +RDDTEST ORDSKIPUNIQUE() +RDDTEST ORDSKIPUNIQUE(-1) + +RDDTEST ORDSETFOCUS(0) +RDDTEST DBGOTO(1) +RDDTEST ORDSKIPUNIQUE() +RDDTEST ORDSKIPUNIQUE(-1) + +RDDTEST INDEX on FSTR tag TG_C to _DBNAME FOR FNUM!=2 .and. FNUM<4 +RDDTEST DBGOTO(4) +RDDTEST ORDSKIPUNIQUE(-1) +RDDTEST DBGOTO(4) +RDDTEST ORDSKIPUNIQUE() +RDDTEST DBGOTO(13) +RDDTEST ORDSKIPUNIQUE(-1) +RDDTEST DBGOTO(13) +RDDTEST ORDSKIPUNIQUE() +#endif + +RDDTEST INDEX on FSTR tag TG_C to _DBNAME FOR RECNO()!=5 DESCEND +RDDTEST DBGOTO(5) +RDDTEST DBSKIP(-1) +RDDTEST DBGOTO(5) +RDDTEST DBSKIP(1) +#ifdef _TEST_UNIQUE_ +RDDTEST DBGOTO(5) +RDDTEST ORDSKIPUNIQUE(-1) +RDDTEST DBGOTO(5) +RDDTEST ORDSKIPUNIQUE() +#endif + +RDDTEST INDEX on FSTR tag TG_C to _DBNAME FOR RECNO()!=5 +RDDTEST DBGOTO(5) +RDDTEST DBSKIP(-1) +RDDTEST DBGOTO(5) +RDDTEST DBSKIP(1) +#ifdef _TEST_UNIQUE_ +RDDTEST DBGOTO(5) +RDDTEST ORDSKIPUNIQUE(-1) +RDDTEST DBGOTO(5) +RDDTEST ORDSKIPUNIQUE() +#endif + +/* filter test and skipping */ +RDDTEST ORDSETFOCUS(0) +RDDTEST SET DELETE ON +RDDTEST FLOCK() +RDDTEST DBGOTO(1) +RDDTEST DBDELETE() +RDDTEST DBGOTO(3) +RDDTEST DBDELETE() +RDDTEST DBGOTO(6) +RDDTEST DBDELETE() +RDDTEST DBGOTO(7) +RDDTEST DBDELETE() +RDDTEST DBGOTO(13) +RDDTEST DBDELETE() +RDDTEST DBGOTO(14) +RDDTEST DBDELETE() +RDDTEST DBGOTO(15) +RDDTEST DBDELETE() +RDDTEST DBGOTO(16) +RDDTEST DBDELETE() +RDDTEST DBCOMMIT() +RDDTEST DBUNLOCK() + +RDDTEST DBGOTOP() +RDDTEST DBSKIP(-1) +RDDTEST DBGOTOP() +RDDTEST DBSKIP(-10) +RDDTEST DBSKIP(5) +RDDTEST DBSKIP(-5) +RDDTEST DBSKIP(6) +RDDTEST DBSKIP(-7) +RDDTEST DBSKIP(8) +RDDTEST DBSKIP(-20) +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(1) +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(10) +RDDTEST DBSKIP(-5) +RDDTEST DBSKIP(5) +RDDTEST DBSKIP(-6) +RDDTEST DBSKIP(7) +RDDTEST DBSKIP(-8) +RDDTEST DBSKIP(20) +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(-20) + +RDDTEST FLOCK() +RDDTEST DELETE ALL +RDDTEST DBUNLOCK() +RDDTEST DBGOTOP() +RDDTEST DBGOBOTTOM() +RDDTEST DBGOTO(7) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(7) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(1) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(0) +RDDTEST DBGOTO(0) +RDDTEST DBSKIP(1) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(7) +RDDTEST DBRLOCK() +RDDTEST DBRECALL() +RDDTEST DBUNLOCK() +RDDTEST DBGOTO(4) +RDDTEST DBSKIP(-1) +RDDTEST DBGOTO(4) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(11) +RDDTEST DBSKIP(-1) +RDDTEST DBGOTO(11) +RDDTEST DBSKIP(1) + +RDDTEST SET DELETE OFF +RDDTEST FLOCK() +RDDTEST RECALL ALL +RDDTEST DBUNLOCK() +RDDTEST SET DELETE ON +RDDTEST DBGOTOP() +RDDTEST DBGOBOTTOM() +RDDTEST DBCOMMIT() + +/* and the same but with active index */ +RDDTEST ORDSETFOCUS(1) +RDDTEST SET DELETE ON +RDDTEST FLOCK() +RDDTEST DBGOTO(1) +RDDTEST DBDELETE() +RDDTEST DBGOTO(3) +RDDTEST DBDELETE() +RDDTEST DBGOTO(6) +RDDTEST DBDELETE() +RDDTEST DBGOTO(7) +RDDTEST DBDELETE() +RDDTEST DBGOTO(13) +RDDTEST DBDELETE() +RDDTEST DBGOTO(14) +RDDTEST DBDELETE() +RDDTEST DBGOTO(15) +RDDTEST DBDELETE() +RDDTEST DBGOTO(16) +RDDTEST DBDELETE() +RDDTEST DBCOMMIT() +RDDTEST DBUNLOCK() + +RDDTEST DBGOTOP() +RDDTEST DBSKIP(-1) +RDDTEST DBGOTOP() +RDDTEST DBSKIP(-10) +RDDTEST DBSKIP(5) +RDDTEST DBSKIP(-5) +RDDTEST DBSKIP(6) +RDDTEST DBSKIP(-7) +RDDTEST DBSKIP(8) +RDDTEST DBSKIP(-20) +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(1) +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(10) +RDDTEST DBSKIP(-5) +RDDTEST DBSKIP(5) +RDDTEST DBSKIP(-6) +RDDTEST DBSKIP(7) +RDDTEST DBSKIP(-8) +RDDTEST DBSKIP(20) +RDDTEST DBGOBOTTOM() +RDDTEST DBSKIP(-20) + +RDDTEST FLOCK() +RDDTEST DELETE ALL +RDDTEST DBCOMMIT() +RDDTEST DBUNLOCK() +RDDTEST DBGOTOP() +RDDTEST DBGOBOTTOM() +RDDTEST DBGOTO(7) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(7) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(1) +RDDTEST DBSKIP(-1) +RDDTEST DBSKIP(0) +RDDTEST DBGOTO(0) +RDDTEST DBSKIP(1) +RDDTEST DBSKIP(-1) + +RDDTEST DBGOTO(0) +RDDTEST DBSKIP(1) +/* This test give unrepeatable results in Clipper and I don't know why yet, + so I temporary diable it */ +#ifdef _DISABLED_ +RDDTEST DBSEEK('', .t.,.f.) +RDDTEST DBSEEK('', .t.,.t.) +RDDTEST DBSEEK('', .f.,.f.) +RDDTEST DBSEEK('', .f.,.t.) +RDDTEST DBSEEK('2', .t.,.f.) +RDDTEST DBSEEK('2', .t.,.t.) +RDDTEST DBSEEK('2', .f.,.f.) +RDDTEST DBSEEK('2', .f.,.t.) +#endif + +RDDTEST DBGOTO(7) +RDDTEST DBRLOCK() +RDDTEST DBRECALL() +RDDTEST DBUNLOCK() +RDDTEST DBGOTO(4) +RDDTEST DBSKIP(-1) +RDDTEST DBGOTO(4) +RDDTEST DBSKIP(1) +RDDTEST DBGOTO(11) +RDDTEST DBSKIP(-1) +RDDTEST DBGOTO(11) +RDDTEST DBSKIP(1) + +RDDTEST SET DELETE OFF +RDDTEST FLOCK() +RDDTEST RECALL ALL +RDDTEST DBUNLOCK() +RDDTEST SET DELETE ON +RDDTEST DBGOTOP() +RDDTEST DBGOBOTTOM() +RDDTEST DBCOMMIT() + +RDDTEST INDEX on FSTR tag TG_C to _DBNAME +RDDTEST DBSEEK(padr(' ',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr(' ',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('0',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('0',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('1',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('1',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('2',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('2',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('3',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('3',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('4',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('4',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('5',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('5',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('6',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('6',10)+" ",.t.,.t.) + +RDDTEST DBSEEK(padr(' ',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr(' ',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('0',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('0',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('1',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('1',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('2',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('2',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('3',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('3',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('4',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('4',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('5',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('5',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('6',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('6',10)+"*",.t.,.t.) + +#ifdef _TEST_SCOPE_ +RDDTEST ORDSCOPE(TOPSCOPE,'3') +RDDTEST ORDSCOPE(BOTTOMSCOPE,'4') + +RDDTEST DBSEEK(padr(' ',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr(' ',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('0',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('0',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('1',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('1',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('2',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('2',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('3',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('3',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('4',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('4',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('5',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('5',10)+" ",.t.,.t.) +RDDTEST DBSEEK(padr('6',10)+" ",.t.,.f.) +RDDTEST DBSEEK(padr('6',10)+" ",.t.,.t.) + +RDDTEST DBSEEK(padr(' ',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr(' ',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('0',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('0',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('1',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('1',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('2',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('2',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('3',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('3',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('4',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('4',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('5',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('5',10)+"*",.t.,.t.) +RDDTEST DBSEEK(padr('6',10)+"*",.t.,.f.) +RDDTEST DBSEEK(padr('6',10)+"*",.t.,.t.) +#endif + +return nil diff --git a/harbour/tests/rddtest/rddtst.prg b/harbour/tests/rddtest/rddtst.prg new file mode 100644 index 0000000000..cdb73ed79d --- /dev/null +++ b/harbour/tests/rddtest/rddtst.prg @@ -0,0 +1,250 @@ +/* + * $Id$ + */ + +//#define _TEST_CREATE_ + +#ifndef N_LOOP + #define N_LOOP 15 +#endif + +#ifndef EOL + #define EOL chr(13)+chr(10) +#endif + +#command ? => outstd(EOL) +#command ? => outstd(, EOL) +#command ?? => +#command ?? => outstd() + +//#command RDDTEST => rdd_test( ) +//#command RDDTEST , , => rdd_test( #, <{f}>, , ) + +#ifdef _TEST_CREATE_ + #command RDDTESTC <*x*> => ; rddtst_wr( # ) + #command RDDTESTF => rddtst_wr( #, ) + #command RDDTEST <*x*> => RDDTESTC + #command RDDTEST => RDDTESTF +#else + #command RDDTESTC , <*x*> => ; rddtst_tst( #, ) + #command RDDTESTF , , => rddtst_tst( #, , , ) + //#command RDDTEST , <*x*> => RDDTESTC +#endif +#define _DBNAME "_tst" + +REQUEST DBFCDX +field FSTR, FNUM + +#ifdef _TEST_CREATE_ + static hMake := -1 +#endif +static nTested := 0 +static nErrors := 0 + +/* list of functions which may return unexpected value in Clipper + instead of documented NIL. If you will find others please add them */ +static aBadRetFunc:={ "DBSKIP", "DBGOTO", "DBDELETE", "DBRECALL", ; + "DBUNLOCK", "DBCOMMIT" } + +#ifdef _TEST_SCOPE_ +#include "ord.ch" +#include "dbinfo.ch" +#endif + +#ifdef __HARBOUR__ +#ifdef _TEST_ADS_ +#include "ads.ch" +REQUEST ADS +init proc adstest_init() +rddRegister( "ADS", 1 ) +AdsSetServerType( ADS_LOCAL_SERVER ) +//__rddSetDefault( "ADS" ) +return +#endif +#endif + +//REQUEST DBSEEK, DBGOTO, DBGOTOP, DBGOBOTTOM, ORDSETFOCUS, ORDSCOPE + +#ifdef _TEST_CREATE_ + function main(cOutFile, rdd) + test_init(rdd,cOutFile) + test_main() + test_close() + return nil +#else + function main(rdd) + test_init(rdd) + test_main() + test_close() + return nil +#endif + +static function test_init(rdd,cOutFile) +local n, cOut, aDb:={{"FSTR", "C", 10, 0},{"FNUM", "N", 10, 0}} + +if empty(rdd) + #ifdef _TESTRDD + rdd:=_TESTRDD + #else + rdd:="DBFCDX" + #endif +endif +rddSetDefault(rdd) +#ifdef _TEST_CREATE_ + if empty(cOutFile) + ? "Syntax: []" + quit + elseif (hMake:=fcreate(cOutFile))==-1 + ? "Cannot create file: ", cOutFile + quit + endif + cOut:="" + #ifdef _TEST_ADS_ + cOut+='#define _TEST_ADS_'+EOL + #endif + cOut+=; + 'REQUEST '+rdd+EOL+; + '#define _TESTRDD "'+rdd+'"'+EOL+; + '#include "rddtst.prg"'+EOL+; + EOL+; + 'FUNCTION test_main()'+EOL+; + EOL + if !fwrite(hMake, cOut)==len(cOut) + ? "write error." + quit + endif +#endif + +aeval(directory("./"+_DBNAME+".??x"),{|x|ferase(x[1])}) +aeval(directory("./TG_?.??x"),{|x|ferase(x[1])}) +ferase("./"+_DBNAME+".dbf") +? "RDD: "+rdd +? "creating databse and index..." +dbcreate(_DBNAME, aDb) +/* +use _DBNAME shared + +for n:=1 to N_LOOP + dbappend() + replace FNUM with int((n+2)/3) + replace FSTR with chr(FNUM+48) + //? FNUM, FSTR, recno(), eof(), bof() +next +dbcommit() +dbunlock() +*/ +return nil + + +static function test_close() +local cOut +#ifdef _TEST_CREATE_ + if hMake != -1 + cOut:=EOL+; + 'RETURN NIL'+EOL + if !fwrite(hMake, cOut)==len(cOut) + ? "write error." + quit + endif + fclose(hMake) + endif +#else + ? + ? "Number of tests: "+ltrim(str(nTested)) + ? "Number of errors: "+ltrim(str(nErrors)) +#endif +dbclosearea() +aeval(directory("./"+_DBNAME+".??x"),{|x|ferase(x[1])}) +aeval(directory("./TG_?.??x"),{|x|ferase(x[1])}) +ferase("./"+_DBNAME+".dbf") +? +return nil + +static procedure rdd_retval() +return + +static function rdd_state() +return {recno(), bof(), eof(), found()} + + +static function itm2str(itm) +local cStr:="", i +if itm==NIL + cStr+="NIL" +elseif valtype(itm)=="C" + cStr+='"'+strtran(itm,'"','"+chr(34)+"')+'"' +elseif valtype(itm)=="N" + cStr+=ltrim(str(itm)) +elseif valtype(itm)=="L" + cStr+=iif(itm,".t.",".f.") +elseif valtype(itm)=="D" + cStr+="CTOD("+DTOC(itm)+")" +elseif valtype(itm)=="B" + cStr+="{||"+itm2str(eval(itm))+"}" +elseif valtype(itm)=="A" + cStr+="{" + for i:=1 to len(itm) + cStr+=iif(i==1,"",",")+itm2str(itm[i]) + next + cStr+="}" +endif +return cStr + + +#ifdef _TEST_CREATE_ + static function rddtst_wr(cAction, xRet) + local aState, cOut + + if ascan( aBadRetFunc, {|x| upper(cAction) = x + "(" } ) != 0 + xRet := NIL + endif + aState:=rdd_state() + if pcount()>1 + cOut:="RDDTESTF "+itm2str(xRet)+", "+itm2str(aState)+", "+cAction+EOL + else + cOut:="RDDTESTC "+itm2str(aState)+", "+cAction+EOL + endif + if !fwrite(hMake, cOut)==len(cOut) + ? "write error." + quit + endif + return nil +#else + //rddtst_tst( #, , , ) + static function rddtst_tst(cAction, aExState, xRet, xExRet) + local aState, lOK:=(.t.), s1, s2, i + + aState:=rdd_state() + if pcount()>=4 + if ascan( aBadRetFunc, {|x| upper(cAction) = x + "(" } ) != 0 + xRet := NIL + endif + if !valtype(xRet)==valtype(xExRet) .or.; + !iif(valtype(xRet)=="B", eval(xRet)==eval(xExRet), xRet==xExRet) + lOK:=(.f.) + endif + s1:=itm2str(xRet) + s2:=itm2str(xExRet) + s1:=padr(s1, max(len(s1),len(s2))+1) + s2:=padr(s2, len(s1)) + else + s1:=s2:="" + endif + if !empty(aExState) .and. lOK + for i:=1 to len(aExState) + if !valtype(aState[i])==valtype(aExState[i]) .or. !aState[i]==aExState[i] + lOK:=(.f.) + exit + endif + next + endif + ? + ?? iif(lOK,"OK ", "ERR ")+cAction+" => "+s1+itm2str(aState) + if !lOK + ? + ?? " "+cAction+" => "+s2+itm2str(aExState) + nErrors++ + endif + nTested++ + return nil +#endif diff --git a/harbour/utils/hbtest/hbtest.prg b/harbour/utils/hbtest/hbtest.prg index 5e7cfd794b..1785ceef4a 100644 --- a/harbour/utils/hbtest/hbtest.prg +++ b/harbour/utils/hbtest/hbtest.prg @@ -286,7 +286,7 @@ STATIC PROCEDURE TEST_BEGIN( cParam ) //rddSetDefault( "DBFCDX" ) #endif - dbCreate( "!TEMP!.dbf",; + dbCreate( "_hbtmp_.dbf",; { { "TYPE_C" , "C", 15, 0 } ,; { "TYPE_C_E" , "C", 15, 0 } ,; { "TYPE_D" , "D", 8, 0 } ,; @@ -300,7 +300,7 @@ STATIC PROCEDURE TEST_BEGIN( cParam ) { "TYPE_L" , "L", 1, 0 } ,; { "TYPE_L_E" , "L", 1, 0 } } ) - USE ( "!TEMP!.dbf" ) NEW ALIAS w_TEST EXCLUSIVE + USE ( "_hbtmp_.dbf" ) NEW ALIAS w_TEST EXCLUSIVE dbAppend() @@ -407,8 +407,8 @@ STATIC PROCEDURE TEST_END() dbSelectArea( "w_TEST" ) dbCloseArea() - FErase( "!TEMP!.dbf" ) - FErase( "!TEMP!.dbt" ) + FErase( "_hbtmp_.dbf" ) + FErase( "_hbtmp_.dbt" ) s_nEndTime := Seconds()