Skip to content

Windows 10 test failures not reflected in CI #266

Open
@BurtHarris

Description

@BurtHarris

PR #265 seems to have passed the Appveyor tests, but the tests aren't working in my normal Windows dev environment. This is because Appveyer is running with elevated privileges; I've learned its best not to enable elevated privileges as a developer. But without them, symlinks can't be created on NTFS volumes. NTFS junction points are the recommended alternative, which does not require admin permissions, but I'm not sure if they match up for your use-cases.

node: v6.11.1
npm: 3.10.10
Microsoft Windows [Version 10.0.15063]

> [email protected] lint C:\try\vinyl-fs
> eslint . && jscs index.js lib/ test/


> [email protected] test C:\try\vinyl-fs
> mocha --async-only

  .dest() with custom modes
    - sets the mode of a written buffer file if set on the vinyl object
    - sets the sticky bit on the mode of a written stream file if set on the vinyl object
    - sets the mode of a written stream file if set on the vinyl object
    - sets the mode of a written directory if set on the vinyl object
    - sets sticky bit on the mode of a written directory if set on the vinyl object
    - writes new files with the mode specified in options
    - updates the file mode to match the vinyl mode
    - updates the directory mode to match the vinyl mode
    - uses different modes for files and directories
    - does not fchmod a matching file
    - sees a file with special chmod (setuid/setgid/sticky) as distinct
    - reports fchmod errors

  .dest() with custom owner
    - calls fchown when the uid and/or gid are provided on the vinyl stat
    - does not call fchown when the uid and gid provided on the vinyl stat are invalid

  .dest() with symlinks
    1) creates symlinks when the `symlink` attribute is set on the file
    2) can create relative links
    - (*nix) creates a link for a directory
    √ (windows) creates a junction for a directory
    3) (windows) options can disable junctions for a directory
    4) (windows) options can disable junctions for a directory (as a function)
    - (*nix) can create relative links for directories
    √ (windows) relativeSymlinks option is ignored when junctions are used
    5) (windows) supports relativeSymlinks option when link is not for a directory
    6) (windows) can create relative links for directories when junctions are disabled
    7) does not overwrite links with overwrite option set to false
    8) overwrites links with overwrite option set to true
    9) does not overwrite links with overwrite option set to a function that returns false
    10) overwrites links with overwrite option set to a function that returns true

  .dest() with custom times
    - does not call futimes when no mtime is provided on the vinyl stat
    - calls futimes when an mtime is provided on the vinyl stat
    - does not call futimes when provided mtime on the vinyl stat is invalid
    - calls futimes when provided mtime on the vinyl stat is valid but provided atime is invalid
    - writes file atime and mtime using the vinyl stat

  .dest()
    - throws on invalid folder (empty)
    - throws on invalid folder (empty string)
    √ accepts the sourcemap option as true
    √ accepts the sourcemap option as a string
    √ inlines sourcemaps when option is true
    √ generates an extra File when option is a string
    √ passes through writes with cwd
    √ passes through writes with default cwd
    √ does not write null files
    √ writes buffer files to the right folder with relative cwd
    √ writes buffer files to the right folder with function and relative cwd
    √ writes buffer files to the right folder
    √ writes streaming files to the right folder
    √ writes large streaming files to the right folder
    √ writes directories to the right folder
    √ allows piping multiple dests in streaming mode
    √ writes new files with the default user mode
    √ reports i/o errors
    √ reports stat errors
    √ does not overwrite files with overwrite option set to false
    √ overwrites files with overwrite option set to true
    √ does not overwrite files with overwrite option set to a function that returns false
    √ overwrites files with overwrite option set to a function that returns true
    √ emits a finish event
    √ does not get clogged by highWaterMark (38ms)
    √ allows backpressure when piped to another, slower stream (6024ms)
    √ respects readable listeners on destination stream
    √ respects data listeners on destination stream
    √ sinks the stream if all the readable event handlers are removed (41ms)
    √ sinks the stream if all the data event handlers are removed
    √ successfully processes files with streaming contents
    √ errors if we cannot mkdirp
    √ errors if vinyl object is a directory and we cannot mkdirp
    √ does not error if vinyl object is a directory and we cannot open it
    √ errors if vinyl object is a directory and open errors
    √ errors if content stream errors
    √ does not pass options on to through2

  isOwner
    √ uses process.geteuid() when available
    √ uses process.getuid() when geteuid() is not available
    √ returns false when non-root and non-owner
    √ returns true when owner and non-root
    √ returns true when non-owner but root

  isValidUnixId
    √ returns true if the given id is a valid unix id
    √ returns false if the given id is not a number
    √ returns false when the given id is less than 0

  isFatalOverwriteError
    √ returns false if not given any error
    √ returns true if code != EEXIST
    √ returns false if code == EEXIST and flag == wx
    √ returns true if error.code == EEXIST and file.flag != wx

  isFatalUnlinkError
    √ returns false if not given any error
    √ returns false if code == ENOENT
    √ returns true if code != ENOENT

  getModeDiff
    √ returns 0 if both modes are the same
    √ returns 0 if vinyl mode is not a number
    √ returns a value greater than 0 if modes are different
    √ returns the proper diff
    √ does not matter the order of diffing
    √ includes the sticky/setuid/setgid bits

  getTimesDiff
    √ returns undefined if vinyl mtime is not a valid date
    √ returns undefined if vinyl mtime & atime are both equal to counterparts
    √ returns undefined if vinyl mtimes equals the counterpart and atimes are null
    √ returns a diff object if mtimes do not match
    √ returns a diff object if atimes do not match
    √ returns the fs atime if the vinyl atime is invalid
    √ makes atime diff undefined if fs and vinyl atime are invalid

  getOwnerDiff
    √ returns undefined if vinyl uid & gid are invalid
    √ returns undefined if vinyl uid & gid are both equal to counterparts
    √ returns a diff object if uid or gid do not match
    √ returns the fs uid if the vinyl uid is invalid
    √ returns the fs gid if the vinyl gid is invalid
    √ returns undefined if fs and vinyl uid are invalid
    √ returns undefined if fs and vinyl gid are invalid

  closeFd
    √ calls the callback with propagated error if fd is not a number
    √ calls the callback with close error if no error to propagate
    √ calls the callback with propagated error if close errors
    √ calls the callback with propagated error if close succeeds
    √ calls the callback with no error if close succeeds & no propagated error

  writeFile
    √ writes a file to the filesystem, does not close and returns the fd
    √ defaults to writing files with 0666 mode
    - accepts a different mode in options
    √ defaults to opening files with write flag
    √ accepts a different flag in options
    √ appends to a file if append flag is given
    √ does not pass a file descriptor if open call errors
    √ passes a file descriptor if write call errors
    √ passes an error if called with string as data
    √ does not error on SlowBuffer
    √ does not error if options is falsey

  updateMetadata
    - passes the error if fstat fails
    - updates the vinyl object with fs stats
    - does not touch the fs if nothing to update
    - does not touch the fs if process is not owner of the file
    - updates times on fs and vinyl object if there is a diff
    - forwards futimes error and descriptor upon error
    - updates the mode on fs and vinyl object if there is a diff
    - updates the sticky bit on mode on fs and vinyl object if there is a diff
    - forwards fchmod error and descriptor upon error
    - updates the mode & times on fs and vinyl object if there is a diff
    - forwards fchmod error and descriptor through futimes if there is a time diff

  createWriteStream
    √ accepts just a file path and writes to it
    √ accepts just a file path and writes a large file to it
    √ accepts flag option
    √ accepts append flag as option & places cursor at the end
Changing the mode of a file is not supported by node.js in Windows.
    - accepts mode option
    √ uses default file mode if no mode options
    √ accepts a flush function that is called before close emitted
    √ can specify flush without options argument
    √ passes the file descriptor to flush
    √ passes a callback to flush to call when work is done (252ms)
    √ emits an error if open fails
    √ emits an error if write fails

  integrations
    √ does not exhaust available file descriptors when streaming thousands of files (16916ms)

  .dest() on not owned files
    √ does not error if mtime is different
    √ does not error if mode is different

  .src() with symlinks
    11) "before each" hook for "resolves symlinks correctly"

  .src()
    √ throws on invalid glob (empty)
    √ throws on invalid glob (empty string)
    √ throws on invalid glob (number)
    √ throws on invalid glob (nested array)
    √ throws on invalid glob (empty string in array)
    √ throws on invalid glob (empty array)
    √ emits an error on file not existing
    √ passes through writes
    √ strips BOM from utf8-encoded files by default
    √ does not strip BOM from utf8-encoded files if option is false
    √ does not strip anything that looks like a utf8-encoded BOM from utf16be-encoded files
    √ does not strip anything that looks like a utf8-encoded BOM from utf16be-encoded files with streaming contents
    √ does not strip anything that looks like a utf8-encoded BOM from utf16le-encoded files
    √ does not strip anything that looks like a utf8-encoded BOM from utf16le-encoded files with streaming contents
    √ globs files with default settings
    √ globs files with default settings and relative cwd
    √ globs a directory with default settings
    √ globs a directory with default settings and relative cwd
    √ streams a directory with default settings
    √ streams file with with no contents using read: false option
    √ streams a file changed after since
    √ does not stream a file changed before since
    √ streams a file with streaming contents
    √ can be used as a through stream and adds new files to the end
    √ can be used at beginning and in the middle
    √ does not pass options on to through2

  symlink stream
    - throws on invalid folder
    12) passes through writes with cwd
    13) passes through writes with default cwd
    14) creates a link to the right folder with relative cwd
    15) creates a link to the right folder with function and relative cwd
    16) creates a link for a file with buffered contents
    17) can create relative links
    18) creates a link for a file with streaming contents
    - (*nix) creates a link for a directory
    √ (windows) creates a junction for a directory
    19) (windows) options can disable junctions for a directory
    20) (windows) options can disable junctions for a directory (as a function)
    - (*nix) can create relative links for directories
    √ (windows) relativeSymlinks option is ignored when junctions are used
    21) (windows) supports relativeSymlinks option when link is not for a directory
    22) (windows) can create relative links for directories when junctions are disabled
    - uses different modes for files and directories
    - reports IO errors
    23) does not overwrite links with overwrite option set to false
    24) overwrites links with overwrite option set to true
    25) does not overwrite links with overwrite option set to a function that returns false
    26) overwrites links with overwrite option set to a function that returns true
    √ emits an end event
    27) emits a finish event
    28) does not get clogged by highWaterMark
    29) allows backpressure when piped to another, slower stream
    30) respects readable listeners on symlink stream
    31) respects data listeners on symlink stream
    32) sinks the stream if all the readable event handlers are removed
    33) sinks the stream if all the data event handlers are removed
    34) does not pass options on to through2


  130 passing (29s)
  41 pending
  34 failing

  1) .dest() with symlinks creates symlinks when the `symlink` attribute is set on the file:
     Uncaught Error: ENOENT: no such file or directory, readlink 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.readlinkSync (fs.js:1028:18)
      at assert (C:\try\vinyl-fs\test\dest-symlinks.js:47:24)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  2) .dest() with symlinks can create relative links:
     Uncaught Error: ENOENT: no such file or directory, readlink 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.readlinkSync (fs.js:1028:18)
      at assert (C:\try\vinyl-fs\test\dest-symlinks.js:73:27)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  3) .dest() with symlinks (windows) options can disable junctions for a directory:
     Uncaught Error: ENOENT: no such file or directory, stat 'C:\try\vinyl-fs\test\out-fixtures\foo'
      at Error (native)
      at Object.fs.statSync (fs.js:1000:11)
      at Object.statSync (C:\try\vinyl-fs\node_modules\graceful-fs\polyfills.js:297:22)
      at assert (C:\try\vinyl-fs\test\dest-symlinks.js:178:22)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  4) .dest() with symlinks (windows) options can disable junctions for a directory (as a function):
     Uncaught Error: ENOENT: no such file or directory, stat 'C:\try\vinyl-fs\test\out-fixtures\foo'
      at Error (native)
      at Object.fs.statSync (fs.js:1000:11)
      at Object.statSync (C:\try\vinyl-fs\node_modules\graceful-fs\polyfills.js:297:22)
      at assert (C:\try\vinyl-fs\test\dest-symlinks.js:220:22)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  5) .dest() with symlinks (windows) supports relativeSymlinks option when link is not for a directory:
     Uncaught Error: ENOENT: no such file or directory, readlink 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.readlinkSync (fs.js:1028:18)
      at assert (C:\try\vinyl-fs\test\dest-symlinks.js:326:27)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  6) .dest() with symlinks (windows) can create relative links for directories when junctions are disabled:
     Uncaught Error: ENOENT: no such file or directory, stat 'C:\try\vinyl-fs\test\out-fixtures\foo'
      at Error (native)
      at Object.fs.statSync (fs.js:1000:11)
      at Object.statSync (C:\try\vinyl-fs\node_modules\graceful-fs\polyfills.js:297:22)
      at assert (C:\try\vinyl-fs\test\dest-symlinks.js:359:22)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  7) .dest() with symlinks does not overwrite links with overwrite option set to false:

      Uncaught Error: Expected 0 to equal 1
      + expected - actual

      -0
      +1

      at assert (C:\try\vinyl-fs\node_modules\expect\lib\assert.js:29:9)
      at Expectation.toEqual (C:\try\vinyl-fs\node_modules\expect\lib\Expectation.js:81:30)
      at assert (C:\try\vinyl-fs\test\dest-symlinks.js:394:28)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  8) .dest() with symlinks overwrites links with overwrite option set to true:
     Uncaught Error: ENOENT: no such file or directory, open 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.openSync (fs.js:641:18)
      at Object.fs.readFileSync (fs.js:509:33)
      at assert (C:\try\vinyl-fs\test\dest-symlinks.js:423:31)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  9) .dest() with symlinks does not overwrite links with overwrite option set to a function that returns false:

      Uncaught Error: Expected 0 to equal 1
      + expected - actual

      -0
      +1

      at assert (C:\try\vinyl-fs\node_modules\expect\lib\assert.js:29:9)
      at Expectation.toEqual (C:\try\vinyl-fs\node_modules\expect\lib\Expectation.js:81:30)
      at assert (C:\try\vinyl-fs\test\dest-symlinks.js:460:28)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  10) .dest() with symlinks overwrites links with overwrite option set to a function that returns true:
     Uncaught Error: ENOENT: no such file or directory, open 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.openSync (fs.js:641:18)
      at Object.fs.readFileSync (fs.js:509:33)
      at assert (C:\try\vinyl-fs\test\dest-symlinks.js:493:31)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  11) .src() with symlinks "before each" hook for "resolves symlinks correctly":
     Error: EPERM: operation not permitted, symlink 'C:\try\vinyl-fs\test\fixtures\foo' -> 'C:\try\vinyl-fs\test\out-fixtures\test-symlink-dir'
      at Error (native)
      at Object.fs.symlinkSync (fs.js:1068:18)
      at Context.<anonymous> (C:\try\vinyl-fs\test\src-symlinks.js:37:8)
      at callFnAsync (C:\try\vinyl-fs\node_modules\mocha\lib\runnable.js:349:8)
      at Hook.Runnable.run (C:\try\vinyl-fs\node_modules\mocha\lib\runnable.js:301:7)
      at next (C:\try\vinyl-fs\node_modules\mocha\lib\runner.js:298:10)
      at C:\try\vinyl-fs\node_modules\mocha\lib\runner.js:315:7
      at done (C:\try\vinyl-fs\node_modules\mocha\lib\runnable.js:287:5)
      at C:\try\vinyl-fs\node_modules\mocha\lib\runnable.js:360:7
      at next (C:\try\vinyl-fs\node_modules\rimraf\rimraf.js:74:7)
      at CB (C:\try\vinyl-fs\node_modules\rimraf\rimraf.js:110:9)
      at C:\try\vinyl-fs\node_modules\rimraf\rimraf.js:136:14
      at FSReqWrap.oncomplete (fs.js:123:15)

  12) symlink stream passes through writes with cwd:

      Uncaught Error: Expected 0 to equal 1
      + expected - actual

      -0
      +1

      at assert (C:\try\vinyl-fs\node_modules\expect\lib\assert.js:29:9)
      at Expectation.toEqual (C:\try\vinyl-fs\node_modules\expect\lib\Expectation.js:81:30)
      at assert (C:\try\vinyl-fs\test\symlink.js:65:28)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  13) symlink stream passes through writes with default cwd:

      Uncaught Error: Expected 0 to equal 1
      + expected - actual

      -0
      +1

      at assert (C:\try\vinyl-fs\node_modules\expect\lib\assert.js:29:9)
      at Expectation.toEqual (C:\try\vinyl-fs\node_modules\expect\lib\Expectation.js:81:30)
      at assert (C:\try\vinyl-fs\test\symlink.js:85:28)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  14) symlink stream creates a link to the right folder with relative cwd:
     Uncaught Error: ENOENT: no such file or directory, readlink 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.readlinkSync (fs.js:1028:18)
      at assert (C:\try\vinyl-fs\test\symlink.js:107:27)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  15) symlink stream creates a link to the right folder with function and relative cwd:
     Uncaught Error: ENOENT: no such file or directory, readlink 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.readlinkSync (fs.js:1028:18)
      at assert (C:\try\vinyl-fs\test\symlink.js:140:27)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  16) symlink stream creates a link for a file with buffered contents:
     Uncaught Error: ENOENT: no such file or directory, readlink 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.readlinkSync (fs.js:1028:18)
      at assert (C:\try\vinyl-fs\test\symlink.js:166:27)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  17) symlink stream can create relative links:
     Uncaught Error: ENOENT: no such file or directory, readlink 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.readlinkSync (fs.js:1028:18)
      at assert (C:\try\vinyl-fs\test\symlink.js:191:27)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  18) symlink stream creates a link for a file with streaming contents:
     Uncaught Error: ENOENT: no such file or directory, readlink 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.readlinkSync (fs.js:1028:18)
      at assert (C:\try\vinyl-fs\test\symlink.js:216:27)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  19) symlink stream (windows) options can disable junctions for a directory:
     Uncaught Error: ENOENT: no such file or directory, stat 'C:\try\vinyl-fs\test\out-fixtures\foo'
      at Error (native)
      at Object.fs.statSync (fs.js:1000:11)
      at Object.statSync (C:\try\vinyl-fs\node_modules\graceful-fs\polyfills.js:297:22)
      at assert (C:\try\vinyl-fs\test\symlink.js:324:22)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  20) symlink stream (windows) options can disable junctions for a directory (as a function):
     Uncaught Error: ENOENT: no such file or directory, stat 'C:\try\vinyl-fs\test\out-fixtures\foo'
      at Error (native)
      at Object.fs.statSync (fs.js:1000:11)
      at Object.statSync (C:\try\vinyl-fs\node_modules\graceful-fs\polyfills.js:297:22)
      at assert (C:\try\vinyl-fs\test\symlink.js:367:22)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  21) symlink stream (windows) supports relativeSymlinks option when link is not for a directory:
     Uncaught Error: ENOENT: no such file or directory, readlink 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.readlinkSync (fs.js:1028:18)
      at assert (C:\try\vinyl-fs\test\symlink.js:476:27)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  22) symlink stream (windows) can create relative links for directories when junctions are disabled:
     Uncaught Error: ENOENT: no such file or directory, stat 'C:\try\vinyl-fs\test\out-fixtures\foo'
      at Error (native)
      at Object.fs.statSync (fs.js:1000:11)
      at Object.statSync (C:\try\vinyl-fs\node_modules\graceful-fs\polyfills.js:297:22)
      at assert (C:\try\vinyl-fs\test\symlink.js:509:22)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  23) symlink stream does not overwrite links with overwrite option set to false:

      Uncaught Error: Expected 0 to equal 1
      + expected - actual

      -0
      +1

      at assert (C:\try\vinyl-fs\node_modules\expect\lib\assert.js:29:9)
      at Expectation.toEqual (C:\try\vinyl-fs\node_modules\expect\lib\Expectation.js:81:30)
      at assert (C:\try\vinyl-fs\test\symlink.js:599:28)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  24) symlink stream overwrites links with overwrite option set to true:
     Uncaught Error: ENOENT: no such file or directory, open 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.openSync (fs.js:641:18)
      at Object.fs.readFileSync (fs.js:509:33)
      at assert (C:\try\vinyl-fs\test\symlink.js:624:31)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  25) symlink stream does not overwrite links with overwrite option set to a function that returns false:

      Uncaught Error: Expected 0 to equal 1
      + expected - actual

      -0
      +1

      at assert (C:\try\vinyl-fs\node_modules\expect\lib\assert.js:29:9)
      at Expectation.toEqual (C:\try\vinyl-fs\node_modules\expect\lib\Expectation.js:81:30)
      at assert (C:\try\vinyl-fs\test\symlink.js:658:28)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  26) symlink stream overwrites links with overwrite option set to a function that returns true:
     Uncaught Error: ENOENT: no such file or directory, open 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)
      at Object.fs.openSync (fs.js:641:18)
      at Object.fs.readFileSync (fs.js:509:33)
      at assert (C:\try\vinyl-fs\test\symlink.js:688:31)
      at ConcatStream.<anonymous> (C:\try\vinyl-fs\node_modules\concat-stream\index.js:36:43)
      at finishMaybe (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:607:14)
      at endWritable (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:615:3)
      at ConcatStream.Writable.end (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:571:41)
      at ConcatStream.Writable._destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\_stream_writable.js:662:8)
      at ConcatStream.destroy (C:\try\vinyl-fs\node_modules\readable-stream\lib\internal\streams\destroy.js:36:8)
      at C:\try\vinyl-fs\node_modules\pump\index.js:43:45
      at call (C:\try\vinyl-fs\node_modules\pump\index.js:50:3)
      at Array.forEach (native)
      at C:\try\vinyl-fs\node_modules\pump\index.js:70:25
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  27) symlink stream emits a finish event:
     Error: timeout of 2000ms exceeded. Ensure the done() callback is being called in this test.
      at Timeout.<anonymous> (C:\try\vinyl-fs\node_modules\mocha\lib\runnable.js:226:19)

  28) symlink stream does not get clogged by highWaterMark:
     Error: EPERM: operation not permitted, symlink 'C:\try\vinyl-fs\test\fixtures\test.txt' -> 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)

  29) symlink stream allows backpressure when piped to another, slower stream:
     Error: EPERM: operation not permitted, symlink 'C:\try\vinyl-fs\test\fixtures\test.txt' -> 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)

  30) symlink stream respects readable listeners on symlink stream:

      Uncaught Error: Expected 0 to equal 1
      + expected - actual

      -0
      +1

      at assert (C:\try\vinyl-fs\node_modules\expect\lib\assert.js:29:9)
      at Expectation.toEqual (C:\try\vinyl-fs\node_modules\expect\lib\Expectation.js:81:30)
      at assert (C:\try\vinyl-fs\test\symlink.js:801:25)
      at C:\try\vinyl-fs\node_modules\pump\index.js:73:7
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  31) symlink stream respects data listeners on symlink stream:

      Uncaught Error: Expected 0 to equal 1
      + expected - actual

      -0
      +1

      at assert (C:\try\vinyl-fs\node_modules\expect\lib\assert.js:29:9)
      at Expectation.toEqual (C:\try\vinyl-fs\node_modules\expect\lib\Expectation.js:81:30)
      at assert (C:\try\vinyl-fs\test\symlink.js:826:21)
      at C:\try\vinyl-fs\node_modules\pump\index.js:73:7
      at f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.<anonymous> (C:\try\vinyl-fs\node_modules\pump\index.js:29:21)
      at Pumpify.f (C:\try\vinyl-fs\node_modules\once\once.js:25:25)
      at Pumpify.Duplexify._destroy (C:\try\vinyl-fs\node_modules\duplexify\index.js:184:15)
      at C:\try\vinyl-fs\node_modules\duplexify\index.js:175:10
      at _combinedTickCallback (internal/process/next_tick.js:73:7)
      at process._tickCallback (internal/process/next_tick.js:104:9)

  32) symlink stream sinks the stream if all the readable event handlers are removed:
     Error: EPERM: operation not permitted, symlink 'C:\try\vinyl-fs\test\fixtures\test.txt' -> 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)

  33) symlink stream sinks the stream if all the data event handlers are removed:
     Error: EPERM: operation not permitted, symlink 'C:\try\vinyl-fs\test\fixtures\test.txt' -> 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)

  34) symlink stream does not pass options on to through2:
     Error: EPERM: operation not permitted, symlink 'C:\try\vinyl-fs\test\fixtures\test.txt' -> 'C:\try\vinyl-fs\test\out-fixtures\test.txt'
      at Error (native)

npm ERR! Test failed.  See above for more details.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions