Files
website/src/common/fs.extensions.test.coffee
T

53 lines
1.5 KiB
CoffeeScript

#
# Crafting Guide - fs.extensions.test.coffee
#
# Copyright © 2014-2016 by Redwood Labs
# All rights reserved.
#
fs = require './fs.extensions'
########################################################################################################################
describe 'fs.extensions.coffee', ->
describe 'rmdirRfSync', ->
beforeEach ->
fs.mkdirSync '.tmp'
afterEach ->
fs.rmdirRfSync '.tmp'
it 'can remove a single file', ->
fs.writeFileSync '.tmp/alpha'
fs.rmdirRfSync '.tmp/alpha'
func = -> fs.statSync '.tmp/alpha'
expect(func).to.throw Error, 'no such file'
it 'can remove an empty directory', ->
fs.mkdirSync '.tmp/alpha'
fs.rmdirRfSync '.tmp/alpha'
func = -> fs.statSync '.tmp/alpha'
expect(func).to.throw Error, 'no such file'
it 'can remove a directory with a file', ->
fs.mkdirSync '.tmp/alpha'
fs.writeFileSync '.tmp/bravo'
fs.rmdirRfSync '.tmp/alpha'
func = -> fs.statSync '.tmp/alpha'
expect(func).to.throw Error, 'no such file'
it 'can remove a nested sub-directory with a file', ->
fs.mkdirSync '.tmp/alpha'
fs.writeFileSync '.tmp/bravo'
fs.mkdirSync '.tmp/alpha/charlie'
fs.writeFileSync '.tmp/alpha/charlie/delta'
fs.rmdirRfSync '.tmp/alpha'
func = -> fs.statSync '.tmp/alpha'
expect(func).to.throw Error, 'no such file'