View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *      http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  package org.apache.commons.lang3;
18  
19  import static org.junit.jupiter.api.Assertions.assertEquals;
20  import static org.junit.jupiter.api.Assertions.assertFalse;
21  import static org.junit.jupiter.api.Assertions.assertNull;
22  import static org.junit.jupiter.api.Assertions.assertTrue;
23  
24  import org.junit.jupiter.api.Test;
25  
26  /**
27   * Unit tests {@link StringUtils} - Empty/Blank methods
28   */
29  public class StringUtilsEmptyBlankTest extends AbstractLangTest {
30  
31      @Test
32      public void testFirstNonBlank() {
33          assertNull(StringUtils.firstNonBlank());
34          assertNull(StringUtils.firstNonBlank((String[]) null));
35          assertNull(StringUtils.firstNonBlank(null, null, null));
36          assertNull(StringUtils.firstNonBlank(null, "", " "));
37          assertNull(StringUtils.firstNonBlank(null, null, " "));
38          assertEquals("a", StringUtils.firstNonBlank(null, "a"));
39          assertEquals("zz", StringUtils.firstNonBlank(null, "zz"));
40          assertEquals("abc", StringUtils.firstNonBlank("abc"));
41          assertEquals("xyz", StringUtils.firstNonBlank(null, "xyz"));
42          assertEquals("xyz", StringUtils.firstNonBlank(null, "xyz", "abc"));
43      }
44  
45      @Test
46      public void testFirstNonEmpty() {
47          assertNull(StringUtils.firstNonEmpty());
48          assertNull(StringUtils.firstNonEmpty((String[]) null));
49          assertNull(StringUtils.firstNonEmpty(null, null, null));
50          assertEquals(" ", StringUtils.firstNonEmpty(null, "", " "));
51          assertNull(StringUtils.firstNonEmpty(null, null, ""));
52          assertEquals("a", StringUtils.firstNonEmpty(null, "a"));
53          assertEquals("zz", StringUtils.firstNonEmpty(null, "zz"));
54          assertEquals("abc", StringUtils.firstNonEmpty("abc"));
55          assertEquals("xyz", StringUtils.firstNonEmpty(null, "xyz"));
56          assertEquals("xyz", StringUtils.firstNonEmpty(null, "xyz", "abc"));
57      }
58  
59      @Test
60      public void testIsAllBlank() {
61          assertTrue(StringUtils.isAllBlank((String) null));
62          assertTrue(StringUtils.isAllBlank((String[]) null));
63          assertTrue(StringUtils.isAllBlank(null, null));
64          assertTrue(StringUtils.isAllBlank(null, " "));
65          assertFalse(StringUtils.isAllBlank(null, "foo"));
66          assertFalse(StringUtils.isAllBlank(null, "a"));
67          assertFalse(StringUtils.isAllBlank("", "bar"));
68          assertFalse(StringUtils.isAllBlank("bob", ""));
69          assertFalse(StringUtils.isAllBlank("  bob  ", null));
70          assertFalse(StringUtils.isAllBlank(" ", "bar"));
71          assertFalse(StringUtils.isAllBlank("foo", "bar"));
72      }
73  
74      @Test
75      public void testIsAllEmpty() {
76          assertTrue(StringUtils.isAllEmpty());
77          assertTrue(StringUtils.isAllEmpty());
78          assertTrue(StringUtils.isAllEmpty((String) null));
79          assertTrue(StringUtils.isAllEmpty((String[]) null));
80          assertFalse(StringUtils.isAllEmpty(null, "foo"));
81          assertFalse(StringUtils.isAllEmpty(null, "a"));
82          assertFalse(StringUtils.isAllEmpty("", "bar"));
83          assertFalse(StringUtils.isAllEmpty("bob", ""));
84          assertFalse(StringUtils.isAllEmpty("  bob  ", null));
85          assertFalse(StringUtils.isAllEmpty(" ", "bar"));
86          assertFalse(StringUtils.isAllEmpty("foo", "bar"));
87          assertTrue(StringUtils.isAllEmpty("", null));
88      }
89  
90      @Test
91      public void testIsAnyBlank() {
92          assertTrue(StringUtils.isAnyBlank((String) null));
93          assertFalse(StringUtils.isAnyBlank((String[]) null));
94          assertTrue(StringUtils.isAnyBlank(null, "foo"));
95          assertTrue(StringUtils.isAnyBlank(null, null));
96          assertTrue(StringUtils.isAnyBlank("", "bar"));
97          assertTrue(StringUtils.isAnyBlank("bob", ""));
98          assertTrue(StringUtils.isAnyBlank("  bob  ", null));
99          assertTrue(StringUtils.isAnyBlank(" ", "bar"));
100         assertFalse(StringUtils.isAnyBlank("foo", "bar"));
101     }
102 
103     @Test
104     public void testIsAnyEmpty() {
105         assertTrue(StringUtils.isAnyEmpty((String) null));
106         assertFalse(StringUtils.isAnyEmpty((String[]) null));
107         assertTrue(StringUtils.isAnyEmpty(null, "foo"));
108         assertTrue(StringUtils.isAnyEmpty(null, "a"));
109         assertTrue(StringUtils.isAnyEmpty("", "bar"));
110         assertTrue(StringUtils.isAnyEmpty("bob", ""));
111         assertTrue(StringUtils.isAnyEmpty("  bob  ", null));
112         assertFalse(StringUtils.isAnyEmpty(" ", "bar"));
113         assertFalse(StringUtils.isAnyEmpty("foo", "bar"));
114     }
115 
116     @Test
117     public void testIsBlank() {
118         assertTrue(StringUtils.isBlank(null));
119         assertTrue(StringUtils.isBlank(""));
120         assertTrue(StringUtils.isBlank(StringUtilsTest.WHITESPACE));
121         assertFalse(StringUtils.isBlank("a"));
122         assertFalse(StringUtils.isBlank("foo"));
123         assertFalse(StringUtils.isBlank("  foo  "));
124     }
125 
126     @Test
127     public void testIsEmpty() {
128         assertTrue(StringUtils.isEmpty(null));
129         assertTrue(StringUtils.isEmpty(""));
130         assertFalse(StringUtils.isEmpty(" "));
131         assertFalse(StringUtils.isEmpty("a"));
132         assertFalse(StringUtils.isEmpty("foo"));
133         assertFalse(StringUtils.isEmpty("  foo  "));
134     }
135 
136     @Test
137     public void testIsNoneBlank() {
138         assertFalse(StringUtils.isNoneBlank((String) null));
139         assertTrue(StringUtils.isNoneBlank((String[]) null));
140         assertFalse(StringUtils.isNoneBlank(null, "a"));
141         assertFalse(StringUtils.isNoneBlank(null, "foo"));
142         assertFalse(StringUtils.isNoneBlank(null, null));
143         assertFalse(StringUtils.isNoneBlank("", "bar"));
144         assertFalse(StringUtils.isNoneBlank("a", ""));
145         assertFalse(StringUtils.isNoneBlank("bob", ""));
146         assertFalse(StringUtils.isNoneBlank("  bob  ", null));
147         assertFalse(StringUtils.isNoneBlank(" ", "bar"));
148         assertTrue(StringUtils.isNoneBlank("foo", "bar"));
149     }
150 
151     @Test
152     public void testIsNoneEmpty() {
153         assertFalse(StringUtils.isNoneEmpty((String) null));
154         assertTrue(StringUtils.isNoneEmpty((String[]) null));
155         assertFalse(StringUtils.isNoneEmpty(null, "a"));
156         assertFalse(StringUtils.isNoneEmpty(null, "foo"));
157         assertFalse(StringUtils.isNoneEmpty("", "bar"));
158         assertFalse(StringUtils.isNoneEmpty("bob", ""));
159         assertFalse(StringUtils.isNoneEmpty("a", ""));
160         assertFalse(StringUtils.isNoneEmpty("  bob  ", null));
161         assertTrue(StringUtils.isNoneEmpty(" ", "bar"));
162         assertTrue(StringUtils.isNoneEmpty("foo", "bar"));
163     }
164 
165     @Test
166     public void testIsNotBlank() {
167         assertFalse(StringUtils.isNotBlank(null));
168         assertFalse(StringUtils.isNotBlank(""));
169         assertFalse(StringUtils.isNotBlank(StringUtilsTest.WHITESPACE));
170         assertTrue(StringUtils.isNotBlank("a"));
171         assertTrue(StringUtils.isNotBlank("foo"));
172         assertTrue(StringUtils.isNotBlank("  foo  "));
173     }
174 
175     @Test
176     public void testIsNotEmpty() {
177         assertFalse(StringUtils.isNotEmpty(null));
178         assertFalse(StringUtils.isNotEmpty(""));
179         assertTrue(StringUtils.isNotEmpty(" "));
180         assertTrue(StringUtils.isNotEmpty("a"));
181         assertTrue(StringUtils.isNotEmpty("foo"));
182         assertTrue(StringUtils.isNotEmpty("  foo  "));
183     }
184 }