diff --git a/code/clients/src/test/java/dev/inditex/karate/AbstractClientTest.java b/code/clients/src/test/java/dev/inditex/karate/AbstractClientTest.java index 3626a59..b360f52 100644 --- a/code/clients/src/test/java/dev/inditex/karate/AbstractClientTest.java +++ b/code/clients/src/test/java/dev/inditex/karate/AbstractClientTest.java @@ -6,6 +6,7 @@ import ch.qos.logback.classic.Logger; import ch.qos.logback.classic.spi.ILoggingEvent; import ch.qos.logback.core.read.ListAppender; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.slf4j.LoggerFactory; @@ -13,12 +14,21 @@ public abstract class AbstractClientTest { protected ListAppender logWatcher; + protected Level defaultLogLevel; + @BeforeEach void beforeEach() { + defaultLogLevel = ((Logger) LoggerFactory.getLogger(KarateClientLogger.class)).getLevel(); logWatcher = new ListAppender<>(); logWatcher.start(); ((Logger) LoggerFactory.getLogger(KarateClientLogger.class)).addAppender(logWatcher); ((Logger) LoggerFactory.getLogger(KarateClientLogger.class)).setLevel(Level.INFO); } + @AfterEach + void afterEach() { + ((Logger) LoggerFactory.getLogger(KarateClientLogger.class)).detachAppender(logWatcher); + ((Logger) LoggerFactory.getLogger(KarateClientLogger.class)).setLevel(defaultLogLevel); + } + } diff --git a/code/clients/src/test/java/dev/inditex/karate/logging/KarateClientLoggerTest.java b/code/clients/src/test/java/dev/inditex/karate/logging/KarateClientLoggerTest.java index ef9bf5a..74ea793 100644 --- a/code/clients/src/test/java/dev/inditex/karate/logging/KarateClientLoggerTest.java +++ b/code/clients/src/test/java/dev/inditex/karate/logging/KarateClientLoggerTest.java @@ -8,6 +8,7 @@ import ch.qos.logback.classic.Logger; import ch.qos.logback.classic.spi.ILoggingEvent; import ch.qos.logback.core.read.ListAppender; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; @@ -28,13 +29,21 @@ class KarateClientLoggerTest { protected ListAppender logWatcher; + protected Level defaultLogLevel; + @BeforeEach void setup() { + defaultLogLevel = ((Logger) LoggerFactory.getLogger(KarateClientLogger.class)).getLevel(); logWatcher = new ListAppender<>(); logWatcher.start(); - final Logger logger = (Logger) LoggerFactory.getLogger(KarateClientLogger.class); - logger.setLevel(Level.TRACE); - logger.addAppender(logWatcher); + ((Logger) LoggerFactory.getLogger(KarateClientLogger.class)).setLevel(Level.TRACE); + ((Logger) LoggerFactory.getLogger(KarateClientLogger.class)).addAppender(logWatcher); + } + + @AfterEach + void afterEach() { + ((Logger) LoggerFactory.getLogger(KarateClientLogger.class)).detachAppender(logWatcher); + ((Logger) LoggerFactory.getLogger(KarateClientLogger.class)).setLevel(defaultLogLevel); } @Nested diff --git a/code/clients/src/test/java/dev/inditex/karate/parser/SystemPropertiesParserIT.java b/code/clients/src/test/java/dev/inditex/karate/parser/SystemPropertiesParserIT.java index 613b2bd..aecc927 100644 --- a/code/clients/src/test/java/dev/inditex/karate/parser/SystemPropertiesParserIT.java +++ b/code/clients/src/test/java/dev/inditex/karate/parser/SystemPropertiesParserIT.java @@ -13,6 +13,7 @@ import com.intuit.karate.core.ScenarioFileReader; import com.intuit.karate.graal.JsValue; import com.intuit.karate.http.HttpClientFactory; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Tag; @@ -24,14 +25,23 @@ class SystemPropertiesParserIT { protected ListAppender logWatcher; + protected Level defaultLogLevel; + @BeforeEach protected void beforeEach() { + defaultLogLevel = ((Logger) LoggerFactory.getLogger(SystemPropertiesParser.class)).getLevel(); logWatcher = new ListAppender<>(); logWatcher.start(); ((Logger) LoggerFactory.getLogger(SystemPropertiesParser.class)).addAppender(logWatcher); ((Logger) LoggerFactory.getLogger(SystemPropertiesParser.class)).setLevel(Level.DEBUG); } + @AfterEach + protected void afterEach() { + ((Logger) LoggerFactory.getLogger(SystemPropertiesParser.class)).detachAppender(logWatcher); + ((Logger) LoggerFactory.getLogger(SystemPropertiesParser.class)).setLevel(defaultLogLevel); + } + @Nested class ParseConfiguration { diff --git a/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGenerator.java b/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGenerator.java index 179c4f1..afef99e 100644 --- a/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGenerator.java +++ b/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGenerator.java @@ -12,8 +12,6 @@ import lombok.Setter; import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.FilenameUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; /** * The Class OpenApiGenerator. @@ -71,9 +69,9 @@ public List execute() { outputs.addAll(this.executeMockData()); } } catch (final IllegalArgumentException e) { - ANSILogger.error(e.getMessage()); + OpenApiGeneratorANSILogger.error(e.getMessage()); } - outputs.forEach(p -> ANSILogger.info("Generated " + rootPath.relativize(p))); + outputs.forEach(p -> OpenApiGeneratorANSILogger.info("Generated " + rootPath.relativize(p))); return outputs; } @@ -93,7 +91,7 @@ public void configureOptions() { protected List executeOperations() { final Path rootPath = Paths.get(this.targetFolder); final List outputs = new ArrayList<>(); - ANSILogger.info("Generating Operations ..."); + OpenApiGeneratorANSILogger.info("Generating Operations ..."); outputs.addAll(OpenApiGenerators.generateOperations(rootPath, this.options.getArtifact(), this.options.getOperations())); KarateConfig.updateKarateUrls(this.targetFolder, this.options.getArtifact()); return outputs; @@ -107,7 +105,7 @@ protected List executeOperations() { protected List executeSmokeTests() { final Path rootPath = Paths.get(this.targetFolder); final List outputs = new ArrayList<>(); - ANSILogger.info("Generating Smoke Tests ..."); + OpenApiGeneratorANSILogger.info("Generating Smoke Tests ..."); outputs.addAll(OpenApiGenerators.generateSmokeTests(rootPath, this.options.getArtifact(), this.options.getOperations(), this.options.getOpenApi())); return outputs; @@ -121,8 +119,8 @@ protected List executeSmokeTests() { protected List executeFunctionalTest() { final Path rootPath = Paths.get(this.targetFolder); final List outputs = new ArrayList<>(); - ANSILogger.info("Generating Functional Tests ..."); - ANSILogger.info("Generating Functional Test Case [" + this.options.getTestName() + "] ..."); + OpenApiGeneratorANSILogger.info("Generating Functional Tests ..."); + OpenApiGeneratorANSILogger.info("Generating Functional Test Case [" + this.options.getTestName() + "] ..."); outputs.addAll(OpenApiGenerators.generateFunctionalTest(rootPath, this.options.getArtifact(), this.options.getTestName(), this.options.getInlineMocks(), this.options.getOperationsResponses(), this.options.getOpenApi())); @@ -137,69 +135,11 @@ protected List executeFunctionalTest() { protected List executeMockData() { final Path rootPath = Paths.get(this.targetFolder); final List outputs = new ArrayList<>(); - ANSILogger.info("Generating Mock Data ..."); - ANSILogger.info("Generating Mock Data ..."); + OpenApiGeneratorANSILogger.info("Generating Mock Data ..."); + OpenApiGeneratorANSILogger.info("Generating Mock Data ..."); outputs.addAll(OpenApiGenerators.generateMockData(rootPath, this.options.getArtifact(), this.options.getInlineMocks(), this.options.getInlineMocksFunctionalArtifact(), this.options.getTestName(), this.options.getOperationsResponses(), this.options.getOpenApi())); return outputs; } - - /** - * The Class ANSILogger. - */ - protected static class ANSILogger { - - /** The Constant OPEN_API_GENERATOR_STDOUT. */ - protected static final Logger OPEN_API_GENERATOR_STDOUT = LoggerFactory.getLogger("OpenApiGenerator"); - - /** The Constant ANSI_RESET. */ - protected static final String ANSI_RESET = "\u001B[0m"; - - /** The Constant ANSI_BLUE. */ - protected static final String ANSI_BLUE = "\u001B[34m"; - - /** The Constant ANSI_YELLOW. */ - protected static final String ANSI_YELLOW = "\u001B[33m"; - - /** The Constant ANSI_RED. */ - protected static final String ANSI_RED = "\u001B[31m"; - - /** The Constant LOG_FORMAT. */ - protected static final String LOG_FORMAT = "\n{}{}{}{}\n"; - - /** - * Instantiates a new ANSI logger. - */ - protected ANSILogger() { - // Empty - } - - /** - * Info. - * - * @param message the message - */ - public static void info(final String message) { - OPEN_API_GENERATOR_STDOUT.info(LOG_FORMAT, ANSI_BLUE, "INFO - ", message, ANSI_RESET); - } - - /** - * Warn. - * - * @param message the message - */ - public static void warn(final String message) { - OPEN_API_GENERATOR_STDOUT.debug(LOG_FORMAT, ANSI_YELLOW, "WARN - ", message, ANSI_RESET); - } - - /** - * Error. - * - * @param message the message - */ - public static void error(final String message) { - OPEN_API_GENERATOR_STDOUT.error(LOG_FORMAT, ANSI_RED, "ERROR - ", message, ANSI_RESET); - } - } } diff --git a/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGeneratorANSILogger.java b/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGeneratorANSILogger.java new file mode 100644 index 0000000..4a55b6a --- /dev/null +++ b/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGeneratorANSILogger.java @@ -0,0 +1,62 @@ +package dev.inditex.karate.openapi; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * The Class ANSILogger. + */ +public class OpenApiGeneratorANSILogger { + + /** The Constant OPEN_API_GENERATOR_STDOUT. */ + protected static final Logger OPEN_API_GENERATOR_STDOUT = LoggerFactory.getLogger("OpenApiGenerator"); + + /** The Constant ANSI_RESET. */ + protected static final String ANSI_RESET = "\u001B[0m"; + + /** The Constant ANSI_BLUE. */ + protected static final String ANSI_BLUE = "\u001B[34m"; + + /** The Constant ANSI_YELLOW. */ + protected static final String ANSI_YELLOW = "\u001B[33m"; + + /** The Constant ANSI_RED. */ + protected static final String ANSI_RED = "\u001B[31m"; + + /** The Constant LOG_FORMAT. */ + protected static final String LOG_FORMAT = "\n{}{}{}{}\n"; + + /** + * Instantiates a new ANSI logger. + */ + protected OpenApiGeneratorANSILogger() { + // Empty + } + + /** + * Info. + * + * @param message the message + */ + public static void info(final String message) { + OPEN_API_GENERATOR_STDOUT.info(LOG_FORMAT, ANSI_BLUE, "INFO - ", message, ANSI_RESET); + } + + /** + * Warn. + * + * @param message the message + */ + public static void warn(final String message) { + OPEN_API_GENERATOR_STDOUT.warn(LOG_FORMAT, ANSI_YELLOW, "WARN - ", message, ANSI_RESET); + } + + /** + * Error. + * + * @param message the message + */ + public static void error(final String message) { + OPEN_API_GENERATOR_STDOUT.error(LOG_FORMAT, ANSI_RED, "ERROR - ", message, ANSI_RESET); + } +} diff --git a/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGeneratorOptions.java b/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGeneratorOptions.java index 2545a0a..1e730b8 100644 --- a/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGeneratorOptions.java +++ b/code/generators/src/main/java/dev/inditex/karate/openapi/OpenApiGeneratorOptions.java @@ -8,7 +8,6 @@ import java.util.Set; import java.util.stream.Collectors; -import dev.inditex.karate.openapi.OpenApiGenerator.ANSILogger; import dev.inditex.karate.openapi.data.MavenArtifact; import dev.inditex.karate.openapi.data.MavenUtils; import dev.inditex.karate.openapi.data.OpenApiParser; @@ -320,7 +319,7 @@ protected boolean isOpenApi(final File dir, final String name) { final Map yaml = yamlMapper.readValue(content, new TypeReference>() {}); return yaml.containsKey("openapi"); } catch (final IOException e) { - ANSILogger.warn(String.format("Not an Open Api file %s in folder %s %n Exception [%s]", name, dir, e.getMessage())); + OpenApiGeneratorANSILogger.warn(String.format("Not an Open Api file %s in folder %s %n Exception [%s]", name, dir, e.getMessage())); } } return false; diff --git a/code/generators/src/test/java/dev/inditex/karate/openapi/OpenApiGeneratorANSILoggerTest.java b/code/generators/src/test/java/dev/inditex/karate/openapi/OpenApiGeneratorANSILoggerTest.java new file mode 100644 index 0000000..643dc21 --- /dev/null +++ b/code/generators/src/test/java/dev/inditex/karate/openapi/OpenApiGeneratorANSILoggerTest.java @@ -0,0 +1,85 @@ +package dev.inditex.karate.openapi; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatCode; + +import ch.qos.logback.classic.Level; +import ch.qos.logback.classic.Logger; +import ch.qos.logback.classic.spi.ILoggingEvent; +import ch.qos.logback.core.read.ListAppender; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; +import org.slf4j.LoggerFactory; + +class OpenApiGeneratorANSILoggerTest { + + protected ListAppender logWatcher; + + protected Level defaultLogLevel; + + @BeforeEach + void beforeEach() { + defaultLogLevel = ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).getLevel(); + logWatcher = new ListAppender<>(); + logWatcher.start(); + ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).addAppender(logWatcher); + ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).setLevel(Level.INFO); + } + + @AfterEach + void afterEach() { + ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).detachAppender(logWatcher); + ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).setLevel(defaultLogLevel); + } + + @Nested + class Constructor { + @Test + void when_instance_expect_no_exception() { + assertThatCode(OpenApiGeneratorANSILogger::new).doesNotThrowAnyException(); + } + } + + @Nested + class Info { + @Test + void when_message_expect_delegate_to_logger_with_color() { + final String message = "message"; + OpenApiGeneratorANSILogger.info(message); + + assertThat(logWatcher.list).hasSize(1).extracting("level").containsOnly(Level.INFO); + assertThat(logWatcher.list.get(0).getFormattedMessage()) + .contains(OpenApiGeneratorANSILogger.ANSI_BLUE + "INFO - " + message + OpenApiGeneratorANSILogger.ANSI_RESET); + + } + } + + @Nested + class Warn { + @Test + void when_message_expect_delegate_to_logger_with_color() { + final String message = "message"; + OpenApiGeneratorANSILogger.warn(message); + + assertThat(logWatcher.list).hasSize(1).extracting("level").containsOnly(Level.WARN); + assertThat(logWatcher.list.get(0).getFormattedMessage()) + .contains(OpenApiGeneratorANSILogger.ANSI_YELLOW + "WARN - " + message + OpenApiGeneratorANSILogger.ANSI_RESET); + } + } + + @Nested + class Error { + @Test + void when_message_expect_delegate_to_logger_with_color() { + final String message = "message"; + OpenApiGeneratorANSILogger.error(message); + + assertThat(logWatcher.list).hasSize(1).extracting("level").containsOnly(Level.ERROR); + assertThat(logWatcher.list.get(0).getFormattedMessage()) + .contains(OpenApiGeneratorANSILogger.ANSI_RED + "ERROR - " + message + OpenApiGeneratorANSILogger.ANSI_RESET); + } + } + +} diff --git a/code/generators/src/test/java/dev/inditex/karate/openapi/OpenApiGeneratorTest.java b/code/generators/src/test/java/dev/inditex/karate/openapi/OpenApiGeneratorTest.java index 194327c..c9cce24 100644 --- a/code/generators/src/test/java/dev/inditex/karate/openapi/OpenApiGeneratorTest.java +++ b/code/generators/src/test/java/dev/inditex/karate/openapi/OpenApiGeneratorTest.java @@ -30,6 +30,7 @@ import de.codeshelf.consoleui.prompt.InputResult; import de.codeshelf.consoleui.prompt.ListResult; import de.codeshelf.consoleui.prompt.PromtResultItemIF; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; @@ -47,17 +48,26 @@ public class OpenApiGeneratorTest { protected ListAppender logWatcher; + protected Level defaultLogLevel; + @BeforeEach protected void beforeEach(final TestInfo testInfo) throws IOException { ConsoleCLI.withoutRealTerminal(); + defaultLogLevel = ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).getLevel(); logWatcher = new ListAppender<>(); logWatcher.start(); ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).addAppender(logWatcher); - ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).setLevel(Level.WARN); + ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).setLevel(Level.ERROR); prepareGeneratorFolders(testInfo); generator = new OpenApiGenerator(targetFolder); } + @AfterEach + void afterEach() { + ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).detachAppender(logWatcher); + ((Logger) LoggerFactory.getLogger("OpenApiGenerator")).setLevel(defaultLogLevel); + } + protected void prepareGeneratorFolders(final TestInfo testInfo) throws IOException { final String testName = testInfo.getDisplayName() + "_" + testInfo.getTestMethod().get().getName(); Files.createDirectories(Paths.get("target/tests-karate-openapi-generator")); diff --git a/code/generators/src/test/java/dev/inditex/karate/openapi/data/KarateTest.java b/code/generators/src/test/java/dev/inditex/karate/openapi/data/KarateTest.java index c3a4399..1b36b79 100644 --- a/code/generators/src/test/java/dev/inditex/karate/openapi/data/KarateTest.java +++ b/code/generators/src/test/java/dev/inditex/karate/openapi/data/KarateTest.java @@ -12,6 +12,7 @@ import ch.qos.logback.classic.Logger; import ch.qos.logback.classic.spi.ILoggingEvent; import ch.qos.logback.core.read.ListAppender; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.TestInfo; import org.slf4j.LoggerFactory; @@ -24,8 +25,11 @@ public abstract class KarateTest { protected ListAppender logWatcher; + protected Level defaultLogLevel; + @BeforeEach void beforeEach(final TestInfo testInfo) throws IOException { + defaultLogLevel = ((Logger) LoggerFactory.getLogger("dev.inditex.karate.openapi.data")).getLevel(); logWatcher = new ListAppender<>(); logWatcher.start(); ((Logger) LoggerFactory.getLogger("dev.inditex.karate.openapi.data")).addAppender(logWatcher); @@ -33,6 +37,12 @@ void beforeEach(final TestInfo testInfo) throws IOException { prepareGeneratorFolders(testInfo); } + @AfterEach + void afterEach() { + ((Logger) LoggerFactory.getLogger("dev.inditex.karate.openapi.data")).detachAppender(logWatcher); + ((Logger) LoggerFactory.getLogger("dev.inditex.karate.openapi.data")).setLevel(defaultLogLevel); + } + private void prepareGeneratorFolders(final TestInfo testInfo) throws IOException { final String testName = testInfo.getDisplayName() + "_" + testInfo.getTestMethod().get().getName(); Files.createDirectories(Paths.get("target/tests-karate-openapi-generator")); diff --git a/code/runner/src/test/java/dev/inditex/karate/AbstractKarateTest.java b/code/runner/src/test/java/dev/inditex/karate/AbstractKarateTest.java index 73b066d..eb87c41 100644 --- a/code/runner/src/test/java/dev/inditex/karate/AbstractKarateTest.java +++ b/code/runner/src/test/java/dev/inditex/karate/AbstractKarateTest.java @@ -23,6 +23,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.intuit.karate.Constants; import com.intuit.karate.Results; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.TestInfo; import org.slf4j.LoggerFactory; @@ -41,8 +42,14 @@ public abstract class AbstractKarateTest { protected ListAppender logWatcher; + protected Level defaultLogLevelIntuitKarate; + + protected Level defaultLogLevelKarateTools; + @BeforeEach protected void beforeEach(final TestInfo testInfo) throws IOException { + defaultLogLevelIntuitKarate = ((Logger) LoggerFactory.getLogger("com.intuit.karate")).getLevel(); + defaultLogLevelKarateTools = ((Logger) LoggerFactory.getLogger("dev.inditex.karate")).getLevel(); logWatcher = new ListAppender<>(); logWatcher.start(); ((Logger) LoggerFactory.getLogger("com.intuit.karate")).addAppender(logWatcher); @@ -54,6 +61,14 @@ protected void beforeEach(final TestInfo testInfo) throws IOException { setRamdomPortForKarateMockServer(); } + @AfterEach + protected void afterEach() { + ((Logger) LoggerFactory.getLogger("com.intuit.karate")).detachAppender(logWatcher); + ((Logger) LoggerFactory.getLogger("com.intuit.karate")).setLevel(defaultLogLevelIntuitKarate); + ((Logger) LoggerFactory.getLogger("dev.inditex.karate")).detachAppender(logWatcher); + ((Logger) LoggerFactory.getLogger("dev.inditex.karate")).setLevel(defaultLogLevelKarateTools); + } + protected void clearKarateSystemProperties() { System.clearProperty(Constants.KARATE_ENV); System.clearProperty(Constants.KARATE_CONFIG_DIR); diff --git a/code/runner/src/test/java/dev/inditex/karate/results/KarateReportsGeneratorIT.java b/code/runner/src/test/java/dev/inditex/karate/results/KarateReportsGeneratorIT.java index 0eba5af..545133d 100644 --- a/code/runner/src/test/java/dev/inditex/karate/results/KarateReportsGeneratorIT.java +++ b/code/runner/src/test/java/dev/inditex/karate/results/KarateReportsGeneratorIT.java @@ -9,6 +9,7 @@ import dev.inditex.karate.AbstractKarateTest; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.FileUtils; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Nested; @@ -16,12 +17,19 @@ import org.junit.jupiter.api.Test; @Tag("IT") +@Slf4j public class KarateReportsGeneratorIT extends AbstractKarateTest { + @Override @AfterEach - protected void afterEach() throws IOException { + protected void afterEach() { + super.afterEach(); // Clean test surefire reports folder so they are not counted in general reports - FileUtils.deleteDirectory(new File(surefireReportsFolder)); + try { + FileUtils.deleteDirectory(new File(surefireReportsFolder)); + } catch (final IOException e) { + log.error("Error deleting surefire reports folder", e); + } } @Nested diff --git a/code/runner/src/test/java/dev/inditex/karate/results/KarateReportsGeneratorTest.java b/code/runner/src/test/java/dev/inditex/karate/results/KarateReportsGeneratorTest.java index df11059..83d4b43 100644 --- a/code/runner/src/test/java/dev/inditex/karate/results/KarateReportsGeneratorTest.java +++ b/code/runner/src/test/java/dev/inditex/karate/results/KarateReportsGeneratorTest.java @@ -24,18 +24,25 @@ import com.intuit.karate.Runner; import com.intuit.karate.Suite; import com.intuit.karate.core.FeatureResult; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.FileUtils; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import org.mockito.MockedStatic; +@Slf4j public class KarateReportsGeneratorTest extends AbstractKarateTest { + @Override @AfterEach - protected void afterEach() throws IOException { + protected void afterEach() { // Clean test surefire reports folder so they are not counted in general reports - FileUtils.deleteDirectory(new File(surefireReportsFolder)); + try { + FileUtils.deleteDirectory(new File(surefireReportsFolder)); + } catch (final IOException e) { + log.error("Error deleting surefire reports folder", e); + } } @Nested