From d6deb190e61b9b891af2fe67198a18b4ddb2057f Mon Sep 17 00:00:00 2001 From: Andrey Loskutov Date: Sat, 2 Jan 2016 13:24:02 +0100 Subject: Simplify pgm tests: allow varargs and trim output for toString() Change-Id: Ia5bcd9e560b90cf872fef75c2800c889ef1cc85a Signed-off-by: Andrey Loskutov --- .../eclipse/jgit/lib/CLIRepositoryTestCase.java | 12 ++++--- .../tst/org/eclipse/jgit/pgm/CommitTest.java | 39 +++++++++++----------- 2 files changed, 27 insertions(+), 24 deletions(-) (limited to 'org.eclipse.jgit.pgm.test') diff --git a/org.eclipse.jgit.pgm.test/src/org/eclipse/jgit/lib/CLIRepositoryTestCase.java b/org.eclipse.jgit.pgm.test/src/org/eclipse/jgit/lib/CLIRepositoryTestCase.java index a72af9a1c4..a3436a0179 100644 --- a/org.eclipse.jgit.pgm.test/src/org/eclipse/jgit/lib/CLIRepositoryTestCase.java +++ b/org.eclipse.jgit.pgm.test/src/org/eclipse/jgit/lib/CLIRepositoryTestCase.java @@ -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 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(); } diff --git a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/CommitTest.java b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/CommitTest.java index 721ed15695..6bccb6d4a7 100644 --- a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/CommitTest.java +++ b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/CommitTest.java @@ -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); } } -- cgit v1.2.3