1
0
Fork 0
mirror of https://github.com/actions/setup-python.git synced 2024-11-23 09:17:16 +00:00
setup-python/node_modules/jest-runtime/build/helpers.js
Danny McCormick 39c08a0eaa Initial pass
2019-06-26 21:12:00 -04:00

92 lines
2.2 KiB
JavaScript

'use strict';
Object.defineProperty(exports, '__esModule', {
value: true
});
exports.findSiblingsWithFileExtension = void 0;
function _path() {
const data = _interopRequireDefault(require('path'));
_path = function _path() {
return data;
};
return data;
}
function _slash() {
const data = _interopRequireDefault(require('slash'));
_slash = function _slash() {
return data;
};
return data;
}
function _glob() {
const data = _interopRequireDefault(require('glob'));
_glob = function _glob() {
return data;
};
return data;
}
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {default: obj};
}
// Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
const findSiblingsWithFileExtension = (
moduleFileExtensions,
from,
moduleName
) => {
if (
!_path().default.isAbsolute(moduleName) &&
_path().default.extname(moduleName) === ''
) {
const dirname = _path().default.dirname(from);
const pathToModule = _path().default.resolve(dirname, moduleName);
try {
const slashedDirname = (0, _slash().default)(dirname);
const matches = _glob()
.default.sync(`${pathToModule}.*`)
.map(match => (0, _slash().default)(match))
.map(match => {
const relativePath = _path().default.posix.relative(
slashedDirname,
match
);
return _path().default.posix.dirname(match) === slashedDirname
? `./${relativePath}`
: relativePath;
})
.map(match => `\t'${match}'`)
.join('\n');
if (matches) {
const foundMessage = `\n\nHowever, Jest was able to find:\n${matches}`;
const mappedModuleFileExtensions = moduleFileExtensions
.map(ext => `'${ext}'`)
.join(', ');
return (
foundMessage +
"\n\nYou might want to include a file extension in your import, or update your 'moduleFileExtensions', which is currently " +
`[${mappedModuleFileExtensions}].\n\nSee https://jestjs.io/docs/en/configuration#modulefileextensions-array-string`
);
}
} catch (ignored) {}
}
return '';
};
exports.findSiblingsWithFileExtension = findSiblingsWithFileExtension;