XRPLF / rippled

Decentralized cryptocurrency blockchain daemon implementing the XRP Ledger protocol in C++
https://xrpl.org
ISC License
4.48k stars 1.45k forks source link

Raise test coverage of AMM to 100% #5000

Open thejohnfreeman opened 2 months ago

thejohnfreeman commented 2 months ago

This change requires a discussion of whether and how to meet the goal before it is implemented. Here is a list of the top 30 files, under src/ripple/, added and changed by the AMM PR #4294, in order of increasing added lines:

src/ripple/app/tx/impl/Offer.h src/ripple/app/tx/impl/AMMVote.h src/ripple/app/tx/impl/AMMCreate.h src/ripple/app/paths/impl/StrandFlow.h src/ripple/protocol/jss.h src/ripple/app/tx/impl/AMMBid.h src/ripple/protocol/impl/Issue.cpp src/ripple/app/misc/AMMUtils.h src/ripple/protocol/QualityFunction.h src/ripple/protocol/impl/STIssue.cpp src/ripple/app/paths/AMMContext.h src/ripple/protocol/impl/AMMCore.cpp src/ripple/protocol/AMMCore.h src/ripple/protocol/STIssue.h src/ripple/app/paths/impl/AMMOffer.cpp src/ripple/app/paths/AMMLiquidity.h src/ripple/app/paths/AMMOffer.h src/ripple/app/misc/impl/AMMUtils.cpp src/ripple/app/misc/impl/AMMHelpers.cpp src/ripple/rpc/handlers/AMMInfo.cpp src/ripple/app/paths/impl/AMMLiquidity.cpp src/ripple/app/paths/impl/BookStep.cpp src/ripple/app/tx/impl/AMMDeposit.h src/ripple/app/tx/impl/AMMWithdraw.h src/ripple/app/tx/impl/AMMVote.cpp src/ripple/app/misc/AMMHelpers.h src/ripple/app/tx/impl/AMMBid.cpp src/ripple/app/tx/impl/AMMCreate.cpp src/ripple/app/tx/impl/AMMWithdraw.cpp src/ripple/app/tx/impl/AMMDeposit.cpp

Please take a look at their uncovered lines in the latest report. One easy way is to search for filenames in the search box under the right edge of the graph. Point out any lines that should be considered unreachable by an effective test. We can mark them excluded from coverage in a future PR.