Fixed #1 - Fixed the whatsnew-** script for loading release notes into builds
Added test to ensure that release notes are parsed properly Updated to latest dependencies to fix security vulnerability Updated GH Actions Workflow to run test before updating tag Updated README.md to reflect proper whatsnew documentation.
This commit is contained in:
3
node_modules/resolve/test/core.js
generated
vendored
3
node_modules/resolve/test/core.js
generated
vendored
@@ -10,6 +10,9 @@ test('core modules', function (t) {
|
||||
|
||||
st.ok(!resolve.isCore('seq'));
|
||||
st.ok(!resolve.isCore('../'));
|
||||
|
||||
st.ok(!resolve.isCore('toString'));
|
||||
|
||||
st.end();
|
||||
});
|
||||
|
||||
|
||||
2
node_modules/resolve/test/filter.js
generated
vendored
2
node_modules/resolve/test/filter.js
generated
vendored
@@ -9,7 +9,7 @@ test('filter', function (t) {
|
||||
resolve('./baz', {
|
||||
basedir: dir,
|
||||
packageFilter: function (pkg, pkgfile) {
|
||||
pkg.main = 'doom';
|
||||
pkg.main = 'doom'; // eslint-disable-line no-param-reassign
|
||||
packageFilterArgs = [pkg, pkgfile];
|
||||
return pkg;
|
||||
}
|
||||
|
||||
17
node_modules/resolve/test/filter_sync.js
generated
vendored
17
node_modules/resolve/test/filter_sync.js
generated
vendored
@@ -7,9 +7,10 @@ test('filter', function (t) {
|
||||
var packageFilterArgs;
|
||||
var res = resolve.sync('./baz', {
|
||||
basedir: dir,
|
||||
packageFilter: function (pkg, dir) {
|
||||
pkg.main = 'doom';
|
||||
packageFilterArgs = [pkg, dir];
|
||||
// NOTE: in v2.x, this will be `pkg, pkgfile, dir`, but must remain "broken" here in v1.x for compatibility
|
||||
packageFilter: function (pkg, /*pkgfile,*/ dir) { // eslint-disable-line spaced-comment
|
||||
pkg.main = 'doom'; // eslint-disable-line no-param-reassign
|
||||
packageFilterArgs = 'is 1.x' ? [pkg, dir] : [pkg, pkgfile, dir]; // eslint-disable-line no-constant-condition, no-undef
|
||||
return pkg;
|
||||
}
|
||||
});
|
||||
@@ -19,8 +20,14 @@ test('filter', function (t) {
|
||||
var packageData = packageFilterArgs[0];
|
||||
t.equal(packageData.main, 'doom', 'package "main" was altered');
|
||||
|
||||
var packageFile = packageFilterArgs[1];
|
||||
t.equal(packageFile, path.join(dir, 'baz'), 'second packageFilter argument is "dir"');
|
||||
if (!'is 1.x') { // eslint-disable-line no-constant-condition
|
||||
var packageFile = packageFilterArgs[1];
|
||||
t.equal(packageFile, path.join(dir, 'baz', 'package.json'), 'package.json path is correct');
|
||||
}
|
||||
|
||||
var packageDir = packageFilterArgs['is 1.x' ? 1 : 2]; // eslint-disable-line no-constant-condition
|
||||
// eslint-disable-next-line no-constant-condition
|
||||
t.equal(packageDir, path.join(dir, 'baz'), ('is 1.x' ? 'second' : 'third') + ' packageFilter argument is "dir"');
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
20
node_modules/resolve/test/resolver.js
generated
vendored
20
node_modules/resolve/test/resolver.js
generated
vendored
@@ -256,6 +256,22 @@ test('other path', function (t) {
|
||||
});
|
||||
});
|
||||
|
||||
test('path iterator', function (t) {
|
||||
t.plan(2);
|
||||
|
||||
var resolverDir = path.join(__dirname, 'resolver');
|
||||
|
||||
var exactIterator = function (x, start, getPackageCandidates, opts) {
|
||||
return [path.join(resolverDir, x)];
|
||||
};
|
||||
|
||||
resolve('baz', { packageIterator: exactIterator }, function (err, res, pkg) {
|
||||
if (err) t.fail(err);
|
||||
t.equal(res, path.join(resolverDir, 'baz/quux.js'));
|
||||
t.equal(pkg && pkg.name, 'baz');
|
||||
});
|
||||
});
|
||||
|
||||
test('incorrect main', function (t) {
|
||||
t.plan(1);
|
||||
|
||||
@@ -402,8 +418,8 @@ test('browser field in package.json', function (t) {
|
||||
basedir: dir,
|
||||
packageFilter: function packageFilter(pkg) {
|
||||
if (pkg.browser) {
|
||||
pkg.main = pkg.browser;
|
||||
delete pkg.browser;
|
||||
pkg.main = pkg.browser; // eslint-disable-line no-param-reassign
|
||||
delete pkg.browser; // eslint-disable-line no-param-reassign
|
||||
}
|
||||
return pkg;
|
||||
}
|
||||
|
||||
1
node_modules/resolve/test/resolver/baz/package.json
generated
vendored
1
node_modules/resolve/test/resolver/baz/package.json
generated
vendored
@@ -1,3 +1,4 @@
|
||||
{
|
||||
"name": "baz",
|
||||
"main": "quux.js"
|
||||
}
|
||||
|
||||
19
node_modules/resolve/test/resolver_sync.js
generated
vendored
19
node_modules/resolve/test/resolver_sync.js
generated
vendored
@@ -172,6 +172,21 @@ test('other path', function (t) {
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('path iterator', function (t) {
|
||||
var resolverDir = path.join(__dirname, 'resolver');
|
||||
|
||||
var exactIterator = function (x, start, getPackageCandidates, opts) {
|
||||
return [path.join(resolverDir, x)];
|
||||
};
|
||||
|
||||
t.equal(
|
||||
resolve.sync('baz', { packageIterator: exactIterator }),
|
||||
path.join(resolverDir, 'baz/quux.js')
|
||||
);
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('incorrect main', function (t) {
|
||||
var resolverDir = path.join(__dirname, 'resolver');
|
||||
var dir = path.join(resolverDir, 'incorrect_main');
|
||||
@@ -318,8 +333,8 @@ test('browser field in package.json', function (t) {
|
||||
basedir: dir,
|
||||
packageFilter: function packageFilter(pkg) {
|
||||
if (pkg.browser) {
|
||||
pkg.main = pkg.browser;
|
||||
delete pkg.browser;
|
||||
pkg.main = pkg.browser; // eslint-disable-line no-param-reassign
|
||||
delete pkg.browser; // eslint-disable-line no-param-reassign
|
||||
}
|
||||
return pkg;
|
||||
}
|
||||
|
||||
91
node_modules/resolve/test/symlinks.js
generated
vendored
91
node_modules/resolve/test/symlinks.js
generated
vendored
@@ -1,16 +1,26 @@
|
||||
var path = require('path');
|
||||
var fs = require('fs');
|
||||
var test = require('tape');
|
||||
var map = require('array.prototype.map');
|
||||
var resolve = require('../');
|
||||
|
||||
var symlinkDir = path.join(__dirname, 'resolver', 'symlinked', 'symlink');
|
||||
var packageDir = path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'package');
|
||||
var modADir = path.join(__dirname, 'symlinks', 'source', 'node_modules', 'mod-a');
|
||||
var symlinkModADir = path.join(__dirname, 'symlinks', 'dest', 'node_modules', 'mod-a');
|
||||
try {
|
||||
fs.unlinkSync(symlinkDir);
|
||||
} catch (err) {}
|
||||
try {
|
||||
fs.unlinkSync(packageDir);
|
||||
} catch (err) {}
|
||||
try {
|
||||
fs.unlinkSync(modADir);
|
||||
} catch (err) {}
|
||||
try {
|
||||
fs.unlinkSync(symlinkModADir);
|
||||
} catch (err) {}
|
||||
|
||||
try {
|
||||
fs.symlinkSync('./_/symlink_target', symlinkDir, 'dir');
|
||||
} catch (err) {
|
||||
@@ -23,6 +33,12 @@ try {
|
||||
// if fails then it is probably on Windows and lets try to create a junction
|
||||
fs.symlinkSync(path.join(__dirname, '..', '..', 'package') + '\\', packageDir, 'junction');
|
||||
}
|
||||
try {
|
||||
fs.symlinkSync('../../source/node_modules/mod-a', symlinkModADir, 'dir');
|
||||
} catch (err) {
|
||||
// if fails then it is probably on Windows and lets try to create a junction
|
||||
fs.symlinkSync(path.join(__dirname, '..', '..', 'source', 'node_modules', 'mod-a') + '\\', symlinkModADir, 'junction');
|
||||
}
|
||||
|
||||
test('symlink', function (t) {
|
||||
t.plan(2);
|
||||
@@ -79,6 +95,79 @@ test('async symlink from node_modules to other dir when preserveSymlinks = false
|
||||
resolve('package', { basedir: basedir, preserveSymlinks: false }, function (err, result) {
|
||||
t.notOk(err, 'no error');
|
||||
t.equal(result, path.resolve(__dirname, 'resolver/symlinked/package/bar.js'));
|
||||
t.end();
|
||||
});
|
||||
});
|
||||
|
||||
test('packageFilter', function (t) {
|
||||
function relative(x) {
|
||||
return path.relative(__dirname, x);
|
||||
}
|
||||
|
||||
function testPackageFilter(preserveSymlinks) {
|
||||
return function (st) {
|
||||
st.plan('is 1.x' ? 3 : 5); // eslint-disable-line no-constant-condition
|
||||
|
||||
var destMain = 'symlinks/dest/node_modules/mod-a/index.js';
|
||||
var destPkg = 'symlinks/dest/node_modules/mod-a/package.json';
|
||||
var sourceMain = 'symlinks/source/node_modules/mod-a/index.js';
|
||||
var sourcePkg = 'symlinks/source/node_modules/mod-a/package.json';
|
||||
var destDir = path.join(__dirname, 'symlinks', 'dest');
|
||||
|
||||
/* eslint multiline-comment-style: 0 */
|
||||
/* v2.x will restore these tests
|
||||
var packageFilterPath = [];
|
||||
var actualPath = resolve.sync('mod-a', {
|
||||
basedir: destDir,
|
||||
preserveSymlinks: preserveSymlinks,
|
||||
packageFilter: function (pkg, pkgfile, dir) {
|
||||
packageFilterPath.push(pkgfile);
|
||||
}
|
||||
});
|
||||
st.equal(
|
||||
relative(actualPath),
|
||||
path.normalize(preserveSymlinks ? destMain : sourceMain),
|
||||
'sync: actual path is correct'
|
||||
);
|
||||
st.deepEqual(
|
||||
map(packageFilterPath, relative),
|
||||
map(preserveSymlinks ? [destPkg, destPkg] : [sourcePkg, sourcePkg], path.normalize),
|
||||
'sync: packageFilter pkgfile arg is correct'
|
||||
);
|
||||
*/
|
||||
|
||||
var asyncPackageFilterPath = [];
|
||||
resolve(
|
||||
'mod-a',
|
||||
{
|
||||
basedir: destDir,
|
||||
preserveSymlinks: preserveSymlinks,
|
||||
packageFilter: function (pkg, pkgfile) {
|
||||
asyncPackageFilterPath.push(pkgfile);
|
||||
}
|
||||
},
|
||||
function (err, actualPath) {
|
||||
st.error(err, 'no error');
|
||||
st.equal(
|
||||
relative(actualPath),
|
||||
path.normalize(preserveSymlinks ? destMain : sourceMain),
|
||||
'async: actual path is correct'
|
||||
);
|
||||
st.deepEqual(
|
||||
map(asyncPackageFilterPath, relative),
|
||||
map(
|
||||
preserveSymlinks ? [destPkg, destPkg, destPkg] : [sourcePkg, sourcePkg, sourcePkg],
|
||||
path.normalize
|
||||
),
|
||||
'async: packageFilter pkgfile arg is correct'
|
||||
);
|
||||
}
|
||||
);
|
||||
};
|
||||
}
|
||||
|
||||
t.test('preserveSymlinks: false', testPackageFilter(false));
|
||||
|
||||
t.test('preserveSymlinks: true', testPackageFilter(true));
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user