UNPKG

1.57 kBtext/coffeescriptView Raw
1
2fs = require 'fs'
3path = require 'path'
4fs.exists ?= path.exists
5should = require 'should'
6mecano = if process.env.MECANO_COV then require '../lib-cov/mecano' else require '../lib/mecano'
7test = require './test'
8
9describe 'mkdir', ->
10
11 scratch = test.scratch @
12
13 it 'should create dir', (next) ->
14 source = "#{scratch}/a_dir"
15 mecano.mkdir
16 directory: source
17 , (err, created) ->
18 should.not.exist err
19 created.should.eql 1
20 mecano.mkdir
21 directory: source
22 , (err, created) ->
23 should.not.exist err
24 created.should.eql 0
25 next()
26
27 it 'should create dir recursively', (next) ->
28 source = "#{scratch}/a_parent_dir/a_dir"
29 mecano.mkdir
30 directory: source
31 , (err, created) ->
32 should.not.exist err
33 created.should.eql 1
34 next()
35
36 it 'should stop when `exclude` match', (next) ->
37 source = "#{scratch}/a_parent_dir/a_dir/do_not_create_this"
38 mecano.mkdir
39 directory: source
40 exclude: /^do/
41 , (err, created) ->
42 should.not.exist err
43 created.should.eql 1
44 fs.exists source, (created) ->
45 created.should.not.be.ok
46 source = path.dirname source
47 fs.exists source, (created) ->
48 created.should.be.ok
49 next()
50
51 it 'should honore `cwd` for relative paths', (next) ->
52 mecano.mkdir
53 directory: './a_dir'
54 cwd: scratch
55 , (err, created) ->
56 should.not.exist err
57 created.should.eql 1
58 fs.exists "#{scratch}/a_dir", (created) ->
59 created.should.be.ok
60 next()
61