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());
+ }
+}
+