flecks/packages/core/test/server/resolve.js

63 lines
1.4 KiB
JavaScript
Raw Normal View History

2024-01-30 12:55:17 -06:00
import {join} from 'path';
import {expect} from 'chai';
import clearModule from 'clear-module';
import resolve from '@flecks/core/build/resolve';
const {
FLECKS_CORE_ROOT = process.cwd(),
} = process.env;
const root = join(FLECKS_CORE_ROOT, 'test', 'server', 'resolve');
it('can resolve inexact', async () => {
const clear = resolve({
alias: {
'./foo': './bar',
},
fallback: {},
}, []);
expect(__non_webpack_require__(join(root, 'blah')))
.to.equal(4);
clear();
clearModule(join(root, 'blah'));
expect(__non_webpack_require__(join(root, 'blah')))
.to.equal(3);
clearModule(join(root, 'blah'));
});
it('can resolve exact', async () => {
const clear = resolve({
alias: {
'./foo$': './bar',
},
fallback: {},
}, []);
expect(__non_webpack_require__(join(root, 'blah')))
.to.equal(3);
expect(__non_webpack_require__(join(root, 'boo')))
.to.equal(2);
clear();
clearModule(join(root, 'blah'));
clearModule(join(root, 'boo'));
expect(__non_webpack_require__(join(root, 'boo')))
.to.equal(1);
clearModule(join(root, 'boo'));
});
it('can resolve false', async () => {
const clear = resolve({
alias: {
'./foo': false,
},
fallback: {},
}, []);
expect(__non_webpack_require__(join(root, 'boo')))
.to.be.undefined;
clear();
clearModule(join(root, 'boo'));
expect(__non_webpack_require__(join(root, 'boo')))
.to.equal(1);
});