-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtest.js
33 lines (26 loc) · 1.14 KB
/
test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
'use strict';
const assert = require('assert');
const { supports, list } = require('./index.js');
assert(Array.isArray(list));
assert(list.length > 0);
list.forEach(item => assert.strictEqual(typeof item, 'string'));
assert.strictEqual(supports('fs'), true);
assert.strictEqual(supports('fs.mkdir'), true);
assert.strictEqual(supports('fs.mkdir.recursive', '11.0.0'), true);
assert.strictEqual(supports('fs.mkdir.recursive', '10.0.0'), false);
assert.strictEqual(supports('fs.mkdir.recursive', '10.8.0'), false);
assert.strictEqual(supports('fs.mkdir.recursive', '10.8.99'), false);
assert.strictEqual(supports('fs.mkdir.recursive', '10.9.0'), true);
assert.strictEqual(supports('fs.mkdir.foobar'), undefined);
assert.strictEqual(supports('fs.foobar'), undefined);
assert.strictEqual(supports('foobar'), undefined);
const [major, minor] =
process.versions.node.split('.').map(x => Number(x));
if (major > 10) {
assert.strictEqual(supports('fs.mkdir.recursive'), true);
} else if (major < 10) {
assert.strictEqual(supports('fs.mkdir.recursive'), false);
} else {
assert.strictEqual(supports('fs.mkdir.recursive'), minor >= 9);
}
console.log('Tests passed');