Change cli_test-output.js to ES6

This commit is contained in:
Tyler Long
2017-04-10 21:26:38 +08:00
parent 546e766fd9
commit 69ceab9f44

View File

@@ -1,140 +1,132 @@
var fs = require('fs') const fs = require('fs')
, path = require('path') const path = require('path')
var test = require('tape') const test = require('tape')
, async = require('async') const async = require('async')
, clone = require('clone') const clone = require('clone')
, rimraf = require('rimraf') const rimraf = require('rimraf')
var mermaid = require('../lib') const mermaid = require('../lib')
var fileTestMermaid = path.join('test','fixtures','test.mermaid'); const fileTestMermaid = path.join('test', 'fixtures', 'test.mermaid')
var isWin = /^win/.test(process.platform); const isWin = /^win/.test(process.platform)
var phantomCmd; let phantomCmd
if(isWin){ if (isWin) {
phantomCmd = 'node_modules/.bin/phantomjs.cmd' phantomCmd = 'node_modules/.bin/phantomjs.cmd'
console.log('is win') } else {
}
else{
phantomCmd = 'node_modules/.bin/phantomjs' phantomCmd = 'node_modules/.bin/phantomjs'
} }
var singleFile = { const singleFile = {
files: [fileTestMermaid] files: [fileTestMermaid],
, outputDir: path.join(process.cwd(),'test/tmp_single') outputDir: path.join(process.cwd(), 'test/tmp_single'),
, phantomPath: path.join(process.cwd(),phantomCmd) phantomPath: path.join(process.cwd(), phantomCmd),
, width : 1200 width: 1200,
, css: path.join(__dirname, '..', 'dist', 'mermaid.css') css: path.join(__dirname, '..', 'dist', 'mermaid.css'),
, sequenceConfig: null sequenceConfig: null,
, ganttConfig: null ganttConfig: null
} }
, multiFile = { const multiFile = {
files: [path.join('test','fixtures','test.mermaid'), files: [path.join('test', 'fixtures', 'test.mermaid'),
path.join('test','fixtures','test2.mermaid'), path.join('test', 'fixtures', 'test2.mermaid'),
path.join('test','fixtures','gantt.mermaid'), path.join('test', 'fixtures', 'gantt.mermaid'),
path.join('test','fixtures','sequence.mermaid'), path.join('test', 'fixtures', 'sequence.mermaid')
] ],
, outputDir: 'test/tmp_multi' outputDir: 'test/tmp_multi',
, phantomPath: path.join(process.cwd(),phantomCmd) phantomPath: path.join(process.cwd(), phantomCmd),
, width : 1200 width: 1200,
, css: path.join(__dirname, '..', 'dist', 'mermaid.css') css: path.join(__dirname, '..', 'dist', 'mermaid.css'),
, sequenceConfig: null sequenceConfig: null,
, ganttConfig: null ganttConfig: null
} }
test('output of single png', function (t) {
test('output of single png', function(t) {
t.plan(3) t.plan(3)
var expected = ['test.mermaid.png'] const expected = ['test.mermaid.png']
var opt = clone(singleFile) const opt = clone(singleFile)
opt.outputDir += '_png' opt.outputDir += '_png'
opt.png = true opt.png = true
mermaid.process(opt.files, opt, function(code) { mermaid.process(opt.files, opt, function (code) {
t.equal(code, 0, 'has clean exit code') t.equal(code, 0, 'has clean exit code')
verifyFiles(expected, opt.outputDir, t) verifyFiles(expected, opt.outputDir, t)
}) })
}) })
test('output of multiple png', function(t) { test('output of multiple png', function (t) {
t.plan(3) t.plan(3)
var expected = ['test.mermaid.png', 'test2.mermaid.png', const expected = ['test.mermaid.png', 'test2.mermaid.png',
'gantt.mermaid.png', 'sequence.mermaid.png'] 'gantt.mermaid.png', 'sequence.mermaid.png']
var opt = clone(multiFile) const opt = clone(multiFile)
opt.outputDir += '_png' opt.outputDir += '_png'
opt.png = true opt.png = true
mermaid.process(opt.files, opt, function(code) { mermaid.process(opt.files, opt, function (code) {
t.equal(code, 0, 'has clean exit code') t.equal(code, 0, 'has clean exit code')
verifyFiles(expected, opt.outputDir, t) verifyFiles(expected, opt.outputDir, t)
}) })
}) })
test('output of single svg', function(t) { test('output of single svg', function (t) {
t.plan(3) t.plan(3)
var expected = ['test.mermaid.svg'] const expected = ['test.mermaid.svg']
var opt = clone(singleFile) const opt = clone(singleFile)
opt.outputDir += '_svg' opt.outputDir += '_svg'
opt.svg = true opt.svg = true
mermaid.process(opt.files, opt, function(code) { mermaid.process(opt.files, opt, function (code) {
t.equal(code, 0, 'has clean exit code') t.equal(code, 0, 'has clean exit code')
verifyFiles(expected, opt.outputDir, t) verifyFiles(expected, opt.outputDir, t)
}) })
}) })
test('output of multiple svg', function(t) { test('output of multiple svg', function (t) {
t.plan(3) t.plan(3)
var expected = ['test.mermaid.svg', 'test2.mermaid.svg', const expected = ['test.mermaid.svg', 'test2.mermaid.svg',
'gantt.mermaid.svg', 'sequence.mermaid.svg'] 'gantt.mermaid.svg', 'sequence.mermaid.svg']
var opt = clone(multiFile) const opt = clone(multiFile)
opt.outputDir += '_svg' opt.outputDir += '_svg'
opt.svg = true opt.svg = true
mermaid.process(opt.files, opt, function(code) { mermaid.process(opt.files, opt, function (code) {
t.equal(code, 0, 'has clean exit code') t.equal(code, 0, 'has clean exit code')
verifyFiles(expected, opt.outputDir, t) verifyFiles(expected, opt.outputDir, t)
}) })
}) })
test('output including CSS', function(t) { test('output including CSS', function (t) {
t.plan(5) t.plan(5)
var expected = ['test.mermaid.png'] const expected = ['test.mermaid.png']
, opt = clone(singleFile) const opt = clone(singleFile)
, opt2 = clone(singleFile) const opt2 = clone(singleFile)
, filename
, one
, two
opt.png = true opt.png = true
opt.outputDir += '_css_png' opt.outputDir += '_css_png'
opt2.png = true opt2.png = true
opt2.outputDir += '_css_png' opt2.outputDir += '_css_png'
mermaid.process(opt.files, opt, function (code) {
mermaid.process(opt.files, opt, function(code) {
t.equal(code, 0, 'has clean exit code') t.equal(code, 0, 'has clean exit code')
filename = path.join(opt.outputDir, path.basename(expected[0])) const filename = path.join(opt.outputDir, path.basename(expected[0]))
one = fs.statSync(filename) const one = fs.statSync(filename)
opt2.css = path.join('test','fixtures','test.css') opt2.css = path.join('test', 'fixtures', 'test.css')
console.log('Generating #2'); mermaid.process(opt2.files, opt2, function (code) {
mermaid.process(opt2.files, opt2, function(code) {
t.equal(code, 0, 'has clean exit code') t.equal(code, 0, 'has clean exit code')
two = fs.statSync(filename) const two = fs.statSync(filename)
t.notEqual(one.size, two.size) t.notEqual(one.size, two.size)
verifyFiles(expected, opt.outputDir, t) verifyFiles(expected, opt.outputDir, t)
@@ -142,24 +134,21 @@ test('output including CSS', function(t) {
}) })
}) })
function verifyFiles(expected, dir, t) { function verifyFiles (expected, dir, t) {
async.each( async.each(
expected expected, function (file, cb) {
, function(file, cb) { const filename = path.join(dir, path.basename(file))
filename = path.join(dir, path.basename(file)) fs.stat(filename, function (err, stat) {
//console.log('Expected filename:'+filename); cb(err)
fs.stat(filename, function(err, stat) { })
cb(err) }, function (err) {
}) t.notOk(err, 'all files passed')
} const deleteTmps = true
, function(err) { const _rimraf = deleteTmps ? rimraf : function (dir, f) { f(0) }
t.notOk(err, 'all files passed') _rimraf(dir, function (rmerr) {
var delete_tmps = true t.notOk(rmerr, 'cleaned up')
var _rimraf=delete_tmps ? rimraf : function(dir, f) { f(0); } t.end()
_rimraf(dir, function(rmerr) { })
t.notOk(rmerr, 'cleaned up') }
t.end()
})
}
) )
} }