blob: 986a53c6bd8833c4410de169df5c74015158d7c0 (
plain)
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
|
const traceback = require("traceback");
exports.test_no_args = function(test) {
var passed = false;
try {
var oops = require(); // leave this on line 6!
} catch(e) {
let msg = e.toString();
test.assertEqual(msg.indexOf("Error: you must provide a module name when calling require() from "), 0);
test.assertNotEqual(msg.indexOf("test-require"), -1, msg);
// we'd also like to assert that the right filename and linenumber is in
// the stack trace, but this currently doesn't work (see bugs 679591 and
// 551604)
if (0) {
let tb = traceback.fromException(e);
let lastFrame = tb[tb.length-1];
test.assertNotEqual(lastFrame.filename.indexOf("test-require.js"), -1,
lastFrame.filename);
test.assertEqual(lastFrame.lineNo, 6);
test.assertEqual(lastFrame.funcName, "??");
}
passed = true;
}
test.assert(passed, 'require() with no args should raise helpful error');
};
|