test: Add test for Permissioned Domain sequence fix

This commit is contained in:
Mayukha Vadari
2026-06-22 12:29:13 -04:00
parent b1f794f067
commit 840100b541

View File

@@ -8,6 +8,7 @@
#include <test/jtx/pay.h>
#include <test/jtx/permissioned_domains.h>
#include <test/jtx/ter.h>
#include <test/jtx/ticket.h>
#include <test/jtx/txflags.h>
#include <xrpl/basics/base_uint.h>
@@ -526,6 +527,39 @@ class PermissionedDomains_test : public beast::unit_test::Suite
BEAST_EXPECT(env.ownerCount(alice) == 1);
}
void
testTicket(FeatureBitset features)
{
testcase("Tickets");
using namespace test::jtx;
Env env(*this, features);
Account const alice("alice");
env.fund(XRP(1000), alice);
pdomain::Credentials const credentials{
{alice, "credential1"},
};
std::uint32_t seq{env.seq(alice)};
env(ticket::create(alice, 2));
{
env(pdomain::setTx(alice, credentials), ticket::Use(++seq));
auto domain = pdomain::getNewDomain(env.meta());
if (features[fixCleanup3_1_3])
BEAST_EXPECT(domain == keylet::permissionedDomain(alice.id(), seq).key);
else
BEAST_EXPECT(domain == keylet::permissionedDomain(alice.id(), 0).key);
}
if (features[fixCleanup3_1_3])
env(pdomain::setTx(alice, credentials), ticket::Use(++seq));
else
env(pdomain::setTx(alice, credentials), ticket::Use(++seq), Ter(tefEXCEPTION));
}
public:
void
run() override
@@ -540,6 +574,8 @@ public:
testDelete(withFix_);
testAccountReserve(withFeature_);
testAccountReserve(withFix_);
testTicket(withFeature_ - fixCleanup3_1_3);
testTicket(withFeature_ | fixCleanup3_1_3);
}
};