add file system test case; refactor