fix: Error consistency in LedgerEntry::parsePermissionedDomains() (#5252)

Update errors for parsing permissioned domains in the LedgerEntry handler to make them consistent with other parsers.
This commit is contained in:
Sergey Kuznetsov
2025-01-21 18:00:21 +00:00
committed by GitHub
parent ebd8e63276
commit eac3abdca9
2 changed files with 10 additions and 13 deletions

View File

@@ -3171,7 +3171,7 @@ class LedgerRPC_test : public beast::unit_test::suite
params[jss::ledger_index] = jss::validated;
params[jss::permissioned_domain] = "NotAHexString";
auto const jrr = env.rpc("json", "ledger_entry", to_string(params));
checkErrorValue(jrr[jss::result], "malformedObjectId", "");
checkErrorValue(jrr[jss::result], "malformedRequest", "");
}
{
@@ -3180,7 +3180,7 @@ class LedgerRPC_test : public beast::unit_test::suite
params[jss::ledger_index] = jss::validated;
params[jss::permissioned_domain] = 10;
auto const jrr = env.rpc("json", "ledger_entry", to_string(params));
checkErrorValue(jrr[jss::result], "malformedObject", "");
checkErrorValue(jrr[jss::result], "malformedRequest", "");
}
{
@@ -3190,7 +3190,7 @@ class LedgerRPC_test : public beast::unit_test::suite
params[jss::permissioned_domain][jss::account] = 1;
params[jss::permissioned_domain][jss::seq] = seq;
auto const jrr = env.rpc("json", "ledger_entry", to_string(params));
checkErrorValue(jrr[jss::result], "malformedAccount", "");
checkErrorValue(jrr[jss::result], "malformedRequest", "");
}
{
@@ -3200,7 +3200,7 @@ class LedgerRPC_test : public beast::unit_test::suite
params[jss::permissioned_domain][jss::account] = "";
params[jss::permissioned_domain][jss::seq] = seq;
auto const jrr = env.rpc("json", "ledger_entry", to_string(params));
checkErrorValue(jrr[jss::result], "malformedAccount", "");
checkErrorValue(jrr[jss::result], "malformedAddress", "");
}
{
@@ -3210,7 +3210,7 @@ class LedgerRPC_test : public beast::unit_test::suite
params[jss::permissioned_domain][jss::account] = alice.human();
params[jss::permissioned_domain][jss::seq] = "12g";
auto const jrr = env.rpc("json", "ledger_entry", to_string(params));
checkErrorValue(jrr[jss::result], "malformedSequence", "");
checkErrorValue(jrr[jss::result], "malformedRequest", "");
}
}

View File

@@ -811,22 +811,19 @@ parsePermissionedDomains(Json::Value const& pd, Json::Value& jvResult)
{
if (pd.isString())
{
Json::Value result;
auto const index = parseIndex(pd, result);
if (!index)
jvResult[jss::error] = "malformedObjectId";
auto const index = parseIndex(pd, jvResult);
return index;
}
if (!pd.isObject())
{
jvResult[jss::error] = "malformedObject";
jvResult[jss::error] = "malformedRequest";
return std::nullopt;
}
if (!pd.isMember(jss::account) || !pd[jss::account].isString())
{
jvResult[jss::error] = "malformedAccount";
jvResult[jss::error] = "malformedRequest";
return std::nullopt;
}
@@ -834,14 +831,14 @@ parsePermissionedDomains(Json::Value const& pd, Json::Value& jvResult)
(pd[jss::seq].isInt() && pd[jss::seq].asInt() < 0) ||
(!pd[jss::seq].isInt() && !pd[jss::seq].isUInt()))
{
jvResult[jss::error] = "malformedSequence";
jvResult[jss::error] = "malformedRequest";
return std::nullopt;
}
auto const account = parseBase58<AccountID>(pd[jss::account].asString());
if (!account)
{
jvResult[jss::error] = "malformedAccount";
jvResult[jss::error] = "malformedAddress";
return std::nullopt;
}