jestjs/jest

jest fails to work when temp dir is on a RAM drive (Windows)

Open

#7978 opened on Feb 25, 2019

View on GitHub
 (7 comments) (15 reactions) (0 assignees)TypeScript (45,361 stars) (6,653 forks)batch import
:bug: BugHelp WantedPinnedWindows

Description

🐛 Bug Report

Jest fails on start with error Error: EISDIR: illegal operation on a directory, realpath 'B:\Temp' when windows temp dir is set on a RAM drive

Last working version

Worked in 23.6.0 Stopped working in 24.1.0

To Reproduce

  1. Follow the Getting Started guide and create a simple test suite
  2. Create RAM drive using ImDisk tool (B: in my case)
  3. Point windows temporary directory (%TEMP% env variable) to a directory on RAM drive (B:\Temp) (a reboot may be required)
  4. Open command line, go to where you created test suite and run npm run test

Actual behavior

I get an error like this:

Error: ENOENT: no such file or directory, realpath 'B:\Temp'
    at Function.realpathSync.native (fs.js:1514:3)
    at realpathSync (D:\Projects\***\node_modules\realpath-native\index.js:29:28)
    ...

Expected behavior

I expect jest to run tests.

Run npx envinfo --preset jest

  System:
    OS: Windows 10
    CPU: (4) x64 Intel(R) Core(TM) i7-6600U CPU @ 2.60GHz
  Binaries:
    Node: 10.14.1 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.9.2 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
    npm: 6.3.0 - C:\Program Files\nodejs\npm.CMD

Contributor guide