]> source.dussan.org Git - jgit.git/commitdiff
Simplify pgm tests: allow varargs and trim output for toString() 15/63415/1
authorAndrey Loskutov <loskutov@gmx.de>
Sat, 2 Jan 2016 12:24:02 +0000 (13:24 +0100)
committerAndrey Loskutov <loskutov@gmx.de>
Sat, 2 Jan 2016 16:41:58 +0000 (17:41 +0100)
Change-Id: Ia5bcd9e560b90cf872fef75c2800c889ef1cc85a
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
org.eclipse.jgit.pgm.test/src/org/eclipse/jgit/lib/CLIRepositoryTestCase.java
org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/CommitTest.java

index a72af9a1c4ca7230b8d433543ccd3ca53a9cf03b..a3436a0179b0a96c7e61b635cf06965465213e9b 100644 (file)
@@ -223,20 +223,24 @@ public class CLIRepositoryTestCase extends LocalDiskRepositoryTestCase {
                assertEquals(toString(expected), toString(actual));
        }
 
-       public static String toString(String[] lines) {
+       public static String toString(String... lines) {
                return toString(Arrays.asList(lines));
        }
 
        public static String toString(List<String> lines) {
                StringBuilder b = new StringBuilder();
                for (String s : lines) {
+                       // trim indentation, to simplify tests
+                       s = s.trim();
                        if (s != null && !s.isEmpty()) {
                                b.append(s);
-                               if (!s.endsWith("\n")) {
-                                       b.append('\n');
-                               }
+                               b.append('\n');
                        }
                }
+               // delete last line break to allow simpler tests with one line compare
+               if (b.length() > 0 && b.charAt(b.length() - 1) == '\n') {
+                       b.deleteCharAt(b.length() - 1);
+               }
                return b.toString();
        }
 
index 721ed156957ad228c0eed74775db7bf86d3419f8..6bccb6d4a7acbc866518b2553a30d355c3a589fb 100644 (file)
@@ -42,7 +42,7 @@
  */
 package org.eclipse.jgit.pgm;
 
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.assertEquals;
 
 import org.eclipse.jgit.lib.CLIRepositoryTestCase;
 import org.junit.Test;
@@ -54,26 +54,27 @@ public class CommitTest extends CLIRepositoryTestCase {
                writeTrashFile("a", "a");
                writeTrashFile("b", "a");
                String result = toString(execute("git add a"));
-               assertTrue("Unexpected output: " + result, result.isEmpty());
+               assertEquals("", result);
 
                result = toString(execute("git status -- a"));
-               assertTrue("Unexpected output: " + result,
-                               result.contains("new file:   a"));
+               assertEquals(toString("On branch master", "Changes to be committed:",
+                               "new file:   a"), result);
 
                result = toString(execute("git status -- b"));
-               assertTrue("Unexpected output: " + result,
-                               result.trim().contains("Untracked files:\n      b"));
+               assertEquals(toString("On branch master", "Untracked files:", "b"),
+                               result);
 
                result = toString(execute("git commit a -m 'added a'"));
-               assertTrue("Unexpected output: " + result, result.contains("added a"));
+               assertEquals(
+                               "[master 8cb3ef7e5171aaee1792df6302a5a0cd30425f7a] added a",
+                               result);
 
                result = toString(execute("git status -- a"));
-               assertTrue("Unexpected output: " + result,
-                               result.trim().equals("On branch master"));
+               assertEquals("On branch master", result);
 
                result = toString(execute("git status -- b"));
-               assertTrue("Unexpected output: " + result,
-                               result.trim().contains("Untracked files:\n      b"));
+               assertEquals(toString("On branch master", "Untracked files:", "b"),
+                               result);
        }
 
        @Test
@@ -81,21 +82,19 @@ public class CommitTest extends CLIRepositoryTestCase {
                writeTrashFile("a", "a");
                writeTrashFile("b", "a");
                String result = toString(execute("git add a b"));
-               assertTrue("Unexpected output: " + result, result.isEmpty());
+               assertEquals("", result);
 
                result = toString(execute("git status -- a b"));
-               assertTrue("Unexpected output: " + result,
-                               result.contains("new file:   a"));
-               assertTrue("Unexpected output: " + result,
-                               result.contains("new file:   b"));
+               assertEquals(toString("On branch master", "Changes to be committed:",
+                               "new file:   a", "new file:   b"), result);
 
                result = toString(execute("git commit -m 'added a b'"));
-               assertTrue("Unexpected output: " + result,
-                               result.contains("added a b"));
+               assertEquals(
+                               "[master 3c93fa8e3a28ee26690498be78016edcb3a38c73] added a b",
+                               result);
 
                result = toString(execute("git status -- a b"));
-               assertTrue("Unexpected output: " + result,
-                               result.trim().equals("On branch master"));
+               assertEquals("On branch master", result);
        }
 
 }