2#include <test/jtx/TestHelpers.h>
4#include <xrpld/rpc/detail/Handler.h>
6#include <xrpl/beast/unit_test/suite.h>
29 return (os << ns.
count() <<
"ns");
46 double sumSquared = 0;
52 for (
auto& i : inputs)
72 sumSquared += (samples[k] * samples[k]);
76 double const meanSquared = (
sum *
sum) / (j * j);
78 clock::duration{
static_cast<long>(
sum / j)},
79 clock::duration{
static_cast<long>(
std::sqrt((sumSquared / j) - meanSquared))},
86 testcase(
"Handler lookup performance");
96 auto const [mean, stdev, n] =
time(
100 dummy = dummy + i + (int)d->role;
104 std::cout <<
"mean=" << mean <<
" stdev=" << stdev <<
" N=" << n <<
'\n';
106 BEAST_EXPECT(dummy != 0);
TestcaseT testcase
Memberspace for declaring test cases.
void run() override
Runs the suite.
auto time(std::size_t n, auto f, auto prng) -> auto
void reportLookupPerformance()
std::set< char const * > getHandlerNames()
Return names of all methods.
Handler const * getHandler(unsigned version, bool betaEnabled, std::string const &name)
std::ostream & operator<<(std::ostream &os, PrettyAmount const &amount)
auto makeVector(Input const &input)
BEAST_DEFINE_TESTSUITE_MANUAL(AMMCalc, app, xrpl)
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
static auto sum(TCollection const &col)