Fix malformed taker error to match rippled (#827)

Fixes #352
This commit is contained in:
Alex Kremer
2023-09-11 19:39:10 +01:00
committed by GitHub
parent 71e1637c5f
commit 91648f98ad
2 changed files with 10 additions and 5 deletions

View File

@@ -21,6 +21,7 @@
#include <data/BackendInterface.h>
#include <rpc/RPCHelpers.h>
#include <rpc/common/MetaProcessors.h>
#include <rpc/common/Types.h>
#include <rpc/common/Validators.h>
@@ -95,7 +96,11 @@ public:
return Error{Status{RippledError::rpcINVALID_PARAMS, "snapshotNotBool"}};
if (book.as_object().contains("taker"))
if (auto const err = validation::AccountValidator.verify(book.as_object(), "taker"); !err)
if (auto const err = meta::WithCustomError(
validation::AccountValidator,
Status{RippledError::rpcBAD_ISSUER, "Issuer account malformed."})
.verify(book.as_object(), "taker");
!err)
return err;
auto const parsedBook = parseBook(book.as_object());

View File

@@ -504,8 +504,8 @@ generateTestValuesForParametersTest()
}
]
})",
"invalidParams",
"takerNotString"},
"badIssuer",
"Issuer account malformed."},
SubscribeParamTestCaseBundle{
"BooksItemInvalidTaker",
R"({
@@ -523,8 +523,8 @@ generateTestValuesForParametersTest()
}
]
})",
"actMalformed",
"takerMalformed"},
"badIssuer",
"Issuer account malformed."},
};
}