-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
RunStatus#prefixTitle should remove this.base only if it occurs at th…
…e beginning of the path (#844) * RunStatus#prefixTitle(), replace this.base only if it occurs at the beggining of path * RunStatus#prefixTitle, filter out __tests__ from path * added tests for RunStatus#prefixTitle
- Loading branch information
1 parent
6f0ac1f
commit f35da7e
Showing
2 changed files
with
77 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
'use strict'; | ||
var path = require('path'); | ||
var test = require('tap').test; | ||
var chalk = require('chalk'); | ||
var figures = require('figures'); | ||
var RunStatus = require('../lib/run-status'); | ||
|
||
var sep = ' ' + chalk.gray.dim(figures.pointerSmall) + ' '; | ||
|
||
test('requires new', function (t) { | ||
var runStatus = RunStatus; | ||
t.throws(function () { | ||
runStatus({}); | ||
}, 'Class constructor RunStatus cannot be invoked without \'new\''); | ||
t.end(); | ||
}); | ||
|
||
test('prefixTitle returns empty if prefixTitles == false', function (t) { | ||
var runStatus = new RunStatus({prefixTitles: false}); | ||
t.is(runStatus.prefixTitle('test/run-status.js'), ''); | ||
t.end(); | ||
}); | ||
|
||
test('prefixTitle removes base if found at start of path', function (t) { | ||
var runStatus = new RunStatus({base: 'test' + path.sep}); | ||
t.is(runStatus.prefixTitle('test/run-status.js'), 'run-status' + sep); | ||
t.end(); | ||
}); | ||
|
||
test('prefixTitle does not remove base if found but not at start of path', function (t) { | ||
var runStatus = new RunStatus({base: path.sep}); | ||
t.is(runStatus.prefixTitle('test/run-status.js'), 'test' + sep + 'run-status' + sep); | ||
t.end(); | ||
}); | ||
|
||
test('prefixTitle removes .js extension', function (t) { | ||
var runStatus = new RunStatus({base: path.sep}); | ||
t.is(runStatus.prefixTitle('run-status.js'), 'run-status' + sep); | ||
t.end(); | ||
}); | ||
|
||
test('prefixTitle does not remove .js from middle of path', function (t) { | ||
var runStatus = new RunStatus({base: path.sep}); | ||
t.is(runStatus.prefixTitle('run-.js-status.js'), 'run-.js-status' + sep); | ||
t.end(); | ||
}); | ||
|
||
test('prefixTitle removes __tests__ from path', function (t) { | ||
var runStatus = new RunStatus({base: path.sep}); | ||
t.is(runStatus.prefixTitle('backend/__tests__/run-status.js'), 'backend' + sep + 'run-status' + sep); | ||
t.end(); | ||
}); | ||
|
||
test('prefixTitle removes .spec from path', function (t) { | ||
var runStatus = new RunStatus({base: path.sep}); | ||
t.is(runStatus.prefixTitle('backend/run-status.spec.js'), 'backend' + sep + 'run-status' + sep); | ||
t.end(); | ||
}); | ||
|
||
test('prefixTitle removes .test from path', function (t) { | ||
var runStatus = new RunStatus({base: path.sep}); | ||
t.is(runStatus.prefixTitle('backend/run-status.test.js'), 'backend' + sep + 'run-status' + sep); | ||
t.end(); | ||
}); | ||
|
||
test('prefixTitle removes test- from path', function (t) { | ||
var runStatus = new RunStatus({base: path.sep}); | ||
t.is(runStatus.prefixTitle('backend/test-run-status.js'), 'backend' + sep + 'run-status' + sep); | ||
t.end(); | ||
}); |