master
 1package ca.mokhan.test;
 2
 3import Q1.*;
 4import junit.framework.Test;
 5import junit.framework.TestCase;
 6import junit.framework.TestSuite;
 7
 8public class ReversedSentenceTest extends TestCase {
 9  private ReversedSentence subject;
10
11  public ReversedSentenceTest(String testName) {
12    super(testName);
13    this.subject = new ReversedSentence();
14  }
15
16  public static Test suite() {
17    return new TestSuite(ReversedSentenceTest.class);
18  }
19
20  public void testTruthy() {
21    assertEquals(true, true);
22  }
23
24  public void testReverseByCharacter() {
25    assertEquals(
26        "bmal elttil a dah yram", ReversedSentence.reverseByCharacter("mary had a little lamb"));
27  }
28
29  public void testReverseByWord() {
30    assertEquals(
31        "lamb little a had mary", ReversedSentence.reverseByWord("mary had a little lamb"));
32  }
33
34  public void testChange5thPosition() {
35    assertEquals(
36        "mary zad azlittze lazb", ReversedSentence.change5thPosition("mary had a little lamb"));
37  }
38
39  public void testPrintChar2DArray() {
40    char[][] matrix = new char[3][80];
41    String sentence = "mary had a little lamb";
42    matrix[0] = ReversedSentence.reverseByCharacter(sentence).toCharArray();
43    matrix[1] = ReversedSentence.reverseByWord(sentence).toCharArray();
44    matrix[2] = ReversedSentence.change5thPosition(sentence).toCharArray();
45
46    String expected =
47        String.join(
48            System.lineSeparator(),
49            new String(matrix[0]),
50            new String(matrix[1]),
51            new String(matrix[2]));
52    assertEquals(expected, ReversedSentence.printChar2DArray(matrix));
53  }
54
55  public void testTruncateSentence() {
56    String sentence = "mary had a little lamb";
57    assertEquals(sentence, ReversedSentence.truncateSentence(sentence));
58
59    String result = ReversedSentence.truncateSentence(createString(90, 'x'));
60    assertEquals(80, result.length());
61    assertEquals(createString(80, 'x'), result);
62  }
63
64  private String createString(int length, char character) {
65    StringBuffer buffer = new StringBuffer(length);
66    for (int i = 0; i < length; i++) buffer.append(character);
67    return buffer.toString();
68  }
69}