    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one
    3    * or more contributor license agreements.  See the NOTICE file
    4    * distributed with this work for additional information
    5    * regarding copyright ownership.  The ASF licenses this file
    6    * to you under the Apache License, Version 2.0 (the
    7    * "License"); you may not use this file except in compliance
    8    * with the License.  You may obtain a copy of the License at
    9    *
    10   *   http://www.apache.org/licenses/LICENSE-2.0
    11   *
    12   * Unless required by applicable law or agreed to in writing,
    13   * software distributed under the License is distributed on an
    14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    15   * KIND, either express or implied.  See the License for the
    16   * specific language governing permissions and limitations
    17   * under the License.
    18   */
    19  package org.apache.mina.example.haiku;
    20
    21  import junit.framework.TestCase;
    22
    23  /**
    24   * @author Apache Mina Project (dev@mina.apache.org)
    25   * @version $Rev: $, $Date:  $
    26   */
    27  public class HaikuValidatorTest extends TestCase {
    28      // from http://allrileyedup.blogspot.com/2006/10/dont-hassle-haiku.html -- good friend of proyal@apache.org
    29      private static final String[] HAIKUS = {
    30              "This class is boring.\n" + "Will David ever shut up?\n"
    31                      + "What is Steph wearing?",
    32
    33              "Oh, I drank too much.\n" + "Why, oh why did I sign up\n"
    34                      + "For an eight thirty?",
    35
    36              "Which one should I do?\n" + "Wax my chest or perm my hair?\n"
    37                      + "Can’t wait to decide.",
    38
    39              "Watch my video.\n" + "I can't stop this fee-ee-ling!\n"
    40                      + "What is wrong with me?",
    41
    42              "The car chases me.\n" + "I must get away from it.\n"
    43                      + "Turbo Boost! Oh, yeah.",
    44
    45              "My new slogan is\n" + "Don't hassle me... I'm oiling.\n"
    46                      + "You know it’s so true.",
    47
    48              "Michael, I love you.\n" + "I long for you to tell me\n"
    49                      + "\"KITT, need you buddy.\"",
    50
    51              "In Knight Rider, I’m\n" + "A Man Who Does Not Exist.\n"
    52                      + "(Except in your dreams).",
    53
    54              "Yes, I’m Michael Knight\n" + "Check out my unbuttoned shirt.\n"
    55                      + "And sexy tight pants.",
    56
    57              "My bitch ex-wife sucks.\n" + "And so do all the airlines.\n"
    58                      + "I miss Knight Rider.",
    59
    60              "I am Michael Knight.\n" + "I am David Hasselhoff.\n"
    61                      + "I’m not Rick James, bitch." };
    62
    63      private HaikuValidator validator;
    64
    65      @Override
    66      protected void setUp() throws Exception {
    67          super.setUp();
    68
    69          validator = new HaikuValidator();
    70      }
    71
    72      public void testValidateHaikus() throws Exception {
    73          for (String s : HAIKUS) {
    74              String[] lines = s.split("\n");
    75
    76              Haiku haiku = new Haiku(lines);
    77
    78              validator.validate(haiku);
    79          }
    80      }
    81  }