MCPcopy Create free account
hub / github.com/ElementsProject/lightning / check_fuzzing

Function check_fuzzing

plugins/test/run-funder_policy.c:441–466  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

439};
440
441static void check_fuzzing(struct test_case fuzzcase)
442{
443 struct node_id id;
444 struct amount_sat our_funds;
445 struct amount_sat fuzz_max = AMOUNT_SAT(0),
446 fuzz_min = AMOUNT_SAT(UINT_MAX);
447 u64 fuzz_amt = fuzzcase.policy.mod * fuzzcase.policy.fuzz_factor / 100;
448
449 memset(&id, 2, sizeof(struct node_id));
450
451 for (size_t i = 0; i < 100; i++) {
452 calculate_our_funding(&fuzzcase.policy, id,
453 fuzzcase.their_funds,
454 fuzzcase.available_funds,
455 fuzzcase.channel_max,
456 fuzzcase.lease_request,
457 &our_funds);
458 if (amount_sat_greater(our_funds, fuzz_max))
459 fuzz_max = our_funds;
460 if (amount_sat_less(our_funds, fuzz_min))
461 fuzz_min = our_funds;
462 }
463
464 assert(fuzz_max.satoshis <= fuzzcase.policy.mod + fuzz_amt);
465 assert(fuzz_min.satoshis >= fuzzcase.policy.mod - fuzz_amt);
466}
467
468int main(int argc, const char *argv[])
469{

Callers 1

mainFunction · 0.85

Calls 3

calculate_our_fundingFunction · 0.85
amount_sat_greaterFunction · 0.85
amount_sat_lessFunction · 0.85

Tested by

no test coverage detected