test: enable unit tests to work with variable reference fee (#5145)

Fix remaining unit tests to be able to process reference fee values other than 10.
This commit is contained in:
Vlad
2025-03-25 14:31:25 +00:00
committed by GitHub
parent 67028d6ea6
commit 2bc5cb240f
37 changed files with 801 additions and 384 deletions

View File

@@ -608,7 +608,10 @@ class LedgerRPC_test : public beast::unit_test::suite
{
testcase("ledger_entry Request AccountRoot");
using namespace test::jtx;
Env env{*this};
auto cfg = envconfig();
cfg->FEES.reference_fee = 10;
Env env{*this, std::move(cfg)};
Account const alice{"alice"};
env.fund(XRP(10000), alice);
env.close();
@@ -1086,7 +1089,7 @@ class LedgerRPC_test : public beast::unit_test::suite
{
// Setup Bob with DepositAuth
env(fset(bob, asfDepositAuth), fee(drops(10)));
env(fset(bob, asfDepositAuth));
env.close();
env(deposit::authCredentials(bob, {{issuer, credType}}));
env.close();
@@ -2450,8 +2453,12 @@ class LedgerRPC_test : public beast::unit_test::suite
{
testcase("Lookup ledger");
using namespace test::jtx;
Env env{*this, FeatureBitset{}}; // hashes requested below assume
// no amendments
auto cfg = envconfig();
cfg->FEES.reference_fee = 10;
Env env{
*this, std::move(cfg), FeatureBitset{}}; // hashes requested below
// assume no amendments
env.fund(XRP(10000), "alice");
env.close();
env.fund(XRP(10000), "bob");
@@ -2661,12 +2668,15 @@ class LedgerRPC_test : public beast::unit_test::suite
{
testcase("Ledger with Queued Transactions");
using namespace test::jtx;
Env env{*this, envconfig([](std::unique_ptr<Config> cfg) {
auto& section = cfg->section("transaction_queue");
section.set("minimum_txn_in_ledger_standalone", "3");
section.set("normal_consensus_increase_percent", "0");
return cfg;
})};
auto cfg = envconfig([](std::unique_ptr<Config> cfg) {
auto& section = cfg->section("transaction_queue");
section.set("minimum_txn_in_ledger_standalone", "3");
section.set("normal_consensus_increase_percent", "0");
return cfg;
});
cfg->FEES.reference_fee = 10;
Env env(*this, std::move(cfg));
Json::Value jv;
jv[jss::ledger_index] = "current";
@@ -2926,7 +2936,10 @@ class LedgerRPC_test : public beast::unit_test::suite
Env env(*this);
Account const owner("owner");
env.fund(XRP(1'000), owner);
Oracle oracle(env, {.owner = owner});
Oracle oracle(
env,
{.owner = owner,
.fee = static_cast<int>(env.current()->fees().base.drops())});
// Malformed document id
auto res = Oracle::ledgerEntry(env, owner, NoneTag);
@@ -2960,6 +2973,8 @@ class LedgerRPC_test : public beast::unit_test::suite
using namespace ripple::test::jtx::oracle;
Env env(*this);
auto const baseFee =
static_cast<int>(env.current()->fees().base.drops());
std::vector<AccountID> accounts;
std::vector<std::uint32_t> oracles;
for (int i = 0; i < 10; ++i)
@@ -2967,11 +2982,13 @@ class LedgerRPC_test : public beast::unit_test::suite
Account const owner(std::string("owner") + std::to_string(i));
env.fund(XRP(1'000), owner);
// different accounts can have the same asset pair
Oracle oracle(env, {.owner = owner, .documentID = i});
Oracle oracle(
env, {.owner = owner, .documentID = i, .fee = baseFee});
accounts.push_back(owner.id());
oracles.push_back(oracle.documentID());
// same account can have different asset pair
Oracle oracle1(env, {.owner = owner, .documentID = i + 10});
Oracle oracle1(
env, {.owner = owner, .documentID = i + 10, .fee = baseFee});
accounts.push_back(owner.id());
oracles.push_back(oracle1.documentID());
}