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

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git


The following commit(s) were added to refs/heads/master by this push:
     new 1875db4f7 Add test coverage for negative-day adjustment in 
DurationFormatUtils #1596
1875db4f7 is described below

commit 1875db4f71db52f5a741368cc6a6a6a89883427b
Author: Gary Gregory <[email protected]>
AuthorDate: Fri Feb 13 08:13:12 2026 -0500

    Add test coverage for negative-day adjustment in
    DurationFormatUtils #1596
    
    - Sort new methods
    - Remove empty lines, use longer lines
---
 src/changes/changes.xml                            |  1 +
 .../lang3/time/DurationFormatUtilsTest.java        | 78 +++++++++-------------
 2 files changed, 31 insertions(+), 48 deletions(-)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index f92daf883..90f3706bb 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -116,6 +116,7 @@ The <action> type attribute can be add,update,fix,remove.
     <action                   type="fix" dev="ggregory" due-to="Ivan 
Ponomarev, Gary Gregory">ThreadUtils.sleepQuietly(Duration) now restores the 
current thread's interrupt flag when catching InterruptedException.</action>
     <action issue="LANG-1817" type="fix" dev="ggregory" due-to="Ivan 
Ponomarev, Gary Gregory">UncheckedFutureImpl clears thread interrupt status 
when wrapping InterruptedException #1590.</action>
     <action                   type="fix" dev="ggregory" due-to="ThrawnCA, Gary 
Gregory">Fix StringUtils.abbreviate(String, String, int) contract violations 
#1572.</action>
+    <action                   type="fix" dev="ggregory" due-to="TK_ENDO, 
Arnout Engelen, Gary Gregory">Add test coverage for negative-day adjustment in 
DurationFormatUtils #1596.</action>
     <!-- ADD -->
     <action                   type="add" dev="ggregory" due-to="Gary 
Gregory">Add JavaVersion.JAVA_27.</action>
     <action                   type="add" dev="ggregory" due-to="Gary 
Gregory">Add SystemUtils.IS_JAVA_27.</action>
diff --git 
a/src/test/java/org/apache/commons/lang3/time/DurationFormatUtilsTest.java 
b/src/test/java/org/apache/commons/lang3/time/DurationFormatUtilsTest.java
index 13b42602a..fdadfff98 100644
--- a/src/test/java/org/apache/commons/lang3/time/DurationFormatUtilsTest.java
+++ b/src/test/java/org/apache/commons/lang3/time/DurationFormatUtilsTest.java
@@ -473,54 +473,6 @@ void testFormatPeriod() {
         assertEquals("helloworld", DurationFormatUtils.formatPeriod(time1970, 
time, "'hello''world'"));
     }
 
-    @Test
-    void testFormatPeriodISOAcrossMonths() {
-        final TimeZone tz = TimeZones.getTimeZone("GMT-3");
-
-        // Verifies period formatting across a month boundary (Jan 31 to Feb 1)
-        final Calendar start = Calendar.getInstance(tz);
-        start.clear();
-        start.set(2020, Calendar.JANUARY, 31);
-
-        final Calendar end = Calendar.getInstance(tz);
-        end.clear();
-        end.set(2020, Calendar.FEBRUARY, 1);
-
-        final String result = DurationFormatUtils.formatPeriod(
-                start.getTimeInMillis(),
-                end.getTimeInMillis(),
-                DurationFormatUtils.ISO_EXTENDED_FORMAT_PATTERN,
-                false,
-                tz
-        );
-
-        assertEquals("P0Y0M1DT0H0M0.000S", result);
-    }
-
-    @Test
-    void testFormatPeriodISOLeapYearBoundary() {
-        final TimeZone tz = TimeZones.getTimeZone("GMT-3");
-
-        // Verifies period formatting across a leap-year boundary (Feb 29 to 
Mar 1)
-        final Calendar start = Calendar.getInstance(tz);
-        start.clear();
-        start.set(2020, Calendar.FEBRUARY, 29);
-
-        final Calendar end = Calendar.getInstance(tz);
-        end.clear();
-        end.set(2020, Calendar.MARCH, 1);
-
-        final String result = DurationFormatUtils.formatPeriod(
-                start.getTimeInMillis(),
-                end.getTimeInMillis(),
-                DurationFormatUtils.ISO_EXTENDED_FORMAT_PATTERN,
-                false,
-                tz
-        );
-
-        assertEquals("P0Y0M1DT0H0M0.000S", result);
-    }
-
     @Test
     void testFormatPeriodeStartGreaterEnd() {
         assertIllegalArgumentException(() -> 
DurationFormatUtils.formatPeriod(5000, 2500, "yy/MM"));
@@ -555,6 +507,36 @@ void testFormatPeriodISO() {
         // assertEquals("P1Y2M3DT10H30M", text);
     }
 
+    @Test
+    void testFormatPeriodISOAcrossMonths() {
+        final TimeZone tz = TimeZones.getTimeZone("GMT-3");
+        // Verifies period formatting across a month boundary (Jan 31 to Feb 1)
+        final Calendar start = Calendar.getInstance(tz);
+        start.clear();
+        start.set(2020, Calendar.JANUARY, 31);
+        final Calendar end = Calendar.getInstance(tz);
+        end.clear();
+        end.set(2020, Calendar.FEBRUARY, 1);
+        final String result = 
DurationFormatUtils.formatPeriod(start.getTimeInMillis(), 
end.getTimeInMillis(), DurationFormatUtils.ISO_EXTENDED_FORMAT_PATTERN,
+                false, tz);
+        assertEquals("P0Y0M1DT0H0M0.000S", result);
+    }
+
+    @Test
+    void testFormatPeriodISOLeapYearBoundary() {
+        final TimeZone tz = TimeZones.getTimeZone("GMT-3");
+        // Verifies period formatting across a leap-year boundary (Feb 29 to 
Mar 1)
+        final Calendar start = Calendar.getInstance(tz);
+        start.clear();
+        start.set(2020, Calendar.FEBRUARY, 29);
+        final Calendar end = Calendar.getInstance(tz);
+        end.clear();
+        end.set(2020, Calendar.MARCH, 1);
+        final String result = 
DurationFormatUtils.formatPeriod(start.getTimeInMillis(), 
end.getTimeInMillis(), DurationFormatUtils.ISO_EXTENDED_FORMAT_PATTERN,
+                false, tz);
+        assertEquals("P0Y0M1DT0H0M0.000S", result);
+    }
+
     @Test
     void testFormatPeriodISOMethod() {
         assertEquals("P0Y0M0DT0H0M0.000S", 
DurationFormatUtils.formatPeriodISO(0L, 0L));

Reply via email to