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

tanner pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/calcite.git


The following commit(s) were added to refs/heads/main by this push:
     new 4d8d6047f1 [CALCITE-6189] Improve FormatElementEnumTest
4d8d6047f1 is described below

commit 4d8d6047f1f93978b8d69be64a910c6bfda5f6a0
Author: Tanner Clary <[email protected]>
AuthorDate: Sun Dec 31 12:48:06 2023 -0800

    [CALCITE-6189] Improve FormatElementEnumTest
---
 .../calcite/util/format/FormatElementEnumTest.java | 110 +++++----------------
 1 file changed, 27 insertions(+), 83 deletions(-)

diff --git 
a/core/src/test/java/org/apache/calcite/util/format/FormatElementEnumTest.java 
b/core/src/test/java/org/apache/calcite/util/format/FormatElementEnumTest.java
index 5924c5f4fb..5e431d001d 100644
--- 
a/core/src/test/java/org/apache/calcite/util/format/FormatElementEnumTest.java
+++ 
b/core/src/test/java/org/apache/calcite/util/format/FormatElementEnumTest.java
@@ -28,150 +28,94 @@ import static org.hamcrest.Matchers.hasToString;
  * Unit test for {@link FormatElementEnum}.
  */
 class FormatElementEnumTest {
+
   @Test void testDay() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.DAY.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("Tuesday"));
+    assertFormatElement(FormatElementEnum.DAY, "2014-09-30T10:00:00Z", 
"Tuesday");
   }
 
   @Test void testD() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.D.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("3"));
+    assertFormatElement(FormatElementEnum.D, "2014-09-30T10:00:00Z", "3");
   }
 
   @Test void testDD() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.DD.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("30"));
+    assertFormatElement(FormatElementEnum.DD, "2014-09-30T10:00:00Z", "30");
   }
 
   @Test void testDDD() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.DDD.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("273"));
+    assertFormatElement(FormatElementEnum.DDD, "2014-09-30T10:00:00Z", "273");
   }
 
   @Test void testDY() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.DY.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("Tue"));
+    assertFormatElement(FormatElementEnum.DY, "2014-09-30T10:00:00Z", "Tue");
   }
 
   @Test void testFF1() {
-    final String date = "2014-09-30T10:00:00.123456Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.FF1.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("123"));
+    assertFormatElement(FormatElementEnum.FF1, "2014-09-30T10:00:00.123456Z", 
"123");
   }
 
   @Test void testFF2() {
-    final String date = "2014-09-30T10:00:00.123456Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.FF2.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("123"));
+    assertFormatElement(FormatElementEnum.FF2, "2014-09-30T10:00:00.123456Z", 
"123");
   }
 
   @Test void testFF3() {
-    final String date = "2014-09-30T10:00:00.123456Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.FF3.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("123"));
+    assertFormatElement(FormatElementEnum.FF3, "2014-09-30T10:00:00.123456Z", 
"123");
   }
 
   @Test void testFF4() {
-    final String date = "2014-09-30T10:00:00.123456Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.FF4.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("0123"));
+    assertFormatElement(FormatElementEnum.FF4, "2014-09-30T10:00:00.123456Z", 
"0123");
   }
 
   @Test void testFF5() {
-    final String date = "2014-09-30T10:00:00.123456Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.FF5.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("00123"));
+    assertFormatElement(FormatElementEnum.FF5, "2014-09-30T10:00:00.123456Z", 
"00123");
   }
 
   @Test void testFF6() {
-    final String date = "2014-09-30T10:00:00.123456Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.FF6.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("000123"));
+    assertFormatElement(FormatElementEnum.FF6, "2014-09-30T10:00:00.123456Z", 
"000123");
   }
 
   @Test void testIW() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.IW.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("40"));
+    assertFormatElement(FormatElementEnum.IW, "2014-09-30T10:00:00Z", "40");
   }
 
   @Test void testMM() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.MM.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("09"));
+    assertFormatElement(FormatElementEnum.MM, "2014-09-30T10:00:00Z", "09");
   }
 
   @Test void testMON() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.MON.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("Sep"));
+    assertFormatElement(FormatElementEnum.MON, "2014-09-30T10:00:00Z", "Sep");
   }
 
   @Test void testQ() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.Q.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("3"));
+    assertFormatElement(FormatElementEnum.Q, "2014-09-30T10:00:00Z", "3");
   }
 
   @Test void testMS() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.MS.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("000"));
+    assertFormatElement(FormatElementEnum.MS, "2014-09-30T10:00:00Z", "000");
   }
 
   @Test void testSS() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.SS.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("00"));
+    assertFormatElement(FormatElementEnum.SS, "2014-09-30T10:00:00Z", "00");
   }
 
   @Test void testWM() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.W.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("5"));
+    assertFormatElement(FormatElementEnum.W, "2014-09-30T10:00:00Z", "5");
   }
 
   @Test void testWW() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.WW.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("40"));
+    assertFormatElement(FormatElementEnum.WW, "2014-09-30T10:00:00Z", "40");
   }
 
   @Test void testYY() {
-    final String date = "2014-09-30T10:00:00Z";
-    StringBuilder ts = new StringBuilder();
-    FormatElementEnum.YY.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("14"));
+    assertFormatElement(FormatElementEnum.YY, "2014-09-30T10:00:00Z", "14");
   }
 
   @Test void testYYYY() {
-    final String date = "2014-09-30T10:00:00Z";
+    assertFormatElement(FormatElementEnum.YYYY, "2014-09-30T10:00:00Z", 
"2014");
+  }
+
+  private void assertFormatElement(FormatElementEnum formatElement, String 
date, String expected) {
     StringBuilder ts = new StringBuilder();
-    FormatElementEnum.YYYY.format(ts, Date.from(Instant.parse(date)));
-    assertThat(ts, hasToString("2014"));
+    formatElement.format(ts, Date.from(Instant.parse(date)));
+    assertThat(ts, hasToString(expected));
   }
 }

Reply via email to