From 08dfeadc31c08f406f9c4ece893ca898821bc2c7 Mon Sep 17 00:00:00 2001 From: jackygurui Date: Wed, 4 May 2016 23:46:36 +0100 Subject: [PATCH] Added RunListener to print test names --- pom.xml | 8 +++ .../TestNameToConsoleRunListener.java | 58 +++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 src/test/java/org/redisson/TestNameToConsoleRunListener.java diff --git a/pom.xml b/pom.xml index c7cf883d8..0c3967411 100644 --- a/pom.xml +++ b/pom.xml @@ -352,6 +352,14 @@ org.apache.maven.plugins maven-surefire-plugin 2.19.1 + + + + listener + org.redisson.TestNameToConsoleRunListener + + + diff --git a/src/test/java/org/redisson/TestNameToConsoleRunListener.java b/src/test/java/org/redisson/TestNameToConsoleRunListener.java new file mode 100644 index 000000000..4f9fa1d05 --- /dev/null +++ b/src/test/java/org/redisson/TestNameToConsoleRunListener.java @@ -0,0 +1,58 @@ +package org.redisson; + +import java.util.stream.IntStream; +import org.junit.runner.Description; +import org.junit.runner.notification.Failure; +import org.junit.runner.notification.RunListener; + +public class TestNameToConsoleRunListener extends RunListener { + + @Override + public void testStarted(Description d) throws Exception { + super.testStarted(d); + printTestName("Started", d.getDisplayName(), '*'); + } + + @Override + public void testFinished(Description d) throws Exception { + super.testFinished(d); + printTestName("Finished", d.getDisplayName()); + } + + @Override + public void testIgnored(Description d) throws Exception { + super.testIgnored(d); + printTestName("Ignored", d.getDisplayName()); + } + + @Override + public void testFailure(Failure f) throws Exception { + super.testFailure(f); + printTestName("Failed", f.getTestHeader()); + } + + @Override + public void testAssumptionFailure(Failure f) { + super.testAssumptionFailure(f); + printTestName("Assumption Failed", f.getTestHeader()); + } + + private static void printTestName(String action, String test) { + printTestName(action, test, '='); + } + + private static void printTestName(String action, String test, char c) { + int dividers = 16 + action.length() + test.length(); + aBeautifulDivider(dividers, c); + System.out.println(" " + action + " Test: " + test); + aBeautifulDivider(dividers, c); + } + + private static void aBeautifulDivider(int times, char c) { + System.out.println(""); + IntStream.iterate(0, n -> n++) + .limit(times) + .forEach((i) -> System.out.print(c)); + System.out.println("\n"); + } +}