Skip to content

Commit 6825b64

Browse files
authored
Add more tests for VersionInformation (#344)
1 parent 4118cfd commit 6825b64

File tree

1 file changed

+25
-1
lines changed

1 file changed

+25
-1
lines changed

tests/test_version_information.cpp

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ TEST(version_information, test_relations)
7070
auto v2 = VersionInformation::fromString("5.5.0.1101318");
7171
auto v3 = VersionInformation::fromString("5.5.1");
7272
auto v4 = VersionInformation::fromString("3.12.0.1234");
73+
auto v5 = VersionInformation::fromString("3.11.0");
7374

7475
EXPECT_EQ(v1, v1);
7576
EXPECT_LT(v2, v1);
@@ -80,11 +81,34 @@ TEST(version_information, test_relations)
8081
EXPECT_LT(v1, v3);
8182
EXPECT_LT(v4, v1);
8283
EXPECT_TRUE(v1 != v2);
84+
EXPECT_LT(v5, v4);
85+
}
86+
87+
TEST(version_information, test_invalid_inputs)
88+
{
89+
// Empty string
90+
EXPECT_THROW(VersionInformation::fromString(""), UrException);
91+
92+
// Too many components
93+
EXPECT_THROW(VersionInformation::fromString("1.2.3.4.5"), UrException);
94+
95+
// Non-numeric values
96+
EXPECT_THROW(VersionInformation::fromString("1.two.3"), std::invalid_argument);
97+
EXPECT_THROW(VersionInformation::fromString("a.b.c.d"), std::invalid_argument);
98+
}
99+
100+
TEST(version_information, test_is_e_series)
101+
{
102+
auto v1 = VersionInformation::fromString("5.5.0.1101319");
103+
auto v2 = VersionInformation::fromString("4.12.0.1234");
104+
105+
EXPECT_TRUE(v1.isESeries());
106+
EXPECT_FALSE(v2.isESeries());
83107
}
84108

85109
int main(int argc, char* argv[])
86110
{
87111
::testing::InitGoogleTest(&argc, argv);
88112

89113
return RUN_ALL_TESTS();
90-
}
114+
}

0 commit comments

Comments
 (0)