/** * Copyright (C) 2013,2014 Christian Pierre MOMON * * This file is part of Devinsy-utils. * * Devinsy-utils is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Devinsy-utils is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with Devinsy-utils. If not, see */ package fr.devinsy.util; import org.apache.log4j.BasicConfigurator; import org.apache.log4j.Level; import org.apache.log4j.Logger; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import fr.devinsy.util.strings.StringList; /** * * @author Christian P. Momon */ public class StringListTest { static protected org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(StringListTest.class); /** * */ @Before public void before() { BasicConfigurator.configure(); Logger.getRootLogger().setLevel(Level.ERROR); } /** * */ @Test public void testCharAt01() { // logger.debug("===== test starting..."); // StringList source = new StringList(); source.append("abcdefghijklm"); // char target = source.charAt(0); Assert.assertEquals(target, 'a'); // target = source.charAt(4); Assert.assertEquals(target, 'e'); // target = source.charAt(11); Assert.assertEquals(target, 'l'); // logger.debug("===== test done."); } /** * */ @Test public void testCharAt02() { // logger.debug("===== test starting..."); // StringList source = new StringList(); source.append("abc"); source.append("def"); source.append("ghi"); source.append("jkl"); source.append("mno"); // char target = source.charAt(0); Assert.assertEquals('a', target); // target = source.charAt(4); Assert.assertEquals('e', target); // target = source.charAt(11); Assert.assertEquals('l', target); // logger.debug("===== test done."); } /** * */ @Test(expected = IndexOutOfBoundsException.class) public void testCharAtException01() { // logger.debug("===== test starting..."); // StringList source = new StringList(); source.append("abcdefghijklm"); // char target = source.charAt(-2); Assert.assertEquals('a', target); // logger.debug("===== test done."); } /** * */ @Test(expected = IndexOutOfBoundsException.class) public void testCharAtException02() { // logger.debug("===== test starting..."); // StringList source = new StringList(); source.append("abcdefghijklm"); // char target = source.charAt(100); Assert.assertEquals('a', target); // logger.debug("===== test done."); } /** * */ @Test(expected = IndexOutOfBoundsException.class) public void testCharAtException03() { // logger.debug("===== test starting..."); // StringList source = new StringList(); source.append("abcdefghijklm"); // char target = source.charAt(source.length()); Assert.assertEquals('a', target); // logger.debug("===== test done."); } /** * */ @Test public void testConstructor01() { // logger.debug("===== test starting..."); String[] source = { "a", "b", "c" }; // StringList target = new StringList(source); Assert.assertEquals(3, target.size()); // logger.debug("===== test done."); } /** * */ @Test public void testConstructor02() { // logger.debug("===== test starting..."); // StringList target = new StringList("a", "b", "c"); Assert.assertEquals(3, target.size()); // logger.debug("===== test done."); } /** * */ @Test public void testSubstring01() { // logger.debug("===== test starting..."); // StringList source = new StringList(); source.append("hamburger"); // StringList target = source.substring(4, 8); Assert.assertEquals("urge", target.toString()); // logger.debug("===== test done."); } /** * */ @Test public void testSubstring02() { // logger.debug("===== test starting..."); // StringList source = new StringList(); source.append("ham").append("bur").append("ger"); // StringList target = source.substring(4, 8); Assert.assertEquals("urge", target.toString()); // logger.debug("===== test done."); } /** */ @Test public void testSubstring03() { // logger.debug("===== test starting..."); // StringList source = new StringList(); source.append("smiles"); // StringList target = source.substring(1, 5); Assert.assertEquals("mile", target.toString()); // logger.debug("===== test done."); } /** */ @Test public void testSubstring04() { // logger.debug("===== test starting..."); // StringList source = new StringList(); source.append("sm").append("il").append("es"); // StringList target = source.substring(1, 5); Assert.assertEquals("mile", target.toString()); // logger.debug("===== test done."); } /** * */ @Test public void testToString01() { // logger.debug("===== test starting..."); // StringList buffer = new StringList(); String target = buffer.toString(); Assert.assertTrue(target.equals("")); // logger.debug("===== test done."); } /** * */ @Test public void testToString02() { // logger.debug("===== test starting..."); // String source = "abcdefghijklm"; StringList buffer = new StringList(); buffer.append(source); String target = buffer.toString(); Assert.assertEquals(source, target); Assert.assertTrue(target.equals(source)); // logger.debug("===== test done."); } /** * */ @Test public void testToString03() { // logger.debug("===== test starting..."); // String source1 = "abcdefghijklm"; String source2 = "other stuff"; StringList buffer = new StringList(); buffer.append(source1); buffer.append(source2); String target = buffer.toString(); Assert.assertTrue(target.equals(source1 + source2)); // logger.debug("===== test done."); } }