浏览代码

[공통][New] 버젼 스트링 비교 유틸

hyodong.min 6 年之前
父节点
当前提交
b7cc4acb9f

+ 19 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/util/StringUtil.java

@@ -274,6 +274,25 @@ public class StringUtil {
     return result;
   }
 
+  /**
+   * 버젼 비교
+   *
+   * @param currentVersionString
+   * @param newVersionString
+   * @return
+   */
+  public static boolean hasNewVersion(String currentVersionString, String newVersionString) {
+    if (isEmpty(currentVersionString)) {
+      currentVersionString = "0.0";
+    }
+    if (isEmpty(newVersionString)) {
+      newVersionString = "0.0";
+    }
+    Version currentVersion = new Version(currentVersionString);
+    Version newVersion = new Version(newVersionString);
+    return currentVersion.compareTo(newVersion) < 0;
+  }
+
   /**
    * 밑 줄 그어진 html 텍스트
    *

+ 12 - 0
app/src/test/java/kr/co/zumo/app/lifeplus/util/StringUtilTest.java

@@ -95,5 +95,17 @@ public class StringUtilTest {
     assertEquals("4.0.0", StringUtil.getPureVersionString("v4.0.0.4-sandbox-debug", 3));
     assertEquals("4.0.0.4", StringUtil.getPureVersionString("v4.0.0.4-sandbox-debug", 4));
     assertEquals("4.0.0.4", StringUtil.getPureVersionString("v4.0.0.4-sandbox-debug", 5));
+    assertEquals("4.0.0", StringUtil.getPureVersionString("v4.0.0", 4));
+    assertEquals("4.0.0", StringUtil.getPureVersionString("v4.0.0", 5));
+  }
+
+  @Test
+  public void hasNewVersion() {
+    assertFalse(StringUtil.hasNewVersion(StringUtil.getPureVersionString("v4.0.0.4-sandbox-debug"), ""));
+    assertFalse(StringUtil.hasNewVersion(StringUtil.getPureVersionString("v4.0.0.4-sandbox-debug"), "4.0.0"));
+    assertFalse(StringUtil.hasNewVersion(StringUtil.getPureVersionString("v4.0.0.126"), "4.0.0"));
+    assertTrue(StringUtil.hasNewVersion(StringUtil.getPureVersionString("v4.0.0.126"), "4.0.0.127"));
+
+    assertTrue(StringUtil.hasNewVersion(StringUtil.getPureVersionString("v3.1110.11110.126"), "4.0.0"));
   }
 }