in src/metrics/nargs.rs [760:818]
fn javascript_functions() {
check_metrics::<JavascriptParser>(
"function f(a, b) {
return a * b;
}
function f1(a, b) {
return a * b;
}",
"foo.js",
|metric| {
// 2 functions
insta::assert_json_snapshot!(
metric.nargs,
@r###"
{
"total_functions": 4.0,
"total_closures": 0.0,
"average_functions": 2.0,
"average_closures": 0.0,
"total": 4.0,
"average": 2.0,
"functions_min": 0.0,
"functions_max": 2.0,
"closures_min": 0.0,
"closures_max": 0.0
}"###
);
},
);
check_metrics::<JavascriptParser>(
"function f(a, b) {
return a * b;
}
function f1(a, b, c) {
return a * b;
}",
"foo.js",
|metric| {
// 2 functions
insta::assert_json_snapshot!(
metric.nargs,
@r###"
{
"total_functions": 5.0,
"total_closures": 0.0,
"average_functions": 2.5,
"average_closures": 0.0,
"total": 5.0,
"average": 2.5,
"functions_min": 0.0,
"functions_max": 3.0,
"closures_min": 0.0,
"closures_max": 0.0
}"###
);
},
);
}