View Javadoc
1   /*
2    *   Copyright (C) 2005 Christian Schulte <cs@schulte.it>
3    *   All rights reserved.
4    *
5    *   Redistribution and use in source and binary forms, with or without
6    *   modification, are permitted provided that the following conditions
7    *   are met:
8    *
9    *     o Redistributions of source code must retain the above copyright
10   *       notice, this list of conditions and the following disclaimer.
11   *
12   *     o Redistributions in binary form must reproduce the above copyright
13   *       notice, this list of conditions and the following disclaimer in
14   *       the documentation and/or other materials provided with the
15   *       distribution.
16   *
17   *   THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
18   *   INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
19   *   AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
20   *   THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY DIRECT, INDIRECT,
21   *   INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22   *   NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23   *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24   *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25   *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26   *   THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27   *
28   *   $JOMC: TrailingWhitespaceEditorTest.java 5091 2016-04-04 15:40:17Z schulte $
29   *
30   */
31  package org.jomc.util.test;
32  
33  import org.jomc.util.LineEditor;
34  import org.jomc.util.TrailingWhitespaceEditor;
35  import org.junit.Test;
36  import static org.junit.Assert.assertEquals;
37  
38  /**
39   * Test cases for class {@code org.jomc.util.TrailingWhitespaceEditor}.
40   *
41   * @author <a href="mailto:cs@schulte.it">Christian Schulte</a>
42   * @version $JOMC: TrailingWhitespaceEditorTest.java 5091 2016-04-04 15:40:17Z schulte $
43   */
44  public class TrailingWhitespaceEditorTest extends LineEditorTest
45  {
46  
47      /**
48       * Creates a new {@code TrailingWhitespaceEditorTest} instance.
49       */
50      public TrailingWhitespaceEditorTest()
51      {
52          super();
53      }
54  
55      /**
56       * {@inheritDoc}
57       */
58      @Override
59      public TrailingWhitespaceEditor getLineEditor()
60      {
61          return (TrailingWhitespaceEditor) super.getLineEditor();
62      }
63  
64      /**
65       * {@inheritDoc}
66       */
67      @Override
68      protected TrailingWhitespaceEditor newLineEditor()
69      {
70          return new TrailingWhitespaceEditor();
71      }
72  
73      /**
74       * {@inheritDoc}
75       */
76      @Override
77      protected TrailingWhitespaceEditor newLineEditor( final LineEditor editor )
78      {
79          return new TrailingWhitespaceEditor( editor );
80      }
81  
82      @Test
83      public final void testTrailingWhitespaceEditor() throws Exception
84      {
85          assertEquals( this.getLineEditor().getLineSeparator(), this.getLineEditor().edit( "\t     " ) );
86          assertEquals( this.getLineEditor().getLineSeparator(), this.getLineEditor().edit( "\t     \n" ) );
87          assertEquals( "   X" + this.getLineEditor().getLineSeparator(), this.getLineEditor().edit( "   X " ) );
88      }
89  
90  }