Files
rippled/src/test/rpc/RPCHelpers_test.cpp
Bart 1eb0fdac65 refactor: Rename ripple namespace to xrpl (#5982)
This change renames all occurrences of `namespace ripple` and `ripple::` to `namespace xrpl` and `xrpl::`, respectively, as well as the names of test suites. It also provides a script to allow developers to replicate the changes in their local branch or fork to avoid conflicts.
2025-12-11 16:51:49 +00:00

77 lines
2.3 KiB
C++

#include <xrpld/rpc/detail/RPCHelpers.h>
#include <xrpl/beast/unit_test.h>
#include <xrpl/protocol/jss.h>
namespace xrpl {
namespace test {
class RPCHelpers_test : public beast::unit_test::suite
{
public:
void
testChooseLedgerEntryType()
{
testcase("ChooseLedgerEntryType");
// Test no type.
Json::Value tx = Json::objectValue;
auto result = RPC::chooseLedgerEntryType(tx);
BEAST_EXPECT(result.first == RPC::Status::OK);
BEAST_EXPECT(result.second == 0);
// Test empty type.
tx[jss::type] = "";
result = RPC::chooseLedgerEntryType(tx);
BEAST_EXPECT(result.first == RPC::Status{rpcINVALID_PARAMS});
BEAST_EXPECT(result.second == 0);
// Test type using canonical name in mixedcase.
tx[jss::type] = "MPTokenIssuance";
result = RPC::chooseLedgerEntryType(tx);
BEAST_EXPECT(result.first == RPC::Status::OK);
BEAST_EXPECT(result.second == ltMPTOKEN_ISSUANCE);
// Test type using canonical name in lowercase.
tx[jss::type] = "mptokenissuance";
result = RPC::chooseLedgerEntryType(tx);
BEAST_EXPECT(result.first == RPC::Status::OK);
BEAST_EXPECT(result.second == ltMPTOKEN_ISSUANCE);
// Test type using RPC name with exact match.
tx[jss::type] = "mpt_issuance";
result = RPC::chooseLedgerEntryType(tx);
BEAST_EXPECT(result.first == RPC::Status::OK);
BEAST_EXPECT(result.second == ltMPTOKEN_ISSUANCE);
// Test type using RPC name with inexact match.
tx[jss::type] = "MPT_Issuance";
result = RPC::chooseLedgerEntryType(tx);
BEAST_EXPECT(result.first == RPC::Status{rpcINVALID_PARAMS});
BEAST_EXPECT(result.second == 0);
// Test invalid type.
tx[jss::type] = 1234;
result = RPC::chooseLedgerEntryType(tx);
BEAST_EXPECT(result.first == RPC::Status{rpcINVALID_PARAMS});
BEAST_EXPECT(result.second == 0);
// Test unknown type.
tx[jss::type] = "unknown";
result = RPC::chooseLedgerEntryType(tx);
BEAST_EXPECT(result.first == RPC::Status{rpcINVALID_PARAMS});
BEAST_EXPECT(result.second == 0);
}
void
run() override
{
testChooseLedgerEntryType();
}
};
BEAST_DEFINE_TESTSUITE(RPCHelpers, rpc, xrpl);
} // namespace test
} // namespace xrpl