From 8edb730a54790dd30956ce9559768a55ca9f49d7 Mon Sep 17 00:00:00 2001 From: Gero Lueckemeyer <gero.lueckemeyer@hft-stuttgart.de> Date: Wed, 11 Oct 2023 17:43:33 +0200 Subject: [PATCH] fixed pattern matching for path removal in not compilable result --- src/main/java/de/hftstuttgart/dtt/Testrunner.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/main/java/de/hftstuttgart/dtt/Testrunner.java b/src/main/java/de/hftstuttgart/dtt/Testrunner.java index 7e3ddcb..d0cc862 100644 --- a/src/main/java/de/hftstuttgart/dtt/Testrunner.java +++ b/src/main/java/de/hftstuttgart/dtt/Testrunner.java @@ -163,9 +163,11 @@ public class Testrunner options.add("-d"); // output dir options.add(outputDir.getAbsolutePath()); options.add("-cp"); // custom classpath + String os=System.getProperty("os.name"); + final String osSpecificCpDelim=(os.indexOf("Windows")>-1?";":":"); String cp = buildClassPath(classPathItems).stream() .map(f -> f.getPath()) - .reduce((s1, s2) -> s1 + ":" + s2).orElse(""); + .reduce((s1, s2) -> s1 + osSpecificCpDelim + s2).orElse(""); LOG.info("classpath for compilation: " + cp); options.add(cp); @@ -213,10 +215,12 @@ public class Testrunner return compilationErrors.stream().map(e -> { Result result = new Result(); - Pattern pattern = Pattern.compile(String.format("^.*%s(.*\\.java).*$", File.separator)); - Matcher matcher = pattern.matcher(String.valueOf(e.getSource())); - - result.name = (matcher.matches() && matcher.group(1) != null) ? matcher.group(1) : String.valueOf(e.getSource()); +// Pattern pattern = Pattern.compile(String.format("^.*%s(.*\\.java).*$", File.separator)); +// Matcher matcher = pattern.matcher(String.valueOf(e.getSource())); +// +// result.name = (matcher.matches() && matcher.group(1) != null) ? matcher.group(1) : String.valueOf(e.getSource()); + String sourcePath=String.valueOf(e.getSource()); + result.name=sourcePath.substring(sourcePath.lastIndexOf(File.separator)+1, sourcePath.length()-1); result.state = Result.State.COMPILATIONERROR.ordinal(); result.failureReason = e.getMessage(Locale.ENGLISH); result.failureType = "Compilation Failed"; -- GitLab