add isDir test