# dsearch lookup
+# This test will fail on a case-insensitive filesystem (e.g. MacOS default)
exim -be
-${lookup{TESTNUM.tst}dsearch{DIR/aux-fixed}{$value}{FAIL}}
-${lookup{TESTNUM.TST}dsearch{DIR/aux-fixed}{$value}{FAIL}}
-${lookup{TESTNUM.TST}dsearch{DIR/AUX-fixed}{$value}{FAIL}}
+dsearch specifics
+ok: ${lookup{TESTNUM.tst} dsearch{DIR/aux-fixed}{$value}{FAIL}}
+fail: ${lookup{TESTNUM.file_not_here} dsearch{DIR/aux-fixed}{$value}{FAIL}}
+fail: ${lookup{TESTNUM.tst} dsearch{DIR/dir_not_here}{$value}{FAIL}}
+fail(case): ${lookup{TESTNUM.TST} dsearch{DIR/aux-fixed}{$value}{FAIL}}
+fail(case): ${lookup{TESTNUM.TST} dsearch{DIR/AUX-fixed}{$value}{FAIL}}
+fail(path): ${lookup{TESTNUM.tst} dsearch{.}{$value}{OTHER}}
+ok,full: ${lookup{TESTNUM.tst} dsearch,ret=full {DIR/aux-fixed}{$value}{FAIL}}
+ok,key: ${lookup{TESTNUM.tst} dsearch,ret=key {DIR/aux-fixed}{$value}{FAIL}}
+ok,file: ${lookup{TESTNUM.tst} dsearch,filter=file {DIR/aux-fixed}{$value}{FAIL}}
+fail,file: ${lookup{TESTNUM.dir} dsearch,filter=file {DIR/aux-fixed}{$value}{FAIL}}
+ok,dir: ${lookup{TESTNUM.dir} dsearch,filter=dir {DIR/aux-fixed}{$value}{FAIL}}
+fail,dir: ${lookup{TESTNUM.tst} dsearch,filter=dir {DIR/aux-fixed}{$value}{FAIL}}
+ok,subdir: ${lookup{TESTNUM.dir} dsearch,filter=subdir {DIR/aux-fixed}{$value}{FAIL}}
+fail,subdir:${lookup{..} dsearch,filter=subdir {DIR/aux-fixed}{$value}{FAIL}}
+fail,subdir:${lookup{TESTNUM.tst} dsearch,filter=subdir {DIR/aux-fixed}{$value}{FAIL}}
+
+cachelayer tests
+fail: ${lookup{test-data} dsearch {DIR/} {$value}{FAIL}}
+createfile: ${run {/bin/cp DIR/aux-fixed/TESTNUM.tst DIR/test-data} {OK}{FAIL}}
+fail,cached:${lookup{test-data} dsearch {DIR/} {$value}{FAIL}}
+ok,no_rd ${lookup{test-data} dsearch,cache=no_rd {DIR/} {$value}{FAIL}}
+delfile: ${run {/bin/rm DIR/test-data} {OK}{FAIL}}
+ok,cached: ${lookup{test-data} dsearch {DIR/} {$value}{FAIL}}
+fail,no_rd ${lookup{test-data} dsearch,cache=no_rd {DIR/} {$value}{FAIL}}
+fail: ${lookup{test-data} dsearch {DIR/} {$value}{FAIL}}
+****
+#
+1
+exim tainted@test.ex
****