mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-08 21:11:56 +00:00
95d0cb5273
From the same llvm-cov run of `difftest --green`: 102 fixture cases (fixtures/<unit>/coverage.json, each citing the upstream branch and the Rust line it covers) execute 54 previously uncovered spans in srf_offset, math, crv_nurb, srf_nurb, srf_adv_p4/p5/p6, crv_adv_p2, crv_fit_p1/p2, crv_tool_p2, crv_common, crv_geom, geom, srf_tool_p1 and srf_tool_p3: offset normal fallbacks and pole cases, NL_NUM_ERR quadratic branches, degenerate Bezier segments and curvature overflow, Coons and railed-surface G1/twist mismatches, weights out of range in knot removal, closed-curve Newton steps and tiny-sweep quartic arcs. Each case was checked to reach its branch. In the other 21 green nlib units every uncovered span is Rust-only or defensive (reasons kept with the coverage notes). No runner or library changes. All sixteen units PASS with 0 failures and 0 deferred; --perturb SENSITIVE on all sixteen. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
203 lines
3.7 KiB
JSON
203 lines
3.7 KiB
JSON
{
|
|
"cases": [
|
|
{
|
|
"name": "cov_quadratic_linear_div_overflow",
|
|
"upstream_ref": "source/SMLib/src/NL_Math.cpp:2574 N_SolveQuadraticEq NL_NUM_ERR (coverage: nurbs/math.rs:688)",
|
|
"inputs": {
|
|
"op": "quadratic",
|
|
"a": 0.0,
|
|
"b": 1e-11,
|
|
"c": 1e+300
|
|
}
|
|
},
|
|
{
|
|
"name": "cov_quadratic_b0_div_overflow",
|
|
"upstream_ref": "source/SMLib/src/NL_Math.cpp:2588 N_SolveQuadraticEq NL_NUM_ERR (coverage: nurbs/math.rs:695)",
|
|
"inputs": {
|
|
"op": "quadratic",
|
|
"a": 1e-11,
|
|
"b": 0.0,
|
|
"c": 1e+300
|
|
}
|
|
},
|
|
{
|
|
"name": "cov_quadratic_c0_div_overflow",
|
|
"upstream_ref": "source/SMLib/src/NL_Math.cpp:2608 N_SolveQuadraticEq NL_NUM_ERR (coverage: nurbs/math.rs:707)",
|
|
"inputs": {
|
|
"op": "quadratic",
|
|
"a": 1e-11,
|
|
"b": 1e+300,
|
|
"c": 0.0
|
|
}
|
|
},
|
|
{
|
|
"name": "cov_quadratic_q_over_a_bad",
|
|
"upstream_ref": "source/SMLib/src/NL_Math.cpp:2653 N_SolveQuadraticEq NL_NUM_ERR (coverage: nurbs/math.rs:725)",
|
|
"inputs": {
|
|
"op": "quadratic",
|
|
"a": 1e-11,
|
|
"b": 1e+200,
|
|
"c": 1.0
|
|
}
|
|
},
|
|
{
|
|
"name": "cov_quadratic_c_over_q_bad",
|
|
"upstream_ref": "source/SMLib/src/NL_Math.cpp:2656 N_SolveQuadraticEq NL_NUM_ERR (coverage: nurbs/math.rs:728)",
|
|
"inputs": {
|
|
"op": "quadratic",
|
|
"a": 2.0,
|
|
"b": 1e+200,
|
|
"c": 1.0
|
|
}
|
|
},
|
|
{
|
|
"name": "cov_float_op_mul_second_bound",
|
|
"upstream_ref": "source/SMLib/src/NL_Math.cpp:2708 N_FloatOpIsBad multiplication, y > BIGD/x but x <= BIGD/y (coverage: nurbs/math.rs:798)",
|
|
"inputs": {
|
|
"op": "float_op",
|
|
"x": 8.10499453712534e+28,
|
|
"y": 2.2180065965842307e+279,
|
|
"flag": 3
|
|
}
|
|
},
|
|
{
|
|
"name": "cov_for_back_pts_lower_left_input_error",
|
|
"upstream_ref": "source/SMLib/src/NL_Math.cpp:7605 N_RealMatrixForBack triangular type NL_INP_ERR (coverage: nurbs/math.rs:1665)",
|
|
"inputs": {
|
|
"op": "for_back_pts",
|
|
"a": {
|
|
"n": 1,
|
|
"m": 1,
|
|
"mtp": "lower_left",
|
|
"bw": 2,
|
|
"rows": [
|
|
[
|
|
2.0,
|
|
0.0
|
|
],
|
|
[
|
|
1.0,
|
|
3.0
|
|
]
|
|
]
|
|
},
|
|
"decompose": false,
|
|
"rhs": [
|
|
[
|
|
1,
|
|
2,
|
|
3
|
|
],
|
|
[
|
|
4,
|
|
5,
|
|
6
|
|
]
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "cov_for_back_pts_upper_right_input_error",
|
|
"upstream_ref": "source/SMLib/src/NL_Math.cpp:7605 N_RealMatrixForBack triangular type NL_INP_ERR (coverage: nurbs/math.rs:1665)",
|
|
"inputs": {
|
|
"op": "for_back_pts",
|
|
"a": {
|
|
"n": 1,
|
|
"m": 1,
|
|
"mtp": "upper_right",
|
|
"bw": 2,
|
|
"rows": [
|
|
[
|
|
2.0,
|
|
1.0
|
|
],
|
|
[
|
|
0.0,
|
|
3.0
|
|
]
|
|
]
|
|
},
|
|
"decompose": false,
|
|
"rhs": [
|
|
[
|
|
1,
|
|
2,
|
|
3
|
|
],
|
|
[
|
|
4,
|
|
5,
|
|
6
|
|
]
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "cov_for_back_cpts_lower_left_input_error",
|
|
"upstream_ref": "source/SMLib/src/NL_Math.cpp:7605 N_RealMatrixForBack triangular type NL_INP_ERR (coverage: nurbs/math.rs:1665)",
|
|
"inputs": {
|
|
"op": "for_back_cpts",
|
|
"a": {
|
|
"n": 1,
|
|
"m": 1,
|
|
"mtp": "lower_left",
|
|
"bw": 2,
|
|
"rows": [
|
|
[
|
|
2.0,
|
|
0.0
|
|
],
|
|
[
|
|
1.0,
|
|
3.0
|
|
]
|
|
]
|
|
},
|
|
"decompose": false,
|
|
"rhs": [
|
|
[
|
|
1,
|
|
2,
|
|
3,
|
|
1
|
|
],
|
|
[
|
|
4,
|
|
5,
|
|
6,
|
|
2
|
|
]
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "cov_right_for_back_upper_right_input_error",
|
|
"upstream_ref": "source/SMLib/src/NL_Math.cpp:7852 N_RealMatrixRightForBack triangular type NL_INP_ERR (coverage: nurbs/math.rs:1665)",
|
|
"inputs": {
|
|
"op": "right_for_back",
|
|
"a": {
|
|
"n": 1,
|
|
"m": 1,
|
|
"mtp": "upper_right",
|
|
"bw": 2,
|
|
"rows": [
|
|
[
|
|
2.0,
|
|
1.0
|
|
],
|
|
[
|
|
0.0,
|
|
3.0
|
|
]
|
|
]
|
|
},
|
|
"decompose": false,
|
|
"y": [
|
|
1.0,
|
|
2.0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|