This is an automated email from the ASF dual-hosted git repository.

gyeongtae pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/zeppelin.git


The following commit(s) were added to refs/heads/master by this push:
     new f68d69b119 [ZEPPELIN-6281] Add Unit Tests for LivyVersion Class
f68d69b119 is described below

commit f68d69b119cc654ffbca6dc9621f34915197e854
Author: YeonKyung Ryu <[email protected]>
AuthorDate: Fri Aug 22 22:05:20 2025 +0900

    [ZEPPELIN-6281] Add Unit Tests for LivyVersion Class
    
    ### What is this PR for?
    This PR adds a comprehensive suite of unit tests for the LivyVersion class. 
The LivyVersion class is critical for ensuring Zeppelin's compatibility with 
various versions of the Livy server.
    
    
    ### What type of PR is it?
    Test
    
    ### Todos
    * [x] Add LivyVersionTest.java with comprehensive test cases.
    * [x] Ensure all tests pass with the existing LivyVersion implementation.
    
    ### What is the Jira issue?
    [ZEPPELIN-6281](https://issues.apache.org/jira/browse/ZEPPELIN-6281)
    
    ### How should this be tested?
    
    ### Screenshots (if appropriate)
    
    ### Questions:
    * Does the license files need to update? No
    * Is there breaking changes for older versions? No
    * Does this needs documentation? No
    
    
    Closes #5029 from celinayk/ZEPPELIN-6281.
    
    Signed-off-by: ParkGyeongTae <[email protected]>
---
 .../org/apache/zeppelin/livy/LivyVersionTest.java  | 79 ++++++++++++++++++++++
 1 file changed, 79 insertions(+)

diff --git a/livy/src/test/java/org/apache/zeppelin/livy/LivyVersionTest.java 
b/livy/src/test/java/org/apache/zeppelin/livy/LivyVersionTest.java
new file mode 100644
index 0000000000..de5d7e9c11
--- /dev/null
+++ b/livy/src/test/java/org/apache/zeppelin/livy/LivyVersionTest.java
@@ -0,0 +1,79 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.zeppelin.livy;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+
+class LivyVersionTest {
+
+  @Test
+  void testVersionParsing() {
+    LivyVersion v = new LivyVersion("1.6.2");
+    assertEquals(10602, v.toNumber());
+    assertEquals("1.6.2", v.toString());
+  }
+
+  @Test
+  void testPreReleaseVersionParsing() {
+    LivyVersion v = new LivyVersion("0.6.0-SNAPSHOT");
+    assertEquals(600, v.toNumber());
+    assertEquals("0.6.0-SNAPSHOT", v.toString());
+  }
+
+  @Test
+  void testComparisonLogic() {
+    LivyVersion v1 = new LivyVersion("0.5.0");
+    LivyVersion v2 = new LivyVersion("0.4.0");
+    assertTrue(v1.newerThan(v2));
+    assertTrue(v2.olderThan(v1));
+    assertFalse(v2.newerThan(v1));
+    assertFalse(v1.olderThan(v2));
+  }
+
+  @Test
+  void testInvalidVersionString() {
+    LivyVersion v1 = new LivyVersion("invalid");
+    assertEquals(99999, v1.toNumber());
+
+    LivyVersion v2 = new LivyVersion(null);
+    assertEquals(99999, v2.toNumber());
+  }
+
+  @Test
+  void isCancelSupported() {
+    assertTrue(new LivyVersion("0.3.0").isCancelSupported());
+    assertFalse(new LivyVersion("0.2.0").isCancelSupported());
+  }
+
+  @Test
+  void isSharedSupported() {
+    assertTrue(new LivyVersion("0.5.0").isSharedSupported());
+    assertFalse(new LivyVersion("0.4.0").isSharedSupported());
+  }
+
+  @Test
+  void isGetProgressSupported() {
+    assertTrue(new LivyVersion("0.4.0").isGetProgressSupported());
+    assertFalse(new LivyVersion("0.3.0").isGetProgressSupported());
+  }
+}
+

Reply via email to