mirror of
https://github.com/Xahau/xahaud.git
synced 2025-11-19 01:55:48 +00:00
Compare commits
4 Commits
nd-experim
...
limit-xaha
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5952361b81 | ||
|
|
929e8b2200 | ||
|
|
81041c8b28 | ||
|
|
f0429602ce |
@@ -458,6 +458,13 @@ Change::activateXahauGenesis()
|
|||||||
bool const isTest =
|
bool const isTest =
|
||||||
(ctx_.tx.getFlags() & tfTestSuite) && ctx_.app.config().standalone();
|
(ctx_.tx.getFlags() & tfTestSuite) && ctx_.app.config().standalone();
|
||||||
|
|
||||||
|
// RH NOTE: we'll only configure xahau governance structure on networks that
|
||||||
|
// begin with 2133... so production xahau: 21337 and its testnet 21338
|
||||||
|
// with 21330-21336 and 21339 also valid and reserved for dev nets etc.
|
||||||
|
// all other Network IDs will be conventionally configured.
|
||||||
|
if ((ctx_.app.config().NETWORK_ID / 10) != 2133 && !isTest)
|
||||||
|
return;
|
||||||
|
|
||||||
auto [ng_entries, l1_entries, l2_entries, gov_params] =
|
auto [ng_entries, l1_entries, l2_entries, gov_params] =
|
||||||
normalizeXahauGenesis(
|
normalizeXahauGenesis(
|
||||||
isTest ? TestNonGovernanceDistribution : NonGovernanceDistribution,
|
isTest ? TestNonGovernanceDistribution : NonGovernanceDistribution,
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
#include <ripple/app/misc/HashRouter.h>
|
#include <ripple/app/misc/HashRouter.h>
|
||||||
#include <ripple/app/tx/apply.h>
|
#include <ripple/app/tx/apply.h>
|
||||||
#include <ripple/app/tx/impl/XahauGenesis.h>
|
#include <ripple/app/tx/impl/XahauGenesis.h>
|
||||||
|
#include <ripple/core/Config.h>
|
||||||
#include <ripple/json/json_reader.h>
|
#include <ripple/json/json_reader.h>
|
||||||
#include <ripple/protocol/Feature.h>
|
#include <ripple/protocol/Feature.h>
|
||||||
#include <ripple/protocol/Indexes.h>
|
#include <ripple/protocol/Indexes.h>
|
||||||
@@ -27,6 +28,7 @@
|
|||||||
#include <ripple/protocol/jss.h>
|
#include <ripple/protocol/jss.h>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <test/jtx.h>
|
#include <test/jtx.h>
|
||||||
|
#include <test/jtx/envconfig.h>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
#define BEAST_REQUIRE(x) \
|
#define BEAST_REQUIRE(x) \
|
||||||
@@ -59,7 +61,18 @@ maybe_to_string(T val, std::enable_if_t<!std::is_integral_v<T>, int> = 0)
|
|||||||
using namespace XahauGenesis;
|
using namespace XahauGenesis;
|
||||||
|
|
||||||
namespace ripple {
|
namespace ripple {
|
||||||
|
|
||||||
|
inline std::unique_ptr<Config>
|
||||||
|
makeNetworkConfig(uint32_t networkID)
|
||||||
|
{
|
||||||
|
using namespace test::jtx;
|
||||||
|
return envconfig([&](std::unique_ptr<Config> cfg) {
|
||||||
|
cfg->NETWORK_ID = networkID;
|
||||||
|
return cfg;
|
||||||
|
});
|
||||||
|
}
|
||||||
namespace test {
|
namespace test {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Accounts used in this test suite:
|
Accounts used in this test suite:
|
||||||
alice: AE123A8556F3CF91154711376AFB0F894F832B3D,
|
alice: AE123A8556F3CF91154711376AFB0F894F832B3D,
|
||||||
@@ -125,7 +138,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
bool burnedViaTest =
|
bool burnedViaTest =
|
||||||
false, // means the calling test already burned some of the genesis
|
false, // means the calling test already burned some of the genesis
|
||||||
bool skipTests = false,
|
bool skipTests = false,
|
||||||
bool const testFlag = false)
|
bool const testFlag = false,
|
||||||
|
bool const badNetID = false)
|
||||||
{
|
{
|
||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
|
|
||||||
@@ -183,6 +197,20 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
if (skipTests)
|
if (skipTests)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (badNetID)
|
||||||
|
{
|
||||||
|
BEAST_EXPECT(
|
||||||
|
100000000000000000ULL ==
|
||||||
|
env.app().getLedgerMaster().getClosedLedger()->info().drops);
|
||||||
|
|
||||||
|
auto genesisAccRoot = env.le(keylet::account(genesisAccID));
|
||||||
|
BEAST_REQUIRE(!!genesisAccRoot);
|
||||||
|
BEAST_EXPECT(
|
||||||
|
genesisAccRoot->getFieldAmount(sfBalance) ==
|
||||||
|
XRPAmount(100000000000000000ULL));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// sum the initial distribution balances, these should equal total coins
|
// sum the initial distribution balances, these should equal total coins
|
||||||
// in the closed ledger
|
// in the closed ledger
|
||||||
std::vector<std::pair<std::string, XRPAmount>> const& l1membership =
|
std::vector<std::pair<std::string, XRPAmount>> const& l1membership =
|
||||||
@@ -442,17 +470,59 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
{
|
{
|
||||||
testcase("Test activation");
|
testcase("Test activation");
|
||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
activate(__LINE__, env, false, false, false);
|
activate(__LINE__, env, false, false, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
testBadNetworkIDActivation(FeatureBitset features)
|
||||||
|
{
|
||||||
|
testcase("Test Bad Network ID activation");
|
||||||
|
using namespace jtx;
|
||||||
|
std::vector<int> badNetIDs{
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
10,
|
||||||
|
100,
|
||||||
|
1000,
|
||||||
|
10000,
|
||||||
|
20000,
|
||||||
|
21000,
|
||||||
|
21328,
|
||||||
|
21329,
|
||||||
|
21340,
|
||||||
|
21341,
|
||||||
|
65535};
|
||||||
|
|
||||||
|
for (int netid : badNetIDs)
|
||||||
|
{
|
||||||
|
Env env{
|
||||||
|
*this,
|
||||||
|
makeNetworkConfig(netid),
|
||||||
|
features - featureXahauGenesis};
|
||||||
|
activate(__LINE__, env, false, false, false, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int netid = 21330; netid <= 21339; ++netid)
|
||||||
|
{
|
||||||
|
Env env{
|
||||||
|
*this,
|
||||||
|
makeNetworkConfig(netid),
|
||||||
|
features - featureXahauGenesis};
|
||||||
|
activate(__LINE__, env, false, false, false, false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
testWithSignerList(FeatureBitset features)
|
testWithSignerList(FeatureBitset features)
|
||||||
{
|
{
|
||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
testcase("Test signerlist");
|
testcase("Test signerlist");
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
Account const alice{"alice", KeyType::ed25519};
|
Account const alice{"alice", KeyType::ed25519};
|
||||||
env.fund(XRP(1000), alice);
|
env.fund(XRP(1000), alice);
|
||||||
@@ -468,7 +538,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
{
|
{
|
||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
testcase("Test regkey");
|
testcase("Test regkey");
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
env.memoize(env.master);
|
env.memoize(env.master);
|
||||||
Account const alice("alice");
|
Account const alice("alice");
|
||||||
@@ -667,7 +738,11 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
{
|
{
|
||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
testcase("Test governance membership voting L1");
|
testcase("Test governance membership voting L1");
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis, nullptr};
|
Env env{
|
||||||
|
*this,
|
||||||
|
makeNetworkConfig(21337),
|
||||||
|
features - featureXahauGenesis,
|
||||||
|
nullptr};
|
||||||
|
|
||||||
auto const alice = Account("alice");
|
auto const alice = Account("alice");
|
||||||
auto const bob = Account("bob");
|
auto const bob = Account("bob");
|
||||||
@@ -2111,7 +2186,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
testcase("Test governance membership voting L2");
|
testcase("Test governance membership voting L2");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
auto const alice = Account("alice");
|
auto const alice = Account("alice");
|
||||||
auto const bob = Account("bob");
|
auto const bob = Account("bob");
|
||||||
@@ -3708,7 +3784,7 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test last close time");
|
testcase("test last close time");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features};
|
Env env{*this, makeNetworkConfig(21337), features};
|
||||||
validateTime(lastClose(env), 0);
|
validateTime(lastClose(env), 0);
|
||||||
|
|
||||||
// last close = 0
|
// last close = 0
|
||||||
@@ -3738,7 +3814,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
testcase("test claim reward rate is == 0");
|
testcase("test claim reward rate is == 0");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
|
|
||||||
@@ -3783,7 +3860,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
testcase("test claim reward rate is > 1");
|
testcase("test claim reward rate is > 1");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
|
|
||||||
@@ -3828,7 +3906,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
testcase("test claim reward delay is == 0");
|
testcase("test claim reward delay is == 0");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
|
|
||||||
@@ -3873,7 +3952,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
testcase("test claim reward delay is < 0");
|
testcase("test claim reward delay is < 0");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
|
|
||||||
@@ -3918,7 +3998,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace jtx;
|
using namespace jtx;
|
||||||
testcase("test claim reward before time");
|
testcase("test claim reward before time");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
|
|
||||||
@@ -3968,7 +4049,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test claim reward valid without unl report");
|
testcase("test claim reward valid without unl report");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
bool const has240819 = env.current()->rules().enabled(fix240819);
|
bool const has240819 = env.current()->rules().enabled(fix240819);
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
@@ -4115,7 +4197,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test claim reward valid with unl report");
|
testcase("test claim reward valid with unl report");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -4250,7 +4333,7 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
{
|
{
|
||||||
FeatureBitset _features = features - featureXahauGenesis;
|
FeatureBitset _features = features - featureXahauGenesis;
|
||||||
auto const amend = withXahauV1 ? _features : _features - fixXahauV1;
|
auto const amend = withXahauV1 ? _features : _features - fixXahauV1;
|
||||||
Env env{*this, envconfig(), amend};
|
Env env{*this, makeNetworkConfig(21337), amend};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -4387,7 +4470,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test claim reward optin optout");
|
testcase("test claim reward optin optout");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
bool const has240819 = env.current()->rules().enabled(fix240819);
|
bool const has240819 = env.current()->rules().enabled(fix240819);
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
@@ -4499,7 +4583,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test claim reward bal == 1");
|
testcase("test claim reward bal == 1");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -4587,7 +4672,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test claim reward elapsed_since_last == 1");
|
testcase("test claim reward elapsed_since_last == 1");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -4668,7 +4754,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test claim reward elapsed_since_last == 0");
|
testcase("test claim reward elapsed_since_last == 0");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
|
|
||||||
@@ -4929,7 +5016,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test compound interest over 12 claims");
|
testcase("test compound interest over 12 claims");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -5027,7 +5115,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test deposit");
|
testcase("test deposit");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -5117,7 +5206,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test deposit withdraw");
|
testcase("test deposit withdraw");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -5209,7 +5299,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test deposit late");
|
testcase("test deposit late");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -5299,7 +5390,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test deposit late withdraw");
|
testcase("test deposit late withdraw");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -5392,7 +5484,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test no claim");
|
testcase("test no claim");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -5480,7 +5573,8 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
using namespace std::chrono_literals;
|
using namespace std::chrono_literals;
|
||||||
testcase("test no claim late");
|
testcase("test no claim late");
|
||||||
|
|
||||||
Env env{*this, envconfig(), features - featureXahauGenesis};
|
Env env{
|
||||||
|
*this, makeNetworkConfig(21337), features - featureXahauGenesis};
|
||||||
|
|
||||||
double const rateDrops = 0.00333333333 * 1'000'000;
|
double const rateDrops = 0.00333333333 * 1'000'000;
|
||||||
STAmount const feesXRP = XRP(1);
|
STAmount const feesXRP = XRP(1);
|
||||||
@@ -5594,6 +5688,7 @@ struct XahauGenesis_test : public beast::unit_test::suite
|
|||||||
testGovernHookWithFeats(FeatureBitset features)
|
testGovernHookWithFeats(FeatureBitset features)
|
||||||
{
|
{
|
||||||
testPlainActivation(features);
|
testPlainActivation(features);
|
||||||
|
testBadNetworkIDActivation(features);
|
||||||
testWithSignerList(features);
|
testWithSignerList(features);
|
||||||
testWithRegularKey(features);
|
testWithRegularKey(features);
|
||||||
testGovernanceL1(features);
|
testGovernanceL1(features);
|
||||||
|
|||||||
Reference in New Issue
Block a user