1#include <xrpl/beast/core/SemanticVersion.h>
2#include <xrpl/beast/unit_test.h>
18 BEAST_EXPECT(v.
parse(input));
19 BEAST_EXPECT(v.
print() == input);
23 BEAST_EXPECT(!v.
parse(input));
105 check(
"2147483647.2147483647.2147483647");
177 BEAST_EXPECT(v.
parse(input));
184 BEAST_EXPECT(v.
metaData == metaData);
196 checkValues(
"1.2.3-rc1.debug.asm", 1, 2, 3,
ids(
"rc1",
"debug",
"asm"));
201 "1.2.3-rc1.debug.asm+full.prod.x86", 1, 2, 3,
ids(
"rc1",
"debug",
"asm"),
ids(
"full",
"prod",
"x86"));
211 BEAST_EXPECT(left.parse(lhs));
212 BEAST_EXPECT(right.parse(rhs));
214 BEAST_EXPECT(
compare(left, left) == 0);
215 BEAST_EXPECT(
compare(right, right) == 0);
216 BEAST_EXPECT(
compare(left, right) < 0);
217 BEAST_EXPECT(
compare(right, left) > 0);
219 BEAST_EXPECT(left < right);
220 BEAST_EXPECT(right > left);
221 BEAST_EXPECT(left == left);
222 BEAST_EXPECT(right == right);
239 checkLess(
"1.0.0-alpha",
"1.0.0-alpha.1");
240 checkLess(
"1.0.0-alpha.1",
"1.0.0-alpha.beta");
241 checkLess(
"1.0.0-alpha.beta",
"1.0.0-beta");
243 checkLess(
"1.0.0-beta.2",
"1.0.0-beta.11");
244 checkLess(
"1.0.0-beta.11",
"1.0.0-rc.1");
static identifier_list ids()
SemanticVersion::identifier_list identifier_list
void checkFail(std::string const &input)
void checkPass(std::string const &input, bool shouldPass=true)
void check(std::string const &input, bool shouldPass=true)
void checkMeta(std::string const &input, bool shouldPass)
static identifier_list ids(std::string const &s1, std::string const &s2, std::string const &s3)
void checkLess(std::string const &lhs, std::string const &rhs)
void checkLessInternal(std::string const &lhs, std::string const &rhs)
void checkMetaFail(std::string const &input)
static identifier_list ids(std::string const &s1, std::string const &s2)
void checkRelease(std::string const &input, bool shouldPass=true)
static identifier_list ids(std::string const &s1)
void checkValues(std::string const &input, int majorVersion, int minorVersion, int patchVersion, identifier_list const &preReleaseIdentifiers=identifier_list(), identifier_list const &metaData=identifier_list())
void run() override
Runs the suite.
void negcheck(std::string const &input)
A Semantic Version number.
bool parse(std::string const &input)
Parse a semantic version string.
identifier_list preReleaseIdentifiers
std::string print() const
Produce a string from semantic version components.
std::vector< std::string > identifier_list
testcase_t testcase
Memberspace for declaring test cases.
int compare(SemanticVersion const &lhs, SemanticVersion const &rhs)
Compare two SemanticVersions against each other.