`ENOENT`: A component of path does not exist, or path is an empty string.
`file_exists` is check a file is existed, so I think ENOENT is more strict.