diff --git a/test/common/README.md b/test/common/README.md index a71b37ee935740..f064ab6e7e14be 100644 --- a/test/common/README.md +++ b/test/common/README.md @@ -944,13 +944,18 @@ The realpath of the testing temporary directory. Deletes and recreates the testing temporary directory. -The first time `refresh()` runs, it adds a listener to process `'exit'` that +The first time `refresh()` runs, it adds a listener to process `'exit'` that cleans the temporary directory. Thus, every file under `tmpdir.path` needs to be closed before the test completes. A good way to do this is to add a listener to process `'beforeExit'`. If a file needs to be left open until Node.js completes, use a child process and call `refresh()` only in the parent. +It is usually only necessary to call `refresh()` once in a test file. +Avoid calling it more than once in an asynchronous context as one call +might refresh the temporary directory of a different context, causing +the test to fail somewhat mysteriously. + ## UDP pair helper The `common/udppair` module exports a function `makeUDPPair` and a class