adds missing incldues

This commit is contained in:
Vito
2026-01-20 13:39:29 +01:00
parent ffe0a3cc61
commit 9235ec483a
3 changed files with 195 additions and 72 deletions

View File

@@ -20,6 +20,11 @@
#include <boost/algorithm/string/predicate.hpp>
#include "xrpld/app/tx/detail/InvariantCheck.h"
#include <initializer_list>
#include <string>
namespace xrpl {
namespace test {
@@ -3888,6 +3893,53 @@ class Invariants_test : public beast::unit_test::suite
precloseMpt);
}
void
testVaultComputeMinScale()
{
using namespace jtx;
Account const issuer{"issuer"};
PrettyAsset const vaultAsset = issuer["IOU"];
struct TestCase
{
std::string name;
std::int32_t expectedMinScale;
std::initializer_list<Number const> values;
};
auto const testCases = std::vector<TestCase>{
{
.name = "No values",
.expectedMinScale = 0,
.values = {},
},
{
.name = "Mixed integer and Number values",
.expectedMinScale = 0,
.values = {1, -1, Number{10, -1}},
},
{
.name = "Mixed scales",
.expectedMinScale = -2,
.values = {Number{1, -2}, Number{5, -3}, Number{3, -2}},
},
};
for (auto const& tc : testCases)
{
testcase("vault computeMinScale: " + tc.name);
auto const actualScale =
ValidVault::computeMinScale(vaultAsset, tc.values);
BEAST_EXPECTS(
actualScale == tc.expectedMinScale,
"expected: " + std::to_string(tc.expectedMinScale) +
", actual: " + std::to_string(actualScale));
}
}
public:
void
run() override
@@ -3911,6 +3963,7 @@ public:
testValidPseudoAccounts();
testValidLoanBroker();
testVault();
testVaultComputeMinScale();
}
};