Urara-Blog/node_modules/.pnpm-store/v3/files/06/afd583c5b9af16a984b7260c4ef046420a4039e6fe9f338e3b7e8b92f5502aebc32b1f53db3c5e49c7e1698940d33d7965c31f4239f431a9c024ec519e8ddf
2022-08-14 01:14:53 +08:00

26 lines
886 B
Text

var test = require('tap').test;
var detective = require('../');
var fs = require('fs');
// in order to use detective to find any function
// it needs to properly handle functions called without args
var src = [ 'fn();', 'otherfn();', 'fn();' ].join('\n')
test('noargs', function (t) {
t.plan(1);
t.deepEqual(detective(src, { word: 'fn' }).length, 0, 'finds no arg id');
});
test('find noargs with nodes', function (t) {
t.plan(4);
var modules = detective.find(src, { word: 'fn', nodes: true });
t.equal(modules.strings.length, 0, 'finds no arg id');
t.equal(modules.expressions.length, 0, 'finds no expressions');
t.equal(modules.nodes.length, 2, 'finds a node for each matching function call');
t.equal(
modules.nodes.filter(function (x) {
return x.callee.name === 'fn'
}).length, 2,
'all matches are correct'
);
});