From 08bce69d3de429b9e70435439423b836071f7c1e Mon Sep 17 00:00:00 2001 From: Sam Brannen Date: Tue, 4 Jul 2023 10:16:34 +0200 Subject: [PATCH] Add tests for status quo in ObjectUtils.nullSafeConciseToString() --- .../util/ObjectUtilsTests.java | 25 ++++++++++++++++--- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/spring-core/src/test/java/org/springframework/util/ObjectUtilsTests.java b/spring-core/src/test/java/org/springframework/util/ObjectUtilsTests.java index 3ec2373bb80..0593944bb83 100644 --- a/spring-core/src/test/java/org/springframework/util/ObjectUtilsTests.java +++ b/spring-core/src/test/java/org/springframework/util/ObjectUtilsTests.java @@ -17,6 +17,8 @@ package org.springframework.util; import java.io.IOException; +import java.math.BigDecimal; +import java.math.BigInteger; import java.net.URI; import java.net.URL; import java.sql.SQLException; @@ -28,6 +30,7 @@ import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Locale; +import java.util.Map; import java.util.Set; import java.util.UUID; @@ -232,7 +235,7 @@ class ObjectUtilsTests { } @Test - void addObjectToNullArray() throws Exception { + void addObjectToNullArray() { String newElement = "foo"; String[] newArray = ObjectUtils.addObjectToArray(null, newElement); assertThat(newArray).hasSize(1); @@ -240,14 +243,14 @@ class ObjectUtilsTests { } @Test - void addNullObjectToNullArray() throws Exception { + void addNullObjectToNullArray() { Object[] newArray = ObjectUtils.addObjectToArray(null, null); assertThat(newArray).hasSize(1); assertThat(newArray[0]).isNull(); } @Test - void nullSafeEqualsWithArrays() throws Exception { + void nullSafeEqualsWithArrays() { assertThat(ObjectUtils.nullSafeEquals(new String[] {"a", "b", "c"}, new String[] {"a", "b", "c"})).isTrue(); assertThat(ObjectUtils.nullSafeEquals(new int[] {1, 2, 3}, new int[] {1, 2, 3})).isTrue(); } @@ -855,11 +858,19 @@ class ObjectUtilsTests { } @Test - void nullSafeConciseToStringForNumber() { + void nullSafeConciseToStringForPrimitivesAndWrappers() { + assertThat(ObjectUtils.nullSafeConciseToString(true)).isEqualTo("true"); + assertThat(ObjectUtils.nullSafeConciseToString('X')).isEqualTo("X"); assertThat(ObjectUtils.nullSafeConciseToString(42L)).isEqualTo("42"); assertThat(ObjectUtils.nullSafeConciseToString(99.1234D)).isEqualTo("99.1234"); } + @Test + void nullSafeConciseToStringForBigNumbers() { + assertThat(ObjectUtils.nullSafeConciseToString(BigInteger.valueOf(42L))).isEqualTo("42"); + assertThat(ObjectUtils.nullSafeConciseToString(BigDecimal.valueOf(99.1234D))).isEqualTo("99.1234"); + } + @Test void nullSafeConciseToStringForDate() { Date date = new Date(); @@ -917,6 +928,12 @@ class ObjectUtilsTests { assertThat(ObjectUtils.nullSafeConciseToString(new HashSet<>(list))).startsWith(prefix(HashSet.class)); } + @Test + void nullSafeConciseToStringForMaps() { + Map map = Map.of("a", 1, "b", 2, "c", 3); + assertThat(ObjectUtils.nullSafeConciseToString(map)).startsWith(prefix(map.getClass())); + } + @Test void nullSafeConciseToStringForCustomTypes() { class ExplosiveType {