mirror of
https://github.com/XRPLF/rippled.git
synced 2025-12-06 17:27:55 +00:00
Write improved forAllApiVersions used in NetworkOPs (#4833)
This commit is contained in:
@@ -734,7 +734,7 @@ public:
|
||||
void
|
||||
run() override
|
||||
{
|
||||
test::jtx::forAllApiVersions(
|
||||
forAllApiVersions(
|
||||
std::bind_front(&AccountTx_test::testParameters, this));
|
||||
testContents();
|
||||
testAccountDelete();
|
||||
|
||||
@@ -172,10 +172,7 @@ public:
|
||||
qry2[jss::account] = alice.human();
|
||||
qry2[jss::hotwallet] = "asdf";
|
||||
|
||||
for (auto apiVersion = RPC::apiMinimumSupportedVersion;
|
||||
apiVersion <= RPC::apiBetaVersion;
|
||||
++apiVersion)
|
||||
{
|
||||
forAllApiVersions([&, this](unsigned apiVersion) {
|
||||
qry2[jss::api_version] = apiVersion;
|
||||
auto jv = wsc->invoke("gateway_balances", qry2);
|
||||
expect(jv[jss::status] == "error");
|
||||
@@ -184,7 +181,7 @@ public:
|
||||
auto const error =
|
||||
apiVersion < 2u ? "invalidHotWallet" : "invalidParams";
|
||||
BEAST_EXPECT(response[jss::error] == error);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
@@ -2305,7 +2305,7 @@ public:
|
||||
testLedgerAccountsOption();
|
||||
testLedgerEntryDID();
|
||||
|
||||
test::jtx::forAllApiVersions(std::bind_front(
|
||||
forAllApiVersions(std::bind_front(
|
||||
&LedgerRPC_test::testLedgerEntryInvalidParams, this));
|
||||
}
|
||||
};
|
||||
|
||||
@@ -359,7 +359,7 @@ public:
|
||||
{
|
||||
testLedgerRequest();
|
||||
testEvolution();
|
||||
test::jtx::forAllApiVersions(
|
||||
forAllApiVersions(
|
||||
std::bind_front(&LedgerRequestRPC_test::testBadInput, this));
|
||||
testMoreThan256Closed();
|
||||
testNonAdmin();
|
||||
|
||||
@@ -284,12 +284,9 @@ public:
|
||||
testSetAndClear();
|
||||
|
||||
auto withFeatsTests = [this](FeatureBitset features) {
|
||||
for (auto testVersion = RPC::apiMinimumSupportedVersion;
|
||||
testVersion <= RPC::apiBetaVersion;
|
||||
++testVersion)
|
||||
{
|
||||
forAllApiVersions([&, this](unsigned testVersion) {
|
||||
testDefaultRipple(features, testVersion);
|
||||
}
|
||||
});
|
||||
testNegativeBalance(features);
|
||||
testPairwise(features);
|
||||
};
|
||||
|
||||
@@ -6219,8 +6219,7 @@ public:
|
||||
void
|
||||
run() override
|
||||
{
|
||||
test::jtx::forAllApiVersions(
|
||||
std::bind_front(&RPCCall_test::testRPCCall, this));
|
||||
forAllApiVersions(std::bind_front(&RPCCall_test::testRPCCall, this));
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -388,7 +388,7 @@ public:
|
||||
run() override
|
||||
{
|
||||
testBadInput();
|
||||
test::jtx::forAllApiVersions(
|
||||
forAllApiVersions(
|
||||
std::bind_front(&TransactionEntry_test::testRequest, this));
|
||||
}
|
||||
};
|
||||
|
||||
@@ -849,7 +849,7 @@ public:
|
||||
run() override
|
||||
{
|
||||
using namespace test::jtx;
|
||||
test::jtx::forAllApiVersions(
|
||||
forAllApiVersions(
|
||||
std::bind_front(&Transaction_test::testBinaryRequest, this));
|
||||
|
||||
FeatureBitset const all{supported_amendments()};
|
||||
@@ -863,7 +863,7 @@ public:
|
||||
testRangeCTIDRequest(features);
|
||||
testCTIDValidation(features);
|
||||
testCTIDRPC(features);
|
||||
test::jtx::forAllApiVersions(
|
||||
forAllApiVersions(
|
||||
std::bind_front(&Transaction_test::testRequest, this, features));
|
||||
}
|
||||
};
|
||||
|
||||
@@ -83,7 +83,8 @@ class Version_test : public beast::unit_test::suite
|
||||
"{\"api_version\": " +
|
||||
std::to_string(
|
||||
std::max(
|
||||
RPC::apiMaximumSupportedVersion, RPC::apiBetaVersion) +
|
||||
RPC::apiMaximumSupportedVersion.value,
|
||||
RPC::apiBetaVersion.value) +
|
||||
1) +
|
||||
"}");
|
||||
BEAST_EXPECT(badVersion(re));
|
||||
@@ -112,15 +113,15 @@ class Version_test : public beast::unit_test::suite
|
||||
Json::Value j_object = Json::Value(Json::objectValue);
|
||||
BEAST_EXPECT(
|
||||
RPC::getAPIVersionNumber(j_object, false) == versionIfUnspecified);
|
||||
j_object[jss::api_version] = RPC::apiVersionIfUnspecified;
|
||||
j_object[jss::api_version] = RPC::apiVersionIfUnspecified.value;
|
||||
BEAST_EXPECT(
|
||||
RPC::getAPIVersionNumber(j_object, false) == versionIfUnspecified);
|
||||
|
||||
j_object[jss::api_version] = RPC::apiMinimumSupportedVersion;
|
||||
j_object[jss::api_version] = RPC::apiMinimumSupportedVersion.value;
|
||||
BEAST_EXPECT(
|
||||
RPC::getAPIVersionNumber(j_object, false) ==
|
||||
RPC::apiMinimumSupportedVersion);
|
||||
j_object[jss::api_version] = RPC::apiMaximumSupportedVersion;
|
||||
j_object[jss::api_version] = RPC::apiMaximumSupportedVersion.value;
|
||||
BEAST_EXPECT(
|
||||
RPC::getAPIVersionNumber(j_object, false) ==
|
||||
RPC::apiMaximumSupportedVersion);
|
||||
@@ -133,14 +134,14 @@ class Version_test : public beast::unit_test::suite
|
||||
BEAST_EXPECT(
|
||||
RPC::getAPIVersionNumber(j_object, false) ==
|
||||
RPC::apiInvalidVersion);
|
||||
j_object[jss::api_version] = RPC::apiBetaVersion;
|
||||
j_object[jss::api_version] = RPC::apiBetaVersion.value;
|
||||
BEAST_EXPECT(
|
||||
RPC::getAPIVersionNumber(j_object, true) == RPC::apiBetaVersion);
|
||||
j_object[jss::api_version] = RPC::apiBetaVersion + 1;
|
||||
BEAST_EXPECT(
|
||||
RPC::getAPIVersionNumber(j_object, true) == RPC::apiInvalidVersion);
|
||||
|
||||
j_object[jss::api_version] = RPC::apiInvalidVersion;
|
||||
j_object[jss::api_version] = RPC::apiInvalidVersion.value;
|
||||
BEAST_EXPECT(
|
||||
RPC::getAPIVersionNumber(j_object, false) ==
|
||||
RPC::apiInvalidVersion);
|
||||
@@ -202,17 +203,17 @@ class Version_test : public beast::unit_test::suite
|
||||
"\"id\": 5, "
|
||||
"\"method\": \"version\", "
|
||||
"\"params\": {}}";
|
||||
auto const with_wrong_api_verion =
|
||||
std::string("{ ") +
|
||||
auto const with_wrong_api_verion = std::string("{ ") +
|
||||
"\"jsonrpc\": \"2.0\", "
|
||||
"\"ripplerpc\": \"2.0\", "
|
||||
"\"id\": 6, "
|
||||
"\"method\": \"version\", "
|
||||
"\"params\": { "
|
||||
"\"api_version\": " +
|
||||
std::to_string(
|
||||
std::max(RPC::apiMaximumSupportedVersion, RPC::apiBetaVersion) +
|
||||
1) +
|
||||
std::to_string(std::max(
|
||||
RPC::apiMaximumSupportedVersion.value,
|
||||
RPC::apiBetaVersion.value) +
|
||||
1) +
|
||||
"}}";
|
||||
auto re = env.rpc(
|
||||
"json2",
|
||||
@@ -275,8 +276,9 @@ class Version_test : public beast::unit_test::suite
|
||||
jrr[jss::version].isMember(jss::last))
|
||||
return;
|
||||
BEAST_EXPECT(
|
||||
jrr[jss::version][jss::first] == RPC::apiMinimumSupportedVersion);
|
||||
BEAST_EXPECT(jrr[jss::version][jss::last] == RPC::apiBetaVersion);
|
||||
jrr[jss::version][jss::first] ==
|
||||
RPC::apiMinimumSupportedVersion.value);
|
||||
BEAST_EXPECT(jrr[jss::version][jss::last] == RPC::apiBetaVersion.value);
|
||||
}
|
||||
|
||||
public:
|
||||
|
||||
Reference in New Issue
Block a user