Assert that a resolved call exists. Returns the index. */
| 35 | |
| 36 | /* Assert that a resolved call exists. Returns the index. */ |
| 37 | static int require_resolved(const CBMFileResult *r, const char *callerSub, const char *calleeSub) { |
| 38 | int idx = find_resolved(r, callerSub, calleeSub); |
| 39 | if (idx < 0) { |
| 40 | printf(" MISSING resolved call: caller~%s -> callee~%s (have %d)\n", callerSub, calleeSub, |
| 41 | r->resolved_calls.count); |
| 42 | for (int i = 0; i < r->resolved_calls.count; i++) { |
| 43 | const CBMResolvedCall *rc = &r->resolved_calls.items[i]; |
| 44 | printf(" %s -> %s [%s %.2f]\n", rc->caller_qn ? rc->caller_qn : "(null)", |
| 45 | rc->callee_qn ? rc->callee_qn : "(null)", rc->strategy ? rc->strategy : "(null)", |
| 46 | rc->confidence); |
| 47 | } |
| 48 | } |
| 49 | return idx; |
| 50 | } |
| 51 | |
| 52 | /* Count resolved calls matching pattern */ |
| 53 | static int count_resolved(const CBMFileResult *r, const char *callerSub, const char *calleeSub) { |
no test coverage detected