slawekjaranowski commented on a change in pull request #469: URL: https://github.com/apache/maven-surefire/pull/469#discussion_r805212066
########## File path: surefire-api/src/main/java/org/apache/maven/surefire/api/report/ReporterFactory.java ########## @@ -33,7 +33,7 @@ * * @return A reporter instance */ - RunListener createReporter(); + TestRunListener createReporter(); Review comment: rename method `createReporter` -> `crateTestRunListener` WDYT? javadoc for this method is still actual? ########## File path: surefire-providers/common-junit4/src/main/java/org/apache/maven/surefire/common/junit4/JUnit4RunListener.java ########## @@ -41,12 +43,14 @@ * */ public class JUnit4RunListener - extends org.junit.runner.notification.RunListener + extends RunListener + implements TestOutputReceiver { - protected final RunListener reporter; + protected final TestRunListener reporter; Review comment: maybe also change reported -> testRunListener and in other similar place ########## File path: surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/ConcurrentRunListener.java ########## @@ -61,10 +60,10 @@ this.reportImmediately = reportImmediately; this.classMethodCounts = classMethodCounts; this.consoleStream = consoleStream; - reporterManagerThreadLocal = new ThreadLocal<RunListener>() + reporterManagerThreadLocal = new ThreadLocal<TestRunListener>() { @Override - protected RunListener initialValue() + protected TestRunListener initialValue() { return reporterFactory.createReporter(); } Review comment: now can be like: ``` reporterManagerThreadLocal = ThreadLocal.withInitial( reporterFactory::createReporter ); ``` TestSetFailedException is not thrown from this constructor - line 58 ########## File path: maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java ########## @@ -51,13 +50,13 @@ * @author Kristian Rosenvold */ public class TestSetRunListener - implements RunListener, ConsoleOutputReceiver, ConsoleLogger + implements TestRunListener, ConsoleLogger Review comment: still we need implements `ConsoleLogger`? class `TestSetRunListener` is created in one place in `DefaultReporterFactory#createReporter` as `TestRunListener` ... ########## File path: surefire-api/src/main/java/org/apache/maven/surefire/api/report/TestRunListener.java ########## @@ -0,0 +1,28 @@ +package org.apache.maven.surefire.api.report; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/** + * + */ +public interface TestRunListener + extends RunListener, TestOutputReceiver +{ +} Review comment: New interface - it will be good to add javadoc with description what purpose of this interface is. ########## File path: maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java ########## @@ -51,13 +50,13 @@ * @author Kristian Rosenvold */ public class TestSetRunListener - implements RunListener, ConsoleOutputReceiver, ConsoleLogger + implements TestRunListener, ConsoleLogger Review comment: Ok, I can wrong On fork side `ForkingRunListener` is used as ConsoleLogger instance of `ForkingRunListener` is created by `ForkingReporterFactory#createReporter` in `ForkedBooter` I see ``` forkingReporterFactory = createForkingReporterFactory(); logger = (ConsoleLogger) forkingReporterFactory.createReporter(); ``` but when I see `ConsoleLoggerDecorator` - everything can happen in runtime so don't spend more time on this ... maybe after more time it will be more clear for me -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org