File tree Expand file tree Collapse file tree 1 file changed +23
-0
lines changed Expand file tree Collapse file tree 1 file changed +23
-0
lines changed Original file line number Diff line number Diff line change 1+ return if window ? or testingBrowser?
2+
3+ {EventEmitter } = require ' events'
4+ {join } = require ' path'
5+ {cwd } = require ' process'
6+
7+
8+ test " the coffeescript package exposes all members as named exports in Node" , ->
9+ packageEntry = join cwd (), ' lib/coffeescript/index.js'
10+
11+ requiredPackage = require packageEntry
12+ requiredKeys = Object .keys requiredPackage
13+
14+ importedPackage = await import (packageEntry)
15+ importedKeys = new Set Object .keys (importedPackage)
16+
17+ # In `command.coffee`, CoffeeScript extends a `new EventEmitter`;
18+ # we want to ignore these additional added keys.
19+ eventEmitterKeys = new Set Object .getOwnPropertyNames (Object .getPrototypeOf (new EventEmitter ))
20+
21+ for key in requiredKeys when not eventEmitterKeys .has (key)
22+ # Use `eq` test so that missing keys have their names printed in the error message.
23+ eq (if importedKeys .has (key) then key else undefined ), key
You can’t perform that action at this time.
0 commit comments