key: "vfs.file.exists[file.txt]"
test case: file exists, include all
key: "vfs.file.exists[file.txt, all]"
test case: file exists, exclude sockets
key: "vfs.file.exists[file.txt,, sock]"
test case: file does not exist
key: "vfs.file.exists[nonexistent.txt]"
test case: file exist but is excluded
key: "vfs.file.exists[file.txt,, file]"
test case: empty file name
error: "Invalid first parameter."
test case: too many parameters
key: "vfs.file.exists[foo, bar, buz, qux]"
error: "Too many parameters."
test case: invalid "include types" parameter
key: "vfs.file.exists[foo, bar]"
error: "Invalid type \"bar\"."
test case: invalid "exclude types" parameter
key: "vfs.file.exists[foo, file, baz]"
error: "Invalid type \"baz\"."
test case: invalid both "include types" and "exclude types" parameters
key: "vfs.file.exists[foo, bar, baz]"
error: "Invalid type \"bar\"."