Skip to content

Commit ea7d38d

Browse files
committed
Merge tag 'v1.10.0'
2 parents c2ad449 + d098e92 commit ea7d38d

File tree

3 files changed

+28
-1
lines changed

3 files changed

+28
-1
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "resolve",
33
"description": "resolve like require.resolve() on behalf of files asynchronously and synchronously",
4-
"version": "1.9.0",
4+
"version": "1.10.0",
55
"repository": {
66
"type": "git",
77
"url": "git://github.com/browserify/resolve.git"

test/resolver.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -379,6 +379,19 @@ test('non-string "main" field in package.json', function (t) {
379379
});
380380
});
381381

382+
test('non-string "main" field in package.json', function (t) {
383+
t.plan(5);
384+
385+
var dir = path.join(__dirname, 'resolver');
386+
resolve('./invalid_main', { basedir: dir }, function (err, res, pkg) {
387+
t.ok(err, 'errors on non-string main');
388+
t.equal(err.message, 'package “invalid main” `main` must be a string');
389+
t.equal(err.code, 'INVALID_PACKAGE_MAIN');
390+
t.equal(res, undefined, 'res is undefined');
391+
t.equal(pkg, undefined, 'pkg is undefined');
392+
});
393+
});
394+
382395
test('browser field in package.json', function (t) {
383396
t.plan(3);
384397

test/resolver_sync.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -298,6 +298,20 @@ test('non-string "main" field in package.json', function (t) {
298298
t.end();
299299
});
300300

301+
test('non-string "main" field in package.json', function (t) {
302+
var dir = path.join(__dirname, 'resolver');
303+
try {
304+
var result = resolve.sync('./invalid_main', { basedir: dir });
305+
t.equal(result, undefined, 'result should not exist');
306+
t.fail('should not get here');
307+
} catch (err) {
308+
t.ok(err, 'errors on non-string main');
309+
t.equal(err.message, 'package “invalid main” `main` must be a string');
310+
t.equal(err.code, 'INVALID_PACKAGE_MAIN');
311+
}
312+
t.end();
313+
});
314+
301315
test('browser field in package.json', function (t) {
302316
var dir = path.join(__dirname, 'resolver');
303317
var res = resolve.sync('./browser_field', {

0 commit comments

Comments
 (0)