routie dev init since i didn't adhere to any proper guidance up until now
This commit is contained in:
+224
@@ -0,0 +1,224 @@
|
||||
/**
|
||||
* @author Toru Nagashima
|
||||
* @copyright 2016 Toru Nagashima. All rights reserved.
|
||||
* See LICENSE file in root directory for full license.
|
||||
*/
|
||||
'use strict'
|
||||
|
||||
// ------------------------------------------------------------------------------
|
||||
// Requirements
|
||||
// ------------------------------------------------------------------------------
|
||||
|
||||
const assert = require('assert').strict
|
||||
const nodeApi = require('../lib')
|
||||
const BufferStream = require('./lib/buffer-stream')
|
||||
const util = require('./lib/util')
|
||||
const runAll = util.runAll
|
||||
const runPar = util.runPar
|
||||
const runSeq = util.runSeq
|
||||
|
||||
// ------------------------------------------------------------------------------
|
||||
// Test
|
||||
// ------------------------------------------------------------------------------
|
||||
|
||||
describe('[print-label] npm-run-all', () => {
|
||||
before(() => process.chdir('test-workspace'))
|
||||
after(() => process.chdir('..'))
|
||||
|
||||
describe('should print labels at the head of every line:', () => {
|
||||
const EXPECTED_TEXT = [
|
||||
'[test-task:echo abc] abcabc',
|
||||
'[test-task:echo abc] abc',
|
||||
'[test-task:echo abc] abcabc',
|
||||
'[test-task:echo abc] abc',
|
||||
'[test-task:echo abc] abc',
|
||||
'[test-task:echo abc] abc',
|
||||
'[test-task:echo abc] abc',
|
||||
'[test-task:echo abc] abc',
|
||||
'[test-task:echo abc] ',
|
||||
'[test-task:echo abc] abc',
|
||||
'[test-task:echo abc] abcabc',
|
||||
'[test-task:echo abc] ',
|
||||
'[test-task:echo abc] ',
|
||||
'[test-task:echo abc] ',
|
||||
'[test-task:echo abc] abc',
|
||||
].join('\n')
|
||||
|
||||
it('Node API', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await nodeApi('test-task:echo abc', { stdout, silent: true, printLabel: true })
|
||||
assert.equal(stdout.value, EXPECTED_TEXT)
|
||||
})
|
||||
|
||||
it('npm-run-all command (--print-label)', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await runAll(['test-task:echo abc', '--silent', '--print-label'], stdout)
|
||||
assert.equal(stdout.value, EXPECTED_TEXT)
|
||||
})
|
||||
|
||||
it('run-s command (--print-label)', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await runSeq(['test-task:echo abc', '--silent', '--print-label'], stdout)
|
||||
assert.equal(stdout.value, EXPECTED_TEXT)
|
||||
})
|
||||
|
||||
it('run-p command (--print-label)', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await runPar(['test-task:echo abc', '--silent', '--print-label'], stdout)
|
||||
assert.equal(stdout.value, EXPECTED_TEXT)
|
||||
})
|
||||
|
||||
it('npm-run-all command (-l)', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await runAll(['test-task:echo abc', '--silent', '-l'], stdout)
|
||||
assert.equal(stdout.value, EXPECTED_TEXT)
|
||||
})
|
||||
|
||||
it('run-s command (-l)', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await runSeq(['test-task:echo abc', '--silent', '-l'], stdout)
|
||||
assert.equal(stdout.value, EXPECTED_TEXT)
|
||||
})
|
||||
|
||||
it('run-p command (-l)', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await runPar(['test-task:echo abc', '--silent', '-l'], stdout)
|
||||
assert.equal(stdout.value, EXPECTED_TEXT)
|
||||
})
|
||||
})
|
||||
|
||||
describe('should print all labels with the same width:', () => {
|
||||
const EXPECTED_TEXT = [
|
||||
'[test-task:echo a ] aa',
|
||||
'[test-task:echo a ] a',
|
||||
'[test-task:echo a ] aa',
|
||||
'[test-task:echo a ] a',
|
||||
'[test-task:echo a ] a',
|
||||
'[test-task:echo a ] a',
|
||||
'[test-task:echo a ] a',
|
||||
'[test-task:echo a ] a',
|
||||
'[test-task:echo a ] ',
|
||||
'[test-task:echo a ] a',
|
||||
'[test-task:echo a ] aa',
|
||||
'[test-task:echo a ] ',
|
||||
'[test-task:echo a ] ',
|
||||
'[test-task:echo a ] ',
|
||||
'[test-task:echo a ] a',
|
||||
'[test-task:echo abcd] abcdabcd',
|
||||
'[test-task:echo abcd] abcd',
|
||||
'[test-task:echo abcd] abcdabcd',
|
||||
'[test-task:echo abcd] abcd',
|
||||
'[test-task:echo abcd] abcd',
|
||||
'[test-task:echo abcd] abcd',
|
||||
'[test-task:echo abcd] abcd',
|
||||
'[test-task:echo abcd] abcd',
|
||||
'[test-task:echo abcd] ',
|
||||
'[test-task:echo abcd] abcd',
|
||||
'[test-task:echo abcd] abcdabcd',
|
||||
'[test-task:echo abcd] ',
|
||||
'[test-task:echo abcd] ',
|
||||
'[test-task:echo abcd] ',
|
||||
'[test-task:echo abcd] abcd',
|
||||
'[test-task:echo ab ] abab',
|
||||
'[test-task:echo ab ] ab',
|
||||
'[test-task:echo ab ] abab',
|
||||
'[test-task:echo ab ] ab',
|
||||
'[test-task:echo ab ] ab',
|
||||
'[test-task:echo ab ] ab',
|
||||
'[test-task:echo ab ] ab',
|
||||
'[test-task:echo ab ] ab',
|
||||
'[test-task:echo ab ] ',
|
||||
'[test-task:echo ab ] ab',
|
||||
'[test-task:echo ab ] abab',
|
||||
'[test-task:echo ab ] ',
|
||||
'[test-task:echo ab ] ',
|
||||
'[test-task:echo ab ] ',
|
||||
'[test-task:echo ab ] ab',
|
||||
].join('\n')
|
||||
|
||||
it('Node API', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await nodeApi(
|
||||
['test-task:echo a', 'test-task:echo abcd', 'test-task:echo ab'],
|
||||
{ stdout, silent: true, printLabel: true }
|
||||
)
|
||||
assert.equal(stdout.value, EXPECTED_TEXT)
|
||||
})
|
||||
|
||||
it('npm-run-all command', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await runAll(
|
||||
['test-task:echo a', 'test-task:echo abcd', 'test-task:echo ab', '--silent', '--print-label'],
|
||||
stdout
|
||||
)
|
||||
assert.equal(stdout.value, EXPECTED_TEXT)
|
||||
})
|
||||
|
||||
it('run-s command', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await runSeq(
|
||||
['test-task:echo a', 'test-task:echo abcd', 'test-task:echo ab', '--silent', '--print-label'],
|
||||
stdout
|
||||
)
|
||||
assert.equal(stdout.value, EXPECTED_TEXT)
|
||||
})
|
||||
})
|
||||
|
||||
describe('should work printing labels in parallel:', () => {
|
||||
const EXPECTED_LINES = [
|
||||
'\n[test-task:echo a ] ',
|
||||
'\n[test-task:echo a ] a',
|
||||
'\n[test-task:echo ab ] ',
|
||||
'\n[test-task:echo ab ] ab',
|
||||
'\n[test-task:echo abcd] ',
|
||||
'\n[test-task:echo abcd] abcd',
|
||||
]
|
||||
const UNEXPECTED_PATTERNS = [
|
||||
/aab(cd)?/,
|
||||
/ab(cd)?a\b/,
|
||||
/\n\n/,
|
||||
]
|
||||
|
||||
it('Node API', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await nodeApi(
|
||||
['test-task:echo a', 'test-task:echo abcd', 'test-task:echo ab'],
|
||||
{ stdout, parallel: true, printLabel: true }
|
||||
)
|
||||
for (const line of EXPECTED_LINES) {
|
||||
assert(stdout.value.indexOf(line) !== -1)
|
||||
}
|
||||
for (const pattern of UNEXPECTED_PATTERNS) {
|
||||
assert(!pattern.test(stdout.value))
|
||||
}
|
||||
})
|
||||
|
||||
it('npm-run-all command', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await runAll(
|
||||
['--parallel', 'test-task:echo a', 'test-task:echo abcd', 'test-task:echo ab', '--print-label'],
|
||||
stdout
|
||||
)
|
||||
for (const line of EXPECTED_LINES) {
|
||||
assert(stdout.value.indexOf(line) !== -1)
|
||||
}
|
||||
for (const pattern of UNEXPECTED_PATTERNS) {
|
||||
assert(!pattern.test(stdout.value))
|
||||
}
|
||||
})
|
||||
|
||||
it('run-p command', async () => {
|
||||
const stdout = new BufferStream()
|
||||
await runPar(
|
||||
['test-task:echo a', 'test-task:echo abcd', 'test-task:echo ab', '--print-label'],
|
||||
stdout
|
||||
)
|
||||
for (const line of EXPECTED_LINES) {
|
||||
assert(stdout.value.indexOf(line) !== -1)
|
||||
}
|
||||
for (const pattern of UNEXPECTED_PATTERNS) {
|
||||
assert(!pattern.test(stdout.value))
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user