summaryrefslogtreecommitdiff
path: root/node_modules/gulp-typescript/node_modules/clone-stats/test.js
blob: e4bb2814d8782b81599e45f2be23537d978d127e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
var test = require('tape')
var clone = require('./')
var fs = require('fs')

test('file', function(t) {
  compare(t, fs.statSync(__filename))
  t.end()
})

test('directory', function(t) {
  compare(t, fs.statSync(__dirname))
  t.end()
})

function compare(t, stat) {
  var copy = clone(stat)

  t.deepEqual(stat, copy, 'clone has equal properties')
  t.ok(stat instanceof fs.Stats, 'original is an fs.Stat')
  t.ok(copy instanceof fs.Stats, 'copy is an fs.Stat')

  ;['isDirectory'
  , 'isFile'
  , 'isBlockDevice'
  , 'isCharacterDevice'
  , 'isSymbolicLink'
  , 'isFIFO'
  , 'isSocket'
  ].forEach(function(method) {
    t.equal(
        stat[method].call(stat)
      , copy[method].call(copy)
      , 'equal value for stat.' + method + '()'
    )
  })
}