It will be 0 if $read returned $null even if test is in the file.
This is very wrong! If test is found in the file $readn will return the line it was found. $readn will be 0 ONLY if it is NOT found.
Try:
/write -c test.txt aaa
/write test.txt bbb
/write test.txt ccc
//echo $read(test.txt,s,ccc) --- $readn
//echo $read(test.txt,s,blah) --- $readn
This will echo:
--- 3
--- 0