You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

21 lines
486 B

'use strict';
const path = require('path');
module.exports = (file, base, separator) => {
let prefix = file
// Only replace this.base if it is found at the start of the path
.replace(base, (match, offset) => offset === 0 ? '' : match)
.replace(/\.spec/, '')
.replace(/\.test/, '')
.replace(/test-/g, '')
.replace(/\.js$/, '')
.split(path.sep)
.filter(p => p !== '__tests__')
.join(separator);
if (prefix.length > 0) {
prefix += separator;
}
return prefix;
};