UNPKG

sparkfile

Version:

A CLI scratch pad for ideas

72 lines (56 loc) 1.9 kB
require 'coffee-script' fs = require 'fs' path = require 'path' exec = require('child_process').exec should = require 'should' utils = require '../src/utils' describe 'Has date', -> it 'Should find date markers', -> testString = """ Some stuff Here's a date string [#{utils.ymd()}] """ utils.hasDate(testString).should.be.true it 'Should ignore the date otherwise', -> testString = """ Some stuff Here's a date but not as a marker #{utils.ymd()} """ utils.hasDate(testString).should.be.false it 'Should ignore date markers in the middle of lines', -> testString = """ Some stuff Here's a date marker mid-line [#{utils.ymd()}] let's ignore it """ utils.hasDate(testString).should.be.false describe 'Resolve location', -> it 'Should resolve tildes', -> realPath = "#{process.env.HOME}/foo" utils.resolveLocation('~/foo').should.equal realPath it 'Should resolve relative paths', -> utils.resolveLocation('./some/path').should.equal path.resolve('./some/path') utils.resolveLocation('../some/path').should.equal path.resolve('../some/path') describe 'Append line', -> tempPath = 'test/tmp' fileName = 'Sparkfile' before (done) -> exec 'mkdir -p test/tmp && rm -rf test/tmp/*', -> done() after (done) -> exec 'rm -rf test/tmp/', -> done() it 'Should automatically create files', -> utils.appendLine "#{tempPath}/#{fileName}", 'Example note' fs.readdirSync(tempPath).should.include fileName it 'Should add lines', -> fs.readFileSync("#{tempPath}/#{fileName}", 'utf-8').should.equal 'Example note\n' it 'Should append more lines', -> utils.appendLine "#{tempPath}/#{fileName}", 'One more line' fs.readFileSync("#{tempPath}/#{fileName}", 'utf-8').should.equal """ Example note One more line """