snuyanzin commented on code in PR #29023:
URL: https://github.com/apache/flink/pull/29023#discussion_r3863121308


##########
flink-table/flink-table-runtime/src/test/java/org/apache/flink/table/data/BinaryStringDataTest.java:
##########
@@ -142,625 +200,681 @@ private void checkBasic(String str, int len) {
 
         assertThat(s2.hashCode()).isEqualTo(s1.hashCode());
 
-        assertThat(s1.compareTo(s2)).isEqualTo(0);
+        assertThat(s1.compareTo(s2)).isZero();
 
         assertThat(s1.contains(s2)).isTrue();
         assertThat(s2.contains(s1)).isTrue();
         assertThat(s1.startsWith(s1)).isTrue();
         assertThat(s1.endsWith(s1)).isTrue();
     }
 
-    @TestTemplate
-    void basicTest() {
-        checkBasic("", 0);
-        checkBasic(",", 1);
-        checkBasic("hello", 5);
-        checkBasic("hello world", 11);
-        checkBasic("Flink中文社区", 9);
-        checkBasic("中 文 社 区", 7);
-
-        checkBasic("¡", 1); // 2 bytes char
-        checkBasic("ку", 2); // 2 * 2 bytes chars
-        checkBasic("︽﹋%", 3); // 3 * 3 bytes chars
-        checkBasic("\uD83E\uDD19", 1); // 4 bytes char
-    }
-
-    @TestTemplate
-    void emptyStringTest() {
-        assertThat(fromString("")).isEqualTo(empty);
-        assertThat(fromBytes(new byte[0])).isEqualTo(empty);
-        assertThat(empty.numChars()).isEqualTo(0);
-        assertThat(empty.getSizeInBytes()).isEqualTo(0);
-    }
+    @Nested
+    @DisplayName("Basics")
+    class Basics {
+
+        @ParameterizedTest(name = "{0}")
+        @EnumSource(Mode.class)
+        void basicTest(Mode mode) {
+            checkBasic(mode, "", 0);
+            checkBasic(mode, ",", 1);
+            checkBasic(mode, "hello", 5);
+            checkBasic(mode, "hello world", 11);
+            checkBasic(mode, "Flink中文社区", 9);
+            checkBasic(mode, "中 文 社 区", 7);
+
+            checkBasic(mode, "¡", 1); // 2 bytes char
+            checkBasic(mode, "ку", 2); // 2 * 2 bytes chars
+            checkBasic(mode, "︽﹋%", 3); // 3 * 3 bytes chars
+            checkBasic(mode, "🤙", 1); // 4 bytes char
+        }
 
-    @TestTemplate
-    void compareTo() {
-        assertThat(fromString("   ").compareTo(blankString(3))).isEqualTo(0);
-        assertThat(fromString("").compareTo(fromString("a"))).isLessThan(0);
-        
assertThat(fromString("abc").compareTo(fromString("ABC"))).isGreaterThan(0);
-        
assertThat(fromString("abc0").compareTo(fromString("abc"))).isGreaterThan(0);
-        
assertThat(fromString("abcabcabc").compareTo(fromString("abcabcabc"))).isEqualTo(0);
-        
assertThat(fromString("aBcabcabc").compareTo(fromString("Abcabcabc"))).isGreaterThan(0);
-        
assertThat(fromString("Abcabcabc").compareTo(fromString("abcabcabC"))).isLessThan(0);
-        
assertThat(fromString("abcabcabc").compareTo(fromString("abcabcabC"))).isGreaterThan(0);
-
-        
assertThat(fromString("abc").compareTo(fromString("世界"))).isLessThan(0);
-        
assertThat(fromString("你好").compareTo(fromString("世界"))).isGreaterThan(0);
-        
assertThat(fromString("你好123").compareTo(fromString("你好122"))).isGreaterThan(0);
-
-        MemorySegment segment1 = 
MemorySegmentFactory.allocateUnpooledSegment(1024);
-        MemorySegment segment2 = 
MemorySegmentFactory.allocateUnpooledSegment(1024);
-        SortUtil.putStringNormalizedKey(fromString("abcabcabc"), segment1, 0, 
9);
-        SortUtil.putStringNormalizedKey(fromString("abcabcabC"), segment2, 0, 
9);
-        assertThat(segment1.compare(segment2, 0, 0, 9)).isGreaterThan(0);
-        SortUtil.putStringNormalizedKey(fromString("abcab"), segment1, 0, 9);
-        assertThat(segment1.compare(segment2, 0, 0, 9)).isLessThan(0);
-    }
+        @ParameterizedTest(name = "{0}")
+        @EnumSource(Mode.class)
+        void emptyStringTest(Mode mode) {
+            BinaryStringData empty = fromString(mode, "");
+            assertThat(fromString(mode, "")).isEqualTo(empty);
+            assertThat(fromBytes(new byte[0])).isEqualTo(empty);

Review Comment:
   can we assert that it is empty?



##########
flink-table/flink-table-runtime/src/test/java/org/apache/flink/table/data/BinaryStringDataTest.java:
##########
@@ -142,625 +200,681 @@ private void checkBasic(String str, int len) {
 
         assertThat(s2.hashCode()).isEqualTo(s1.hashCode());
 
-        assertThat(s1.compareTo(s2)).isEqualTo(0);
+        assertThat(s1.compareTo(s2)).isZero();
 
         assertThat(s1.contains(s2)).isTrue();
         assertThat(s2.contains(s1)).isTrue();
         assertThat(s1.startsWith(s1)).isTrue();
         assertThat(s1.endsWith(s1)).isTrue();
     }
 
-    @TestTemplate
-    void basicTest() {
-        checkBasic("", 0);
-        checkBasic(",", 1);
-        checkBasic("hello", 5);
-        checkBasic("hello world", 11);
-        checkBasic("Flink中文社区", 9);
-        checkBasic("中 文 社 区", 7);
-
-        checkBasic("¡", 1); // 2 bytes char
-        checkBasic("ку", 2); // 2 * 2 bytes chars
-        checkBasic("︽﹋%", 3); // 3 * 3 bytes chars
-        checkBasic("\uD83E\uDD19", 1); // 4 bytes char
-    }
-
-    @TestTemplate
-    void emptyStringTest() {
-        assertThat(fromString("")).isEqualTo(empty);
-        assertThat(fromBytes(new byte[0])).isEqualTo(empty);
-        assertThat(empty.numChars()).isEqualTo(0);
-        assertThat(empty.getSizeInBytes()).isEqualTo(0);
-    }
+    @Nested
+    @DisplayName("Basics")
+    class Basics {
+
+        @ParameterizedTest(name = "{0}")
+        @EnumSource(Mode.class)
+        void basicTest(Mode mode) {
+            checkBasic(mode, "", 0);
+            checkBasic(mode, ",", 1);
+            checkBasic(mode, "hello", 5);
+            checkBasic(mode, "hello world", 11);
+            checkBasic(mode, "Flink中文社区", 9);
+            checkBasic(mode, "中 文 社 区", 7);
+
+            checkBasic(mode, "¡", 1); // 2 bytes char
+            checkBasic(mode, "ку", 2); // 2 * 2 bytes chars
+            checkBasic(mode, "︽﹋%", 3); // 3 * 3 bytes chars
+            checkBasic(mode, "🤙", 1); // 4 bytes char
+        }
 
-    @TestTemplate
-    void compareTo() {
-        assertThat(fromString("   ").compareTo(blankString(3))).isEqualTo(0);
-        assertThat(fromString("").compareTo(fromString("a"))).isLessThan(0);
-        
assertThat(fromString("abc").compareTo(fromString("ABC"))).isGreaterThan(0);
-        
assertThat(fromString("abc0").compareTo(fromString("abc"))).isGreaterThan(0);
-        
assertThat(fromString("abcabcabc").compareTo(fromString("abcabcabc"))).isEqualTo(0);
-        
assertThat(fromString("aBcabcabc").compareTo(fromString("Abcabcabc"))).isGreaterThan(0);
-        
assertThat(fromString("Abcabcabc").compareTo(fromString("abcabcabC"))).isLessThan(0);
-        
assertThat(fromString("abcabcabc").compareTo(fromString("abcabcabC"))).isGreaterThan(0);
-
-        
assertThat(fromString("abc").compareTo(fromString("世界"))).isLessThan(0);
-        
assertThat(fromString("你好").compareTo(fromString("世界"))).isGreaterThan(0);
-        
assertThat(fromString("你好123").compareTo(fromString("你好122"))).isGreaterThan(0);
-
-        MemorySegment segment1 = 
MemorySegmentFactory.allocateUnpooledSegment(1024);
-        MemorySegment segment2 = 
MemorySegmentFactory.allocateUnpooledSegment(1024);
-        SortUtil.putStringNormalizedKey(fromString("abcabcabc"), segment1, 0, 
9);
-        SortUtil.putStringNormalizedKey(fromString("abcabcabC"), segment2, 0, 
9);
-        assertThat(segment1.compare(segment2, 0, 0, 9)).isGreaterThan(0);
-        SortUtil.putStringNormalizedKey(fromString("abcab"), segment1, 0, 9);
-        assertThat(segment1.compare(segment2, 0, 0, 9)).isLessThan(0);
-    }
+        @ParameterizedTest(name = "{0}")
+        @EnumSource(Mode.class)
+        void emptyStringTest(Mode mode) {
+            BinaryStringData empty = fromString(mode, "");
+            assertThat(fromString(mode, "")).isEqualTo(empty);
+            assertThat(fromBytes(new byte[0])).isEqualTo(empty);

Review Comment:
   can we assert that it is empty?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to