webpack / memory-fs

[DEPRECATED use memfs instead] A simple in-memory filesystem. Holds data in a javascript object.
MIT License
882 stars 88 forks source link

fs.existsSync(path.resolve('/')) returns false on *nix, but true on windows. #38

Open lucastheisen opened 7 years ago

lucastheisen commented 7 years ago

This seems wrong. I am trying to make a set of unit tests work cross platform by sticking to path methods for building paths. When i use path.resolve('/') on windows i get C:\, and on *nix, unsurprisingly, i get /. However, if i test to see if root exists:

function clear(): void {
  console.log(`check ${root}`)
  if (fs.existsSync(root)) {
    console.log(`iterate over ${root}`)
    fs.readdirSync(root).forEach(dir => {
      fs.rmdirSync(path.join(root, dir))
    })
  }
}

It is true on windows, and false on *nix. It seems to me that the root path should always exist...