Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download
80540 views
1
var parser = require('../');
2
var test = require('tap').test;
3
var fs = require('fs');
4
var path = require('path');
5
6
var files = {
7
main: path.join(__dirname, '/files/main.js'),
8
foo: path.join(__dirname, '/files/foo.js'),
9
bar: path.join(__dirname, '/files/bar.js'),
10
extra: path.join(__dirname, '/files/extra.js')
11
};
12
var sources = {
13
foo: fs.readFileSync(files.foo, 'utf8'),
14
bar: fs.readFileSync(files.bar, 'utf8'),
15
extra: fs.readFileSync(files.extra, 'utf8'),
16
main: "console.log(require('./foo')(5)); require('./extra.js')"
17
};
18
19
test('source', function (t) {
20
t.plan(1);
21
var p = parser();
22
p.end({
23
file: files.main,
24
source: sources.main,
25
entry: true
26
});
27
28
var rows = [];
29
p.on('data', function (row) { rows.push(row) });
30
p.on('end', function () {
31
t.same(rows.sort(cmp), [
32
{
33
id: files.main,
34
file: files.main,
35
source: sources.main,
36
entry: true,
37
deps: { './foo': files.foo, './extra.js': files.extra }
38
},
39
{
40
id: files.foo,
41
file: files.foo,
42
source: sources.foo,
43
deps: { './bar': files.bar }
44
},
45
{
46
id: files.bar,
47
file: files.bar,
48
source: sources.bar,
49
deps: {}
50
},
51
{
52
id: files.extra,
53
file: files.extra,
54
source: sources.extra,
55
deps: {}
56
},
57
].sort(cmp));
58
});
59
});
60
61
function cmp (a, b) { return a.id < b.id ? -1 : 1 }
62
63