3 * Copyright © 2013 František Kučera (frantovo.cz)
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, version 3 of the License.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 package info.globalcode.sql.dk;
19 import java.util.ArrayList;
20 import java.util.Collection;
21 import java.util.List;
22 import org.junit.jupiter.api.Test;
23 import static org.junit.jupiter.api.Assertions.*;
27 * @author Ing. František Kučera (frantovo.cz)
29 public class FunctionsTest {
32 public void testNotNull() {
33 Collection<String> c = null;
34 for (String s : Functions.notNull(c)) {
35 fail("Should not iterate through null collection");
38 c = new ArrayList<>();
41 for (String s : Functions.notNull(c)) {
42 assertEquals(s, "ahoj", "Wrong item in collection");
45 assertEquals(count, 1, "Wrong number of iterations");
49 public void testLpad() {
50 String original = "abc";
53 padded = Functions.lpad(original, 5);
54 assertEquals(padded, " abc");
56 padded = Functions.lpad(original, 2);
57 assertEquals(padded, original);
61 public void testRpad() {
62 String original = "abc";
65 padded = Functions.rpad(original, 5);
66 assertEquals(padded, "abc ");
68 padded = Functions.rpad(original, 2);
69 assertEquals(padded, original);
73 public void testRepeat() {
74 assertEquals(Functions.repeat('f', 0), "");
75 assertEquals(Functions.repeat('f', 3), "fff");
79 public void testGetClassHierarchy() {
80 List<Class<? extends HierarchyMockClass2>> hierarchy = Functions.getClassHierarchy(HierarchyMockClass0.class, HierarchyMockClass2.class);
81 assertEquals(hierarchy.size(), 3, "invalid number of classes in the hierarchy");
82 assertEquals(hierarchy.get(0), HierarchyMockClass0.class);
83 assertEquals(hierarchy.get(1), HierarchyMockClass1.class);
84 assertEquals(hierarchy.get(2), HierarchyMockClass2.class);
87 private static class HierarchyMockClass0 extends HierarchyMockClass1 {
90 private static class HierarchyMockClass1 extends HierarchyMockClass2 {
93 private static class HierarchyMockClass2 {