PageRenderTime 25ms CodeModel.GetById 18ms app.highlight 5ms RepoModel.GetById 1ms app.codeStats 0ms

/node_modules/mkdirp/test/opts_fs.js

https://bitbucket.org/coleman333/smartsite
JavaScript | 29 lines | 25 code | 4 blank | 0 comment | 0 complexity | 012858e2d9fd5ad9bad79d0b780f3a46 MD5 | raw file
 1var mkdirp = require('../');
 2var path = require('path');
 3var test = require('tap').test;
 4var mockfs = require('mock-fs');
 5var _0777 = parseInt('0777', 8);
 6var _0755 = parseInt('0755', 8);
 7
 8test('opts.fs', function (t) {
 9    t.plan(5);
10    
11    var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
12    var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
13    var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
14    
15    var file = '/beep/boop/' + [x,y,z].join('/');
16    var xfs = mockfs.fs();
17    
18    mkdirp(file, { fs: xfs, mode: _0755 }, function (err) {
19        t.ifError(err);
20        xfs.exists(file, function (ex) {
21            t.ok(ex, 'created file');
22            xfs.stat(file, function (err, stat) {
23                t.ifError(err);
24                t.equal(stat.mode & _0777, _0755);
25                t.ok(stat.isDirectory(), 'target not a directory');
26            });
27        });
28    });
29});