Skip to content

Commit 8a2bc40

Browse files
committed
review fixes
1 parent 6852ca4 commit 8a2bc40

File tree

2 files changed

+17
-8
lines changed
  • com.googlecode.cppcheclipse.core.tests/src/com/googlecode/cppcheclipse/core/command
  • com.googlecode.cppcheclipse.core/src/com/googlecode/cppcheclipse/core/command

2 files changed

+17
-8
lines changed

com.googlecode.cppcheclipse.core.tests/src/com/googlecode/cppcheclipse/core/command/TestVersion.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -204,6 +204,14 @@ public void testIsGreaterThanDifferentMinorVersions2() {
204204
assertFalse(version1.isGreaterThan(version2));
205205
}
206206

207+
@Test
208+
public void testIsGreaterThanDifferentMinorVersions3() {
209+
Version version1 = new Version("cppcheck 24.4.0");
210+
Version version2 = new Version("cppcheck 24.10.1");
211+
assertTrue(version2.isGreaterThan(version1));
212+
assertFalse(version1.isGreaterThan(version2));
213+
}
214+
207215
@Test
208216
public void testIsGreaterThanPremiumDifferentMinorVersions2() {
209217
Version version1 = new Version("cppcheck premium 1.2.6");

com.googlecode.cppcheclipse.core/src/com/googlecode/cppcheclipse/core/command/Version.java

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ private Version(int majorVersion, int minorVersion, int revision, int patch, Ver
3333
}
3434

3535
/** version string must have the format
36-
* "cppcheck <majorVersion>.<minorVersion>[.<revision>]"
36+
* "cppcheck [premium] <majorVersion>.<minorVersion>[.<revision>][.patch][s]"
3737
*
3838
* @param version
3939
*/
@@ -101,15 +101,16 @@ public boolean isGreaterThan(Version version) {
101101
if (version.versionType != VersionType.ANY && versionType != version.versionType) {
102102
throw new IllegalArgumentException("Cannot compare versions of different types");
103103
}
104-
if (majorVersion > version.majorVersion)
105-
return true;
106-
if (majorVersion == version.majorVersion && minorVersion > version.minorVersion)
107-
return true;
108-
if (majorVersion == version.majorVersion && minorVersion == version.minorVersion && revision > version.revision)
109-
return true;
110-
return majorVersion == version.majorVersion && minorVersion == version.minorVersion && revision == version.revision && patch > version.patch;
104+
if (majorVersion != version.majorVersion)
105+
return majorVersion > version.majorVersion;
106+
if (minorVersion != version.minorVersion)
107+
return minorVersion > version.minorVersion;
108+
if (revision != version.revision)
109+
return revision > version.revision;
110+
return patch > version.patch;
111111
}
112112

113+
113114
public boolean isGreaterOrEqual(Version version) {
114115
return isGreaterThan(version) || equals(version);
115116
}

0 commit comments

Comments
 (0)