substack/tape — pull request #10 by Raynos (2012-12-12 00:58:53+00:00)
Title: Synchronous race conditions

If `running = false` is set earlier then the following breaks

```
test("1", syncTest)
test("2", asyncTest)
test("3", otherSyncTest)
```

Each one of the tests does its process.nextTick either running or pushing into pending.

This mean "1" runs and finishes synchronously, "2" runs and keeps running
"3" gets added to pending because "2" is running.

But then "1" empties the pending queue on process.nextTick and both "2" and "3" run in parallel.