File size: 1,772 Bytes
d8f0e51
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
var test = require('tap').test;
var detective = require('../');

var sources = [
    'require("a")',
    "require('a')",
    'require(`a`)',
    ';require("a")',
    ' require("a")',
    'void require("a")',
    '+require("a")',
    '!require("a")',
    '/*comments*/require("a")',
    '(require("a"))',

    'require/*comments*/("a")',
    ';require/*comments*/("a")',
    ' require/*comments*/("a")',
    'void require/*comments*/("a")',
    '+require/*comments*/("a")',
    '!require/*comments*/("a")',
    '/*comments*/require/*comments*/("a")',
    '(require/*comments*/("a"))',

    'require /*comments*/ ("a")',
    ';require /*comments*/ ("a")',
    ' require /*comments*/ ("a")',
    'void require /*comments*/ ("a")',
    '+require /*comments*/ ("a")',
    '!require /*comments*/ ("a")',
    ' /*comments*/ require /*comments*/ ("a")',
    '(require /*comments*/ ("a"))',

    'require /*comments*/ /*more comments*/ ("a")',
    ';require /*comments*/ /*more comments*/ ("a")',
    ' require /*comments*/ /*more comments*/ ("a")',
    'void require /*comments*/ /*more comments*/ ("a")',
    '+require /*comments*/ /*more comments*/ ("a")',
    '!require /*comments*/ /*more comments*/ ("a")',
    ' /*comments*/ /*more comments*/ require /*comments*/ /*more comments*/ ("a")',
    '(require /*comments*/ /*more comments*/ ("a"))',

    'require//comments\n("a")',
    ';require//comments\n("a")',
    ' require//comments\n("a")',
    'void require//comments\n("a")',
    '+require//comments\n("a")',
    '!require//comments\n("a")',
    '  require//comments\n("a")',
    '(require//comments\n("a"))'
];

test('complicated', function (t) {
    t.plan(sources.length);
    sources.forEach(function(src) {
        t.deepEqual(detective(src), [ 'a' ]);
    });
});