Skip to content

Commit 134891a

Browse files
committed
V2024.6.1
1 parent e71f424 commit 134891a

File tree

3 files changed

+79
-22
lines changed

3 files changed

+79
-22
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ endif()
2020
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake")
2121

2222
#libnick Definition
23-
project ("libnick" LANGUAGES C CXX VERSION 2024.6.0 DESCRIPTION "A cross-platform base for native Nickvision applications.")
23+
project ("libnick" LANGUAGES C CXX VERSION 2024.6.1 DESCRIPTION "A cross-platform base for native Nickvision applications.")
2424
include(CMakePackageConfigHelpers)
2525
include(GNUInstallDirs)
2626
include(CTest)

src/update/version.cpp

Lines changed: 42 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -112,25 +112,41 @@ namespace Nickvision::Update
112112

113113
bool Version::operator<(const Version& compare) const
114114
{
115-
if (m_major < compare.m_major)
115+
if(m_major > compare.m_major)
116+
{
117+
return false;
118+
}
119+
else if(m_major < compare.m_major)
116120
{
117121
return true;
118122
}
119123
else
120124
{
121-
if (m_minor < compare.m_minor)
125+
if(m_minor > compare.m_minor)
126+
{
127+
return false;
128+
}
129+
else if(m_minor < compare.m_minor)
122130
{
123131
return true;
124132
}
125133
else
126134
{
127-
if (m_build < compare.m_build)
135+
if(m_build > compare.m_build)
136+
{
137+
return false;
138+
}
139+
else if(m_build < compare.m_build)
128140
{
129141
return true;
130142
}
131143
else
132144
{
133-
if (!m_dev.empty() && compare.m_dev.empty()) //dev < stable
145+
if(m_dev.empty() && !compare.m_dev.empty())
146+
{
147+
return false;
148+
}
149+
else if(!m_dev.empty() && compare.m_dev.empty())
134150
{
135151
return true;
136152
}
@@ -142,33 +158,49 @@ namespace Nickvision::Update
142158

143159
bool Version::operator<=(const Version& compare) const
144160
{
145-
return operator>(compare) || operator==(compare);
161+
return operator<(compare) || operator==(compare);
146162
}
147163

148164
bool Version::operator>(const Version& compare) const
149165
{
150-
if (m_major > compare.m_major)
166+
if(m_major > compare.m_major)
151167
{
152168
return true;
153169
}
170+
else if(m_major < compare.m_major)
171+
{
172+
return false;
173+
}
154174
else
155175
{
156-
if (m_minor > compare.m_minor)
176+
if(m_minor > compare.m_minor)
157177
{
158178
return true;
159179
}
180+
else if(m_minor < compare.m_minor)
181+
{
182+
return false;
183+
}
160184
else
161185
{
162-
if (m_build > compare.m_build)
186+
if(m_build > compare.m_build)
163187
{
164188
return true;
165189
}
190+
else if(m_build < compare.m_build)
191+
{
192+
return false;
193+
}
166194
else
167195
{
168-
if (m_dev.empty() && !compare.m_dev.empty()) //stable > dev
196+
if(m_dev.empty() && !compare.m_dev.empty())
169197
{
170198
return true;
171199
}
200+
else if(!m_dev.empty() && compare.m_dev.empty())
201+
{
202+
return false;
203+
}
172204
}
173205
}
174206
}
@@ -177,7 +209,7 @@ namespace Nickvision::Update
177209

178210
bool Version::operator>=(const Version& compare) const
179211
{
180-
return operator<(compare) || operator==(compare);
212+
return operator>(compare) || operator==(compare);
181213
}
182214

183215
bool Version::operator==(const Version& compare) const

tests/versiontests.cpp

Lines changed: 36 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,6 @@ TEST(VersionTests, EmptyVersion)
99
ASSERT_EQ(v.empty(), true);
1010
}
1111

12-
TEST(VersionTests, VersionFromStrings)
13-
{
14-
Version v1{ "2023.11.52" };
15-
Version v2{ "2022.15.2" };
16-
ASSERT_EQ(v1.toString(), "2023.11.52");
17-
ASSERT_EQ(v2.toString(), "2022.15.2");
18-
ASSERT_TRUE(v1 > v2);
19-
ASSERT_TRUE(v2 < v1);
20-
ASSERT_FALSE(v1 == v2);
21-
}
22-
2312
TEST(VersionTests, BetaVersion1)
2413
{
2514
Version v{ "2010.5.0-beta1" };
@@ -39,4 +28,40 @@ TEST(VersionTests, BadVersion2)
3928
TEST(VersionTests, BadVersion3)
4029
{
4130
ASSERT_THROW(Version("2023-11-0"), std::invalid_argument);
31+
}
32+
33+
TEST(VersionTests, CompareVersion1)
34+
{
35+
Version v1{ "2023.2.0" };
36+
Version v2{ "2024.1.0" };
37+
ASSERT_TRUE(v1 < v2);
38+
ASSERT_TRUE(v2 > v1);
39+
ASSERT_FALSE(v1 == v2);
40+
}
41+
42+
TEST(VersionTests, CompareVersion2)
43+
{
44+
Version v1{ "2024.2.0" };
45+
Version v2{ "2024.2.0-beta1" };
46+
ASSERT_TRUE(v1 > v2);
47+
ASSERT_TRUE(v2 < v1);
48+
ASSERT_FALSE(v1 == v2);
49+
}
50+
51+
TEST(VersionTests, CompareVersion3)
52+
{
53+
Version v1{ "2024.6.0" };
54+
Version v2{ "2023.5.1" };
55+
ASSERT_TRUE(v1 > v2);
56+
ASSERT_TRUE(v2 < v1);
57+
ASSERT_FALSE(v1 == v2);
58+
}
59+
60+
TEST(VersionTests, CompareVersion4)
61+
{
62+
Version v1{ "2024.6.0" };
63+
Version v2{ "2024.6.0" };
64+
ASSERT_FALSE(v1 > v2);
65+
ASSERT_FALSE(v2 < v1);
66+
ASSERT_TRUE(v1 == v2);
4267
}

0 commit comments

Comments
 (0)