zulip/frontend_tests/node_tests/blueslip_stacktrace.js

57 lines
1.7 KiB
JavaScript

const blueslip_stacktrace = zrequire("blueslip_stacktrace");
run_test("clean_path", () => {
// Local file
assert.strictEqual(
blueslip_stacktrace.clean_path("webpack:///static/js/upload.js"),
"/static/js/upload.js"
);
// Third party library (jQuery)
assert.strictEqual(
blueslip_stacktrace.clean_path(
"webpack:///.-npm-cache/de76fb6f582a29b053274f9048b6158091351048/node_modules/jquery/dist/jquery.js"
),
"jquery/dist/jquery.js"
);
// Third party library (underscore)
assert.strictEqual(
blueslip_stacktrace.clean_path(
"webpack:///.-npm-cache/de76fb6f582a29b053274f9048b…58091351048/node_modules/underscore/underscore.js"
),
"underscore/underscore.js"
);
});
run_test("clean_function_name", () => {
assert.deepEqual(blueslip_stacktrace.clean_function_name(undefined), undefined);
// Local file
assert.deepEqual(
blueslip_stacktrace.clean_function_name("Object../static/js/upload.js.exports.options"),
{
scope: "Object../static/js/upload.js.exports.",
name: "options",
}
);
// Third party library (jQuery)
assert.deepEqual(blueslip_stacktrace.clean_function_name("mightThrow"), {
scope: "",
name: "mightThrow",
});
// Third party library (underscore)
assert.deepEqual(
blueslip_stacktrace.clean_function_name(
"Function.../zulip-npm-cache/de76fb6f582a29b053274f…es/underscore/underscore.js?3817._.each._.forEach"
),
{
scope:
"Function.../zulip-npm-cache/de76fb6f582a29b053274f…es/underscore/underscore.js?3817._.each._.",
name: "forEach",
}
);
});