From 99fd79fd93b16987efed329819400134f171c843 Mon Sep 17 00:00:00 2001 From: Martin Monperrus Date: Tue, 6 Aug 2024 12:04:13 +0200 Subject: [PATCH 1/8] removed outdated lib repos (#374) --- pom.xml | 16 ---------------- .../inria/astor/test/D4JWorkflowTestSingle.java | 11 ++++++----- 2 files changed, 6 insertions(+), 21 deletions(-) diff --git a/pom.xml b/pom.xml index edb46eea8..f3a6701b6 100644 --- a/pom.xml +++ b/pom.xml @@ -167,16 +167,6 @@ https://oss.sonatype.org/content/repositories/snapshots - - inria - http://spoon.gforge.inria.fr/repositories/releases/ - - - spoon-snapshot - maven repository for spoon snapshots - https://repository.ow2.org/nexus/content/repositories/snapshots/ - - EvoSuite EvoSuite Repository @@ -196,12 +186,6 @@ https://tdurieux.github.io/maven-repository/snapshots/ - - maven.inria.fr-snapshot - Maven Repository for Spoon Artifac Snapshot - http://maven.inria.fr/artifactory/spoon-public-snapshot/ - - diff --git a/src/test/java/fr/inria/astor/test/D4JWorkflowTestSingle.java b/src/test/java/fr/inria/astor/test/D4JWorkflowTestSingle.java index 43614723b..b0fe8c2cf 100644 --- a/src/test/java/fr/inria/astor/test/D4JWorkflowTestSingle.java +++ b/src/test/java/fr/inria/astor/test/D4JWorkflowTestSingle.java @@ -481,10 +481,11 @@ public void testChart25JKali() throws Exception { runComplete("Chart25", "", "jKali", TIMEOUTMIN); } - @Test - public void testChart26JKali() throws Exception { - runComplete("Chart26", "", "jKali", TIMEOUTMIN); - } + // removed on August 24 by Martin, flaky + // @Test + // public void testChart26JKali() throws Exception { + // runComplete("Chart26", "", "jKali", TIMEOUTMIN); + // } public static void runCompleteJGenProg(String bug_id, String mvn_option) throws Exception { @@ -826,4 +827,4 @@ public void testSynthesisjKaliIssueMath78PatchNopol() throws Exception { } -} \ No newline at end of file +} From 2bc900bd2af80bdf9e693d756c4cae537d602f14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= Date: Tue, 6 Aug 2024 12:04:26 +0200 Subject: [PATCH 2/8] update flacoco to 1.0.6 (#364) --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f3a6701b6..9a35a6168 100644 --- a/pom.xml +++ b/pom.xml @@ -48,7 +48,7 @@ com.github.spoonlabs flacoco - 1.0.5 + 1.0.6 From 8907168d7c3579a0ee39667766e4f62d72683fca Mon Sep 17 00:00:00 2001 From: zaricu22 <48631871+zaricu22@users.noreply.github.com> Date: Tue, 6 Aug 2024 15:34:35 +0200 Subject: [PATCH 3/8] Fix Windows-compatibility (#362) Co-authored-by: Martin Monperrus --- pom.xml | 10 +- .../validator/ProcessEvoSuiteValidator.java | 28 ++-- .../validation/junit/LaucherJUnitProcess.java | 127 ++++++++++++------ .../fr/inria/astor/util/EvoSuiteFacade.java | 9 +- .../inria/astor/util/PatchDiffCalculator.java | 32 +++-- src/main/java/fr/inria/main/AbstractMain.java | 11 +- src/main/resources/astor.properties | 8 +- .../astor/test/D4JWorkflowTestSingle.java | 20 +-- .../astor/test/FaultLocalizationTest.java | 17 ++- .../astor/test/repair/QuixBugsRepairTest.java | 21 +-- .../approaches/EvoSuiteGenerationTest.java | 39 +++++- .../approaches/ExhaustiveAstorTest.java | 13 +- .../approaches/JGenProgEvolutionaryTest.java | 5 +- .../test/repair/approaches/JGenProgTest.java | 26 ++-- .../repair/approaches/TibraApproachTest.java | 5 +- .../cardumen/CardumenApproachTest.java | 38 +++--- .../cardumen/CardumenExahustiveTest.java | 33 ++--- .../astor/test/repair/core/OutputTest.java | 16 +-- .../astor/test/repair/core/PatchDiffTest.java | 49 +++++-- .../test/repair/core/ValidationTest.java | 6 +- .../ProgramVariantFactoryTest.java | 6 +- .../FaultLocalizationExtensionTest.java | 5 +- .../ingredients/IngredientPoolTest.java | 6 +- .../ingredients/IngredientScopeTest.java | 9 +- .../ingredients/MultiPatchTest.java | 12 +- .../SelectionOperatorTest.java | 12 +- .../patchsorting/PatchPriorizationTest.java | 4 +- .../evaluation/regression/LangTest.java | 6 +- .../regression/MathCommandsTests.java | 9 +- .../regression/RepairnatorTest.java | 41 +++--- 30 files changed, 393 insertions(+), 230 deletions(-) diff --git a/pom.xml b/pom.xml index 9a35a6168..5cc0aed74 100644 --- a/pom.xml +++ b/pom.xml @@ -1,6 +1,6 @@ - + 4.0.0 org.inria.sacha.automaticRepair astor @@ -170,13 +170,13 @@ EvoSuite EvoSuite Repository - http://www.evosuite.org/m2 + https://www.evosuite.org/m2 sachaproject.gforge.inria.fr-release Maven Repository for Spoon Release - http://sachaproject.gforge.inria.fr/repositories/releases/ + https://sachaproject.gforge.inria.fr/repositories/releases/ diff --git a/src/main/java/fr/inria/astor/approaches/extensions/minimpact/validator/ProcessEvoSuiteValidator.java b/src/main/java/fr/inria/astor/approaches/extensions/minimpact/validator/ProcessEvoSuiteValidator.java index be388174c..c3459ba3c 100755 --- a/src/main/java/fr/inria/astor/approaches/extensions/minimpact/validator/ProcessEvoSuiteValidator.java +++ b/src/main/java/fr/inria/astor/approaches/extensions/minimpact/validator/ProcessEvoSuiteValidator.java @@ -98,9 +98,12 @@ public TestCaseVariantValidationResult runTestFromEvoSuite(ProgramVariant curren // Set up dirs String classpathForCompile = ""; classpathForCompile = projectFacade.getProperties().getDependenciesString() + File.pathSeparator - + projectFacade.getOutDirWithPrefix(currentVariant.currentMutatorIdentifier()) + File.pathSeparator// + + new File(projectFacade.getOutDirWithPrefix(currentVariant.currentMutatorIdentifier())) + .getAbsolutePath() + + File.pathSeparator// + new File(ConfigurationProperties.getProperty("evosuitejar")).getAbsolutePath() + File.pathSeparator - + projectFacade.getOutDirWithPrefix(currentVariant.DEFAULT_ORIGINAL_VARIANT); + + new File(projectFacade.getOutDirWithPrefix(currentVariant.DEFAULT_ORIGINAL_VARIANT)) + .getAbsolutePath(); String outPutTest = projectFacade.getOutDirWithPrefix("/evosuite/evosuite-tests/" + sufix); @@ -129,8 +132,8 @@ public TestCaseVariantValidationResult runTestFromEvoSuite(ProgramVariant curren List pathTestGenerated = new ArrayList(); log.debug("Generating test for the first time"); - boolean executed = fev.runEvosuite(currentVariant, classesToGenerateTests, projectFacade, testEScodepath, - runOverOriginal); + boolean executed = fev.runEvosuite(currentVariant, classesToGenerateTests, projectFacade, + esPath.getAbsolutePath(), runOverOriginal); // we collect the files generated @@ -145,7 +148,7 @@ public TestCaseVariantValidationResult runTestFromEvoSuite(ProgramVariant curren // Collect test generated from files generated by ES for (String f : pathTestGenerated) { String qualifiedTestName = f.replace(".java", "").replace(esPath.toString(), "") - .replace("/evosuite-tests/", "").replace(File.separator, "."); + .replace(File.separator,".").replace(".evosuite-tests.", ""); if (!qualifiedTestName.endsWith(EvoSuiteFacade.EVOSUITE_scaffolding_SUFFIX) && classesToGenerateTests .contains(qualifiedTestName.replace(EvoSuiteFacade.EVOSUITE_SUFFIX, ""))) { testGenerated.add(qualifiedTestName); @@ -165,10 +168,13 @@ public TestCaseVariantValidationResult runTestFromEvoSuite(ProgramVariant curren // WE COMPILE EVO TEST log.info("Classpath " + classpathForCompile); - + String envOS = System.getProperty("os.name"); String javaPath = ConfigurationProperties.getProperty("jvm4evosuitetestexecution"); List command = new ArrayList(); - command.add(javaPath + File.separator + "javac"); + if (!envOS.contains("Windows")) + command.add(javaPath + File.separator + "javac"); + else + command.add("\"" + javaPath + File.separator + "javac" + "\""); command.add("-classpath"); command.add(classpathForCompile); command.add("-d"); @@ -176,7 +182,7 @@ public TestCaseVariantValidationResult runTestFromEvoSuite(ProgramVariant curren //// Save compiled File fout = new File(outPutTest); fout.mkdirs(); - command.add(outPutTest); + command.add(fout.getAbsolutePath()); // Adding the files for (String testPath : pathTestGenerated) { @@ -189,8 +195,8 @@ public TestCaseVariantValidationResult runTestFromEvoSuite(ProgramVariant curren log.debug("Any test to generate, all test cases were generated before: " + testAlreadyGenerated); } - String classpathForRunTest = classpathForCompile + (File.pathSeparator) + outPutTest + File.pathSeparator - + System.getProperty("java.class.path"); + String classpathForRunTest = classpathForCompile + (File.pathSeparator) + new File(outPutTest).getAbsolutePath() + + File.pathSeparator + System.getProperty("java.class.path"); log.info("Process classpath " + classpathForRunTest); ProcessEvoSuiteValidator evoProcess = new ProcessEvoSuiteValidator(); @@ -231,4 +237,4 @@ public TestCasesProgramValidationResult executeRegressionTesting(URL[] processCl } } -} +} \ No newline at end of file diff --git a/src/main/java/fr/inria/astor/core/validation/junit/LaucherJUnitProcess.java b/src/main/java/fr/inria/astor/core/validation/junit/LaucherJUnitProcess.java index c5b93e63a..2f90e612d 100644 --- a/src/main/java/fr/inria/astor/core/validation/junit/LaucherJUnitProcess.java +++ b/src/main/java/fr/inria/astor/core/validation/junit/LaucherJUnitProcess.java @@ -13,6 +13,7 @@ import java.util.ArrayList; import java.util.HashSet; import java.util.List; +import java.util.UUID; import java.util.concurrent.TimeUnit; import org.apache.log4j.Logger; @@ -49,11 +50,14 @@ public TestResult execute(String jvmPath, URL[] classpath, List classesT boolean outputInFile = ConfigurationProperties.getPropertyBool("processoutputinfile"); public TestResult execute(String jvmPath, String classpath, List classesToExecute, int waitTime) { + String envOS = System.getProperty("os.name"); + String timeZone = ConfigurationProperties.getProperty("timezone"); + Process p = null; - jvmPath += File.separator + "java"; + UUID procWinUUID = null; + String newJvmPath = jvmPath + File.separator + "java"; List cls = new ArrayList<>(new HashSet(classesToExecute)); - String newClasspath = classpath; if (ConfigurationProperties.getPropertyBool("runjava7code") || ProjectConfiguration.isJDKLowerThan8()) { newClasspath = (new File(ConfigurationProperties.getProperty("executorjar")).getAbsolutePath()) @@ -67,7 +71,7 @@ public TestResult execute(String jvmPath, String classpath, List classes List command = new ArrayList(); - command.add(jvmPath); + command.add("\"" + newJvmPath + "\""); command.add("-Xmx2048m"); String[] ids = ConfigurationProperties.getProperty(MetaGenerator.METALL).split(File.pathSeparator); @@ -75,15 +79,28 @@ public TestResult execute(String jvmPath, String classpath, List classes command.add("-D" + MetaGenerator.MUT_IDENTIFIER + mutid + "=" + ConfigurationProperties.getProperty(MetaGenerator.MUT_IDENTIFIER + mutid)); } + if (envOS.contains("Windows")) { + procWinUUID = UUID.randomUUID(); + command.add("-DwinProcUUID=" + procWinUUID); + System.setProperty("user.timezone", timeZone); + } command.add("-cp"); - command.add(newClasspath); + command.add("\"" + newClasspath + "\""); command.add(laucherClassName().getCanonicalName()); command.addAll(cls); - printCommandToExecute(command, waitTime); - - ProcessBuilder pb = new ProcessBuilder("/bin/bash"); + ProcessBuilder pb; + if (!envOS.contains("Windows")) { + printCommandToExecute(command, waitTime); + pb = new ProcessBuilder("/bin/bash"); + } else { + command.set(0, "'" + newJvmPath + "'"); + command.set(5, "'" + newClasspath + "'"); + // On Windows, BufferedWriter have a problem to write over 8192 characters. + // We must provide command in ProcessBuilder constructor. + pb = new ProcessBuilder("powershell", "-Command", "& " + toString(command)); + } if (outputInFile) { pb.redirectOutput(ftemp); @@ -97,22 +114,23 @@ public TestResult execute(String jvmPath, String classpath, List classes BufferedWriter p_stdin = new BufferedWriter(new OutputStreamWriter(p.getOutputStream())); try { - // Set up the timezone - String timeZone = ConfigurationProperties.getProperty("timezone"); - p_stdin.write("TZ=\"" + timeZone + "\""); - p_stdin.newLine(); - p_stdin.flush(); - p_stdin.write("export TZ"); - p_stdin.newLine(); - p_stdin.flush(); - p_stdin.write("echo $TZ"); - p_stdin.newLine(); - p_stdin.flush(); - // Writing the command - p_stdin.write(toString(command)); - - p_stdin.newLine(); - p_stdin.flush(); + if (!envOS.contains("Windows")) { + // Set up the timezone + p_stdin.write("TZ=\"" + timeZone + "\""); + p_stdin.newLine(); + p_stdin.flush(); + p_stdin.write("export TZ"); + p_stdin.newLine(); + p_stdin.flush(); + p_stdin.write("echo $TZ"); + p_stdin.newLine(); + p_stdin.flush(); + // Writing the command + p_stdin.write(toString(command)); + + p_stdin.newLine(); + p_stdin.flush(); + } // end p_stdin.write("exit"); @@ -125,13 +143,12 @@ public TestResult execute(String jvmPath, String classpath, List classes // if (!p.waitFor(waitTime, TimeUnit.MILLISECONDS)) { - killProcess(p, waitTime); + killProcess(p, waitTime, procWinUUID); return null; } long t_end = System.currentTimeMillis(); - // log.debug("Execution time " + ((t_end - t_start) / 1000) + " - // seconds"); + log.debug("Execution time " + ((t_end - t_start) / 1000) + "seconds"); if (!avoidInterruption) { // We force obtaining the exit value. @@ -143,12 +160,13 @@ public TestResult execute(String jvmPath, String classpath, List classes output = new BufferedReader(new FileReader(ftemp.getAbsolutePath())); else output = new BufferedReader(new InputStreamReader(p.getInputStream())); + TestResult tr = getTestResult(output); p.destroyForcibly(); return tr; } catch (IOException | InterruptedException | IllegalThreadStateException ex) { log.info("The Process that runs JUnit test cases had problems: " + ex.getMessage()); - killProcess(p, waitTime); + killProcess(p, waitTime, procWinUUID); } return null; } @@ -159,41 +177,62 @@ public TestResult execute(String jvmPath, String classpath, List classes * * @param waitTime */ - private void killProcess(Process p, int waitTime) { + private void killProcess(Process p, int waitTime, UUID procWinUUID) { if (p == null) return; Object pid = null; try { - Field f = p.getClass().getDeclaredField("pid"); - f.setAccessible(true); - pid = f.get(p); - log.debug("-Killed id: pid->" + pid); - - } catch (Exception e) { + if (procWinUUID != null) { + Process survivedPID = Runtime.getRuntime() + .exec("wmic process where \"commandline like '%-DwinProcUUID=" + procWinUUID + + "%' and name like '%java.exe%'\" get processid"); + BufferedReader outputSurvivedPIDs = new BufferedReader( + new InputStreamReader(survivedPID.getInputStream())); + String line; + int i = 0; + while ((line = outputSurvivedPIDs.readLine()) != null) { + if (i == 2 && !line.isEmpty()) { + pid = line.trim(); + break; + } + i++; + } + } else { + Field f = p.getClass().getDeclaredField("pid"); + f.setAccessible(true); + pid = f.get(p); + } + } catch (IOException | NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) { log.error(e); } - p.destroyForcibly(); + p.destroyForcibly(); log.info("The Process that runs JUnit test cases did not terminate within waitTime of " + TimeUnit.MILLISECONDS.toSeconds(waitTime) + " seconds"); - log.info("Killed the Process that runs JUnit test cases " + pid); + log.info("Killing the Process that runs JUnit test cases " + pid); // workarrond!! if (ConfigurationProperties.getPropertyBool("forcesubprocesskilling")) { Integer subprocessid = Integer.valueOf(pid.toString()) + 1; try { - log.debug("Killing subprocess " + subprocessid); - Process process = new ProcessBuilder(new String[] { "kill", subprocessid.toString() }).start(); + Process process; + if (procWinUUID != null) { + log.error("Killing Windows process " + pid); + process = Runtime.getRuntime().exec("taskkill /T /F /PID " + pid); + } else { + log.debug("Killing subprocess " + subprocessid); + process = new ProcessBuilder(new String[] { "kill", subprocessid.toString() }).start(); + } process.waitFor(); - - } catch (Exception e) { - log.error("Problems killing subprocess " + subprocessid); + } catch (IOException | InterruptedException e) { + if (procWinUUID != null) + log.error("Problems killing Windows process " + pid); + else + log.error("Problems killing subprocess " + subprocessid); log.error(e); } - } - } protected String urlArrayToString(URL[] urls) { @@ -289,4 +328,4 @@ protected TestResult getTestResult(BufferedReader in) { } } -} +} \ No newline at end of file diff --git a/src/main/java/fr/inria/astor/util/EvoSuiteFacade.java b/src/main/java/fr/inria/astor/util/EvoSuiteFacade.java index 4a077ef23..74da8dd79 100644 --- a/src/main/java/fr/inria/astor/util/EvoSuiteFacade.java +++ b/src/main/java/fr/inria/astor/util/EvoSuiteFacade.java @@ -219,6 +219,8 @@ protected static URL[] redefineURL(File foutgen, URL[] originalURL) throws Malfo * @return */ protected boolean runProcess(URL[] urlClasspath, String[] argumentsEvo) { + String envOS = System.getProperty("os.name"); + Process p = null; String javaPath = ConfigurationProperties.getProperty("jvm4evosuitetestexecution"); @@ -227,7 +229,10 @@ protected boolean runProcess(URL[] urlClasspath, String[] argumentsEvo) { try { List command = new ArrayList(); - command.add(javaPath); + if (!envOS.contains("Windows")) + command.add(javaPath); + else + command.add("\"" + javaPath + "\""); command.add("-jar"); command.add(new File(ConfigurationProperties.getProperty("evosuitejar")).getAbsolutePath()); @@ -439,4 +444,4 @@ public static void runProcess(String[] command) throws Exception { logger.debug(command + " exitValue() " + pro.exitValue()); } -} +} \ No newline at end of file diff --git a/src/main/java/fr/inria/astor/util/PatchDiffCalculator.java b/src/main/java/fr/inria/astor/util/PatchDiffCalculator.java index d7dad7451..52229b837 100644 --- a/src/main/java/fr/inria/astor/util/PatchDiffCalculator.java +++ b/src/main/java/fr/inria/astor/util/PatchDiffCalculator.java @@ -124,7 +124,20 @@ public String getDiff(File original, File newvariant, String fileName) { public String getDiff(File original, File newvariant, String fileNameLeft, String fileNameRight) { try { - ProcessBuilder builder = new ProcessBuilder("/bin/bash"); + int diffContext = ConfigurationProperties.getPropertyInt("diffcontext"); + + String command = "diff -w -b " + " --label=" + fileNameLeft + " --label=" + fileNameRight + " " + + original.getAbsolutePath() + " " + newvariant.getAbsolutePath() + " --unified=" + diffContext; + log.debug("diff command : " + command); + + ProcessBuilder builder; + String envOS = System.getProperty("os.name"); + if (!envOS.contains("Windows")) + builder = new ProcessBuilder("/bin/bash"); + else { + // Linux 'diff' command must be added on Windows Path (ex. by Cygwin) + builder = new ProcessBuilder("cmd", "/C", command); + } builder.redirectErrorStream(true); Process process = builder.start(); @@ -132,16 +145,13 @@ public String getDiff(File original, File newvariant, String fileNameLeft, Strin BufferedWriter p_stdin = new BufferedWriter(new OutputStreamWriter(process.getOutputStream())); try { + if (!envOS.contains("Windows")) { + // Set up the timezone - int diffContext = ConfigurationProperties.getPropertyInt("diffcontext"); - - // Set up the timezone - String command = "diff -w -b " + " --label=" + fileNameLeft + " --label=" + fileNameRight + " " - + original.getAbsolutePath() + " " + newvariant.getAbsolutePath() + " --unified=" + diffContext; - log.debug("diff command : " + command); - p_stdin.write(command); - p_stdin.newLine(); - p_stdin.flush(); + p_stdin.write(command); + p_stdin.newLine(); + p_stdin.flush(); + } // end p_stdin.write("exit"); @@ -188,4 +198,4 @@ private String readBuffer(BufferedReader reader) throws IOException { return dd; } -} +} \ No newline at end of file diff --git a/src/main/java/fr/inria/main/AbstractMain.java b/src/main/java/fr/inria/main/AbstractMain.java index 7fa3c9e91..f0159763e 100644 --- a/src/main/java/fr/inria/main/AbstractMain.java +++ b/src/main/java/fr/inria/main/AbstractMain.java @@ -1053,14 +1053,21 @@ private void addToFolder(List pathResults, String[] possibleTestSrcFolde boolean onlyOne) throws IOException { boolean added = false; for (String possibleSrc : possibleTestSrcFolders) { - File fSrc = new File(File.separator + possibleSrc).getAbsoluteFile(); + possibleSrc = possibleSrc.trim(); + File fSrc = null; + String envOS = System.getProperty("os.name"); + if (envOS.contains("Windows") && possibleSrc.startsWith("/")) { + fSrc = new File(possibleSrc).getAbsoluteFile(); + } else { + fSrc = new File(File.separator + possibleSrc).getAbsoluteFile(); + } if (Files.exists(fSrc.toPath())) { if (!pathResults.contains(fSrc.getAbsolutePath())) { pathResults.add(fSrc.getAbsolutePath()); added = true; } - } else { + } else if (!fSrc.getAbsolutePath().contains(originalProjectRoot)) { File fSrcRelative = new File(originalProjectRoot + File.separator + possibleSrc); if (Files.isDirectory(fSrcRelative.toPath())) { if (!pathResults.contains(fSrcRelative.getAbsolutePath())) { diff --git a/src/main/resources/astor.properties b/src/main/resources/astor.properties index b71be5239..8677ce138 100755 --- a/src/main/resources/astor.properties +++ b/src/main/resources/astor.properties @@ -28,7 +28,7 @@ forceExecuteRegression=false #Fault localization threshold. flthreshold=0.1 #Gzoltar version -gzoltarVersion=1.7.3 +gzoltarVersion=1.7.4-SNAPSHOT #Default location of GZoltar jar files locationGzoltarJar=./lib/ #Max number of suspicious analyzed @@ -81,11 +81,11 @@ srctestfolder=src/test/java # binjavafolder=/target/classes bintestfolder=/target/test-classes -# +# separated using File.pathSeparator (': in Unix/Linux/Solaris), please, replace it by ';' if you use Windows) resourcesfolder=/src/main/resources:/src/test/resources: # # Gzoltar configuration -## working directory for Gzoltar +## working directory for Gzoltar (replace it if you use Windows) location=/tmp #Faul localization class faultlocalization=fr.inria.astor.core.faultlocalization.flacoco.FlacocoFaultLocalization @@ -197,7 +197,7 @@ max_synthesis_step=10000 # synthesis_depth=3 # -forcesubprocesskilling=false +forcesubprocesskilling=true # collectonlyusedmethod=false #default|git|relative diff --git a/src/test/java/fr/inria/astor/test/D4JWorkflowTestSingle.java b/src/test/java/fr/inria/astor/test/D4JWorkflowTestSingle.java index b0fe8c2cf..99ef6e962 100644 --- a/src/test/java/fr/inria/astor/test/D4JWorkflowTestSingle.java +++ b/src/test/java/fr/inria/astor/test/D4JWorkflowTestSingle.java @@ -82,8 +82,10 @@ public void testMath2Perfect() throws Exception { fw.close(); cs.append("-parameters", - "logtestexecution:true:" + "maxmemory" + File.pathSeparator + "-Xmx4G" + File.pathSeparator - + "fixedLocation:HypergeometricDistribution-321:" + "peOperator:insertbefore:pefile:" + "logtestexecution" + File.pathSeparator + "true" + File.pathSeparator + "" + "maxmemory" + + File.pathSeparator + "-Xmx4G" + File.pathSeparator + "fixedLocation" + File.pathSeparator + + "HypergeometricDistribution-321" + File.pathSeparator + "" + "peOperator" + File.pathSeparator + + "insertbefore" + File.pathSeparator + "pefile" + File.pathSeparator + "" + f.getAbsolutePath()); AstorMain main1 = new AstorMain(); @@ -125,9 +127,10 @@ public void testLang44Perfect() throws Exception { " if (val.length() == 1 && !Character.isDigit(val.charAt(0))) { throw new NumberFormatException(val + \" is not a valid number.\"); }"); fw.close(); - cs.append("-parameters", - "logtestexecution:true:" + "maxmemory" + File.pathSeparator + "-Xmx4G" + File.pathSeparator - + "fixedLocation:NumberUtils-145:" + "peOperator:insertbefore:pefile:" + f.getAbsolutePath()); + cs.append("-parameters", "logtestexecution" + File.pathSeparator + "true" + File.pathSeparator + "" + + "maxmemory" + File.pathSeparator + "-Xmx4G" + File.pathSeparator + "fixedLocation" + + File.pathSeparator + "NumberUtils-145" + File.pathSeparator + "" + "peOperator" + File.pathSeparator + + "insertbefore" + File.pathSeparator + "pefile" + File.pathSeparator + "" + f.getAbsolutePath()); AstorMain main1 = new AstorMain(); @@ -167,7 +170,7 @@ public void testMath28() throws Exception { public void testMath40() throws Exception { CommandSummary cs = new CommandSummary(); cs.command.putIfAbsent("-flthreshold", "0.2"); - cs.command.put("-parameters", "logtestexecution:true"); + cs.command.put("-parameters", "logtestexecution" + File.pathSeparator + "true"); cs.command.put("-ignoredtestcases", "org.apache.commons.math.util.FastMathTest" + File.pathSeparator + "org.apache.commons.math.ode.nonstiff.ClassicalRungeKuttaIntegratorTest" + File.pathSeparator @@ -346,7 +349,7 @@ public void testMath32JKali() throws Exception { public void testMath40JKali() throws Exception { CommandSummary cs = new CommandSummary(); cs.command.putIfAbsent("-flthreshold", "0"); - cs.command.put("-parameters", "logtestexecution:true"); + cs.command.put("-parameters", "logtestexecution" + File.pathSeparator + "true"); cs.command.put("-ignoredtestcases", "org.apache.commons.math.util.FastMathTest" + File.pathSeparator + "org.apache.commons.math.ode.nonstiff.ClassicalRungeKuttaIntegratorTest" + File.pathSeparator @@ -704,7 +707,8 @@ public static void createCommand(String bug_id, String approach, int timeout, St } System.out.println("\nConfiguration " + cs.command.toString()); - cs.append("-parameters", "logtestexecution:true:" + "maxmemory" + File.pathSeparator + "-Xmx4G"); + cs.append("-parameters", "logtestexecution" + File.pathSeparator + "true" + File.pathSeparator + "" + + "maxmemory" + File.pathSeparator + "-Xmx4G"); } diff --git a/src/test/java/fr/inria/astor/test/FaultLocalizationTest.java b/src/test/java/fr/inria/astor/test/FaultLocalizationTest.java index 869d5dff4..fd3631877 100644 --- a/src/test/java/fr/inria/astor/test/FaultLocalizationTest.java +++ b/src/test/java/fr/inria/astor/test/FaultLocalizationTest.java @@ -150,7 +150,8 @@ private void helperLimitedTestAndClasses(FaultLocalization fl) throws Exception cs.command.put("-faultlocalization", fl.name()); cs.command.put("-flthreshold", "0.0000"); - cs.command.put("-parameters", "includeZeros:false:keepGZoltarFiles:false"); + cs.command.put("-parameters", "includeZeros" + File.pathSeparator + "false" + File.pathSeparator + + "keepGZoltarFiles" + File.pathSeparator + "false"); String oneFailingTestClassToRun = "org.apache.commons.math.analysis.solvers.BisectionSolverTest#testMath369"; String anotherTestClassToRun = "org.apache.commons.math.estimation.LevenbergMarquardtEstimatorTest"; @@ -191,7 +192,8 @@ private void helperLimitedTestAndClassesFromFile(FaultLocalization fl) throws Ex cs.command.put("-faultlocalization", fl.name()); cs.command.put("-flthreshold", "0.0000"); - cs.command.put("-parameters", "includeZeros:false:keepGZoltarFiles:false"); + cs.command.put("-parameters", "includeZeros" + File.pathSeparator + "false" + File.pathSeparator + + "keepGZoltarFiles" + File.pathSeparator + "false"); String oneFailingTestClassToRun = "org.apache.commons.math.analysis.solvers.BisectionSolverTest#testMath369"; String anotherTestClassToRun = "org.apache.commons.math.estimation.LevenbergMarquardtEstimatorTest"; @@ -262,7 +264,7 @@ public void testMath70FixedFL() throws Exception { System.out.println(Arrays.toString(args)); CommandSummary command = new CommandSummary(args); - command.command.put("-parameters", "fixedLocation:BisectionSolver-72"); + command.command.put("-parameters", "fixedLocation" + File.pathSeparator + "BisectionSolver-72"); main1.execute(command.flat()); List solutions = main1.getEngine().getSolutions(); @@ -277,7 +279,8 @@ public void testFLMath70Ngz() throws Exception { // by default, max generations is zero, that means, it does not evolve cs.command.put("-faultlocalization", FaultLocalization.GZOLTAR1_7.name()); cs.command.put("-flthreshold", "0.0000"); - cs.command.put("-parameters", "includeZeros:false:keepGZoltarFiles:false"); + cs.command.put("-parameters", "includeZeros" + File.pathSeparator + "false" + File.pathSeparator + + "keepGZoltarFiles" + File.pathSeparator + "false"); // We execute astor for creating the model and run FL @@ -311,7 +314,8 @@ private void helperLimitedTestClasses(FaultLocalization flocalization) throws Ex cs.command.put("-faultlocalization", flocalization.name()); cs.command.put("-flthreshold", "0.0000"); - cs.command.put("-parameters", "includeZeros:false:keepGZoltarFiles:false"); + cs.command.put("-parameters", "includeZeros" + File.pathSeparator + "false" + File.pathSeparator + + "keepGZoltarFiles" + File.pathSeparator + "false"); String oneFailingTestClassToRun = "org.apache.commons.math.analysis.solvers.BisectionSolverTest"; String anotherTestClassToRun = "org.apache.commons.math.estimation.LevenbergMarquardtEstimatorTest"; @@ -358,7 +362,8 @@ private void helperLimitedNumberOfTestMethods(FaultLocalization fl) throws Excep cs.command.put("-faultlocalization", fl.name()); cs.command.put("-flthreshold", "0.0000"); - cs.command.put("-parameters", "includeZeros:false:keepGZoltarFiles:false"); + cs.command.put("-parameters", "includeZeros" + File.pathSeparator + "false" + File.pathSeparator + + "keepGZoltarFiles" + File.pathSeparator + "false"); String oneFailingTestClassToRun = "org.apache.commons.math.analysis.solvers.BisectionSolverTest#testMath369"; String anotherTestClassToRun = "org.apache.commons.math.estimation.LevenbergMarquardtEstimatorTest#testTrivial"; diff --git a/src/test/java/fr/inria/astor/test/repair/QuixBugsRepairTest.java b/src/test/java/fr/inria/astor/test/repair/QuixBugsRepairTest.java index a2d412f4f..db68e8173 100644 --- a/src/test/java/fr/inria/astor/test/repair/QuixBugsRepairTest.java +++ b/src/test/java/fr/inria/astor/test/repair/QuixBugsRepairTest.java @@ -64,9 +64,12 @@ public static CommandSummary getQuixBugsCommand(String name) { cs.command.put("-flthreshold", "0.0"); cs.command.put("-loglevel", "INFO"); cs.command.put("-stopfirst", "TRUE"); - cs.command.put("-parameters", "logtestexecution:TRUE:" - + "disablelog:FALSE:maxtime:120:autocompile:false:gzoltarpackagetonotinstrument:com.google.gson_engine" - + GZoltarFaultLocalization.PACKAGE_SEPARATOR + "java_programs_test"); + cs.command.put("-parameters", + "logtestexecution" + File.pathSeparator + "TRUE" + File.pathSeparator + "" + "disablelog" + + File.pathSeparator + "FALSE" + File.pathSeparator + "maxtime" + File.pathSeparator + "120" + + File.pathSeparator + "autocompile" + File.pathSeparator + "false" + File.pathSeparator + + "gzoltarpackagetonotinstrument" + File.pathSeparator + "com.google.gson_engine" + + GZoltarFaultLocalization.PACKAGE_SEPARATOR + "java_programs_test"); cs.command.put("-location", new File("./examples/quixbugscompiled/" + name).getAbsolutePath()); return cs; @@ -296,7 +299,7 @@ public void test_get_factorsRepair_cardumen_Debug_mode() throws Exception { CommandSummary command = (getQuixBugsCommand("get_factors")); command.command.put("-maxgen", "0"); command.command.put("-mode", "cardumen"); - command.append("-parameters", "packageToInstrument:java_programs"); + command.append("-parameters", "packageToInstrument" + File.pathSeparator + "java_programs"); main1.execute(command.flat()); @@ -427,8 +430,8 @@ public void testLISRepair_statement() throws Exception { command.command.put("-maxgen", "1000"); // The suspicious is a var declaration used in the patch, so, the default // transformation ignore it - command.append("-parameters", ExtensionPoints.INGREDIENT_TRANSFORM_STRATEGY.identifier + ":" - + NoIngredientTransformation.class.getName()); + command.append("-parameters", ExtensionPoints.INGREDIENT_TRANSFORM_STRATEGY.identifier + "" + File.pathSeparator + + "" + NoIngredientTransformation.class.getName()); main1.execute(command.flat()); assertTrue("No solution", main1.getEngine().getSolutions().size() > 0); @@ -452,8 +455,8 @@ public void testLISRepair_statement_debug() throws Exception { CommandSummary command = (getQuixBugsCommand("lis")); command.command.put("-maxgen", "0"); command.command.put("-loglevel", "ERROR"); - command.append("-parameters", ExtensionPoints.INGREDIENT_TRANSFORM_STRATEGY.identifier + ":" - + NoIngredientTransformation.class.getName()); + command.append("-parameters", ExtensionPoints.INGREDIENT_TRANSFORM_STRATEGY.identifier + "" + File.pathSeparator + + "" + NoIngredientTransformation.class.getName()); main1.execute(command.flat()); @@ -651,4 +654,4 @@ public void ne_test_hanoiRepair_cardumen1h() throws Exception { assertTrue(main1.getEngine().getSolutions().size() == 0); } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/approaches/EvoSuiteGenerationTest.java b/src/test/java/fr/inria/astor/test/repair/approaches/EvoSuiteGenerationTest.java index f8a326cac..a8e7d0de1 100644 --- a/src/test/java/fr/inria/astor/test/repair/approaches/EvoSuiteGenerationTest.java +++ b/src/test/java/fr/inria/astor/test/repair/approaches/EvoSuiteGenerationTest.java @@ -232,7 +232,7 @@ public void testjGenProgWithEvoSuiteTests() throws Exception { "-bintestfolder", "/target/test-classes", "-javacompliancelevel", "7", "-flthreshold", "0.5", "-out", out.getAbsolutePath(), "-scope", "local", "-seed", "10", "-stopfirst", "true", "-population", "1", "-stopfirst", "true", "-maxtime", "100", "-validation", "evosuite", "-maxgen", "250", "-parameters", - "overridemaxtime:false" + "overridemaxtime" + File.pathSeparator + "false" }; System.out.println(Arrays.toString(args)); @@ -345,7 +345,7 @@ public void testMath70WithEvosuiteTests() throws Exception { out.getAbsolutePath(), "-scope", "package", "-seed", "10", "-maxgen", "2000", "-population", "1", "-stopfirst", "true", "-maxtime", "20", // PARAMETER TO TEST - "-validation", "evosuite", "-parameters", "overridemaxtime:false" + "-validation", "evosuite", "-parameters", "overridemaxtime" + File.pathSeparator + "false" }; System.out.println(Arrays.toString(args)); @@ -428,9 +428,36 @@ public void testBugProcessDoesNotReturn() throws Exception { // memory + "-Xmx2048m " + "-cp " // Classpath - + "/Users/matias/develop/code/astor/target/test-classes:/Users/matias/develop/code/astor/target/classes:/Users/matias/.m2/repository/fr/inria/gforge/spoon/spoon-core/4.4.1/spoon-core-4.4.1.jar:/Users/matias/.m2/repository/org/eclipse/jdt/org.eclipse.jdt.core/3.12.0.v20150913-1717/org.eclipse.jdt.core-3.12.0.v20150913-1717.jar:/Users/matias/.m2/repository/com/martiansoftware/jsap/2.1/jsap-2.1.jar:/Users/matias/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar:/Users/matias/.m2/repository/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar:/Users/matias/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar:/Users/matias/.m2/repository/com/gzoltar/gzoltar/0.1.1/gzoltar-0.1.1.jar:/Users/matias/.m2/repository/junit/junit/4.11/junit-4.11.jar:/Users/matias/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/matias/.m2/repository/commons-cli/commons-cli/1.2/commons-cli-1.2.jar:/Users/matias/develop/Eclipse.app/Contents/Eclipse/configuration/org.eclipse.osgi/214/0/.cp/:/Users/matias/develop/Eclipse.app/Contents/Eclipse/configuration/org.eclipse.osgi/213/0/.cp/:/Users/matias/develop/code/astor/./examples/libs/junit-4.4.jar:/Users/matias/develop/code/astor/./outputMutation/math_70_spooned/bin/default/:/Users/matias/develop/wsastor/testES/libs/evosuite-1.0.3.jar:" + + "/Users/matias/develop/code/astor/target/test-classes" + File.pathSeparator + + "/Users/matias/develop/code/astor/target/classes" + File.pathSeparator + + "/Users/matias/.m2/repository/fr/inria/gforge/spoon/spoon-core/4.4.1/spoon-core-4.4.1.jar" + + File.pathSeparator + + "/Users/matias/.m2/repository/org/eclipse/jdt/org.eclipse.jdt.core/3.12.0.v20150913-1717/org.eclipse.jdt.core-3.12.0.v20150913-1717.jar" + + File.pathSeparator + "/Users/matias/.m2/repository/com/martiansoftware/jsap/2.1/jsap-2.1.jar" + + File.pathSeparator + "/Users/matias/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar" + + File.pathSeparator + + "/Users/matias/.m2/repository/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar" + + File.pathSeparator + + "/Users/matias/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar" + + File.pathSeparator + + "/Users/matias/.m2/repository/com/gzoltar/gzoltar/0.1.1/gzoltar-0.1.1.jar" + + File.pathSeparator + "/Users/matias/.m2/repository/junit/junit/4.11/junit-4.11.jar" + + File.pathSeparator + + "/Users/matias/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar" + + File.pathSeparator + + "/Users/matias/.m2/repository/commons-cli/commons-cli/1.2/commons-cli-1.2.jar" + + File.pathSeparator + + "/Users/matias/develop/Eclipse.app/Contents/Eclipse/configuration/org.eclipse.osgi/214/0/.cp/" + + File.pathSeparator + + "/Users/matias/develop/Eclipse.app/Contents/Eclipse/configuration/org.eclipse.osgi/213/0/.cp/" + + File.pathSeparator + "/Users/matias/develop/code/astor/./examples/libs/junit-4.4.jar" + + File.pathSeparator + + "/Users/matias/develop/code/astor/./outputMutation/math_70_spooned/bin/default/" + + File.pathSeparator + "/Users/matias/develop/wsastor/testES/libs/evosuite-1.0.3.jar" + + File.pathSeparator + "" // TestGenerated by Evosuite - + "/Users/matias/develop/code/astor/outputMutation/math_70_spooned/bin/evosuite/evosuite-tests/: " + + "/Users/matias/develop/code/astor/outputMutation/math_70_spooned/bin/evosuite/evosuite-tests/" + + File.pathSeparator + " " // jUnit and arguments + "fr.inria.astor.junitexec.JUnitTestExecutor org.apache.commons.math.analysis.solvers.BisectionSolver_ESTest"; System.out.println("Running "); @@ -518,7 +545,7 @@ public void testNonDeterministimsMath70WithEvosuiteTests() throws Exception { "/target/classes", "-bintestfolder", "/target/test-classes", "-javacompliancelevel", "7", "-flthreshold", "0.5", "-out", out.getAbsolutePath(), "-scope", "package", "-seed", "10", "-maxgen", "250", "-population", "1", "-stopfirst", "true", "-maxtime", "100", "-validation", "evosuite", - "-parameters", "overridemaxtime:false" + "-parameters", "overridemaxtime" + File.pathSeparator + "false" }; System.out.println(Arrays.toString(args)); @@ -556,4 +583,4 @@ public void testNonDeterministimsMath70WithEvosuiteTests() throws Exception { } } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/approaches/ExhaustiveAstorTest.java b/src/test/java/fr/inria/astor/test/repair/approaches/ExhaustiveAstorTest.java index 90d92c7b2..890be1da2 100644 --- a/src/test/java/fr/inria/astor/test/repair/approaches/ExhaustiveAstorTest.java +++ b/src/test/java/fr/inria/astor/test/repair/approaches/ExhaustiveAstorTest.java @@ -108,9 +108,10 @@ public void testExhaustiveTibraMath70LocalSolutionAssertPatch() throws Exception "-scope", "package", "-seed", "10", "-maxgen", "10000", "-stopfirst", "false", // "-maxtime", "100", "-loglevel", "INFO", // For excluding regression - "-excludeRegression", "-parameters", "maxCombinationVariableLimit:true" - // reduced search space - + ":maxVarCombination:1" + ":ingredienttransformstrategy:" + "-excludeRegression", "-parameters", "maxCombinationVariableLimit" + File.pathSeparator + "true" + // reduced search space + + "" + File.pathSeparator + "maxVarCombination" + File.pathSeparator + "1" + "" + + File.pathSeparator + "ingredienttransformstrategy" + File.pathSeparator + "" + RandomTransformationStrategy.class.getCanonicalName() }; @@ -250,7 +251,9 @@ public void testExhaustiveCloneMath70LocalSolution() throws Exception { File out = new File(ConfigurationProperties.getProperty("workingDirectory")); String[] args = new String[] { "-dependencies", dep, "-mode", "custom", "-customengine", DeepRepairExhausitiveCloneEngine.class.getCanonicalName(), ExtensionPoints.REPAIR_OPERATORS.argument(), - "fr.inria.astor.approaches.jgenprog.operators.InsertAfterOp:fr.inria.astor.approaches.jgenprog.operators.InsertBeforeOp:fr.inria.astor.approaches.jgenprog.operators.ReplaceOp", + "fr.inria.astor.approaches.jgenprog.operators.InsertAfterOp" + File.pathSeparator + + "fr.inria.astor.approaches.jgenprog.operators.InsertBeforeOp" + File.pathSeparator + + "fr.inria.astor.approaches.jgenprog.operators.ReplaceOp", "-failing", "org.apache.commons.math.analysis.solvers.BisectionSolverTest", "-location", new File("./examples/math_70").getAbsolutePath(), "-package", "org.apache.commons", "-srcjavafolder", @@ -294,4 +297,4 @@ public void testExhaustiveCloneMath70LocalSolution() throws Exception { } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/approaches/JGenProgEvolutionaryTest.java b/src/test/java/fr/inria/astor/test/repair/approaches/JGenProgEvolutionaryTest.java index ee6121d21..39c0ffbf0 100644 --- a/src/test/java/fr/inria/astor/test/repair/approaches/JGenProgEvolutionaryTest.java +++ b/src/test/java/fr/inria/astor/test/repair/approaches/JGenProgEvolutionaryTest.java @@ -44,7 +44,8 @@ public void testMath70PackageSolutionsEvolving() throws Exception { "-population", "1", "-reintroduce", PopulationConformation.PARENTS.toString() + File.pathSeparator + PopulationConformation.SOLUTIONS.toString(), // Parameters: - "-parameters", "maxnumbersolutions:3:ignoredTestCases:org.apache.commons.math.estimation.MinpackTest" + "-parameters", "maxnumbersolutions" + File.pathSeparator + "3" + File.pathSeparator + "ignoredTestCases" + + File.pathSeparator + "org.apache.commons.math.estimation.MinpackTest" }; System.out.println(Arrays.toString(args)); @@ -60,4 +61,4 @@ public void testMath70PackageSolutionsEvolving() throws Exception { assertTrue(withMultiple); } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/approaches/JGenProgTest.java b/src/test/java/fr/inria/astor/test/repair/approaches/JGenProgTest.java index 913767b40..d520a5fcf 100644 --- a/src/test/java/fr/inria/astor/test/repair/approaches/JGenProgTest.java +++ b/src/test/java/fr/inria/astor/test/repair/approaches/JGenProgTest.java @@ -141,7 +141,7 @@ public void testMath70ThisKeyword() throws Exception { cs.command.put("-stopfirst", "true"); cs.command.put("-loglevel", "INFO"); cs.command.put("-saveall", "true"); - cs.append("-parameters", ("logtestexecution:true")); + cs.append("-parameters", ("logtestexecution" + File.pathSeparator + "true")); System.out.println(Arrays.toString(cs.flat())); main1.execute(cs.flat()); @@ -198,7 +198,8 @@ public static String[] commandMath70(String dep, File out, int generations) { "/src/main/java/", "-srctestfolder", "/src/test/java", "-binjavafolder", "/target/classes", "-bintestfolder", "/target/test-classes", "-javacompliancelevel", "7", "-flthreshold", "0.5", "-out", out.getAbsolutePath(), "-scope", "local", "-seed", "10", "-maxgen", Integer.toString(generations), - "-stopfirst", "true", "-maxtime", "5", "-loglevel", "INFO", "-parameters", "disablelog:false" + "-stopfirst", "true", "-maxtime", "5", "-loglevel", "INFO", "-parameters", + "disablelog" + File.pathSeparator + "false" }; return args; @@ -373,7 +374,7 @@ public void testMath5_buggy() throws Exception { // "-javacompliancelevel", "6", - "-parameters", "maxmodificationpoints:1" + "-parameters", "maxmodificationpoints" + File.pathSeparator + "1" }; main1.execute(args); @@ -440,8 +441,9 @@ public void testMath70DiffOfSolution() throws Exception { CommandSummary cs = MathCommandsTests.getMath70Command(); cs.command.put("-stopfirst", "true"); cs.command.put("-parameters", - "logtestexecution:true:ignoredTestCases:org.apache.commons.math.estimation.MinpackTest:" + "maxmemory" - + File.pathSeparator + "-Xmx4G"); + "logtestexecution" + File.pathSeparator + "true" + File.pathSeparator + "ignoredTestCases" + + File.pathSeparator + "org.apache.commons.math.estimation.MinpackTest" + File.pathSeparator + + "" + "maxmemory" + File.pathSeparator + "-Xmx4G"); // testMinpackMeyer(org.apache.commons.math.estimation.MinpackTest) @@ -523,11 +525,11 @@ public void testMath70StopAtXVariantsSolution() throws Exception { // "-scope", "package", "-seed", "10", "-maxgen", "10000", "-stopfirst", "false", "-maxtime", "10", "-population", "1", "-reintroduce", PopulationConformation.PARENTS.toString(), "-parameters", - "maxnumbersolutions:2" }; + "maxnumbersolutions" + File.pathSeparator + "2" }; System.out.println(Arrays.toString(args)); CommandSummary command = new CommandSummary(args); - command.command.put("-parameters", "maxnumbersolutions:2"); + command.command.put("-parameters", "maxnumbersolutions" + File.pathSeparator + "2"); main1.execute(command.flat()); List solutions = main1.getEngine().getSolutions(); @@ -536,7 +538,7 @@ public void testMath70StopAtXVariantsSolution() throws Exception { assertTrue(existPatchWithCode(solutions, "return solve(f, min, max)") || existPatchWithCode(solutions, "return solve(f, initial, max)")); - command.command.put("-parameters", "maxnumbersolutions:1"); + command.command.put("-parameters", "maxnumbersolutions" + File.pathSeparator + "1"); main1.execute(command.flat()); solutions = main1.getEngine().getSolutions(); @@ -566,7 +568,7 @@ public void testMath70FixedFL() throws Exception { System.out.println(Arrays.toString(args)); CommandSummary command = new CommandSummary(args); - command.command.put("-parameters", "fixedLocation:BisectionSolver-72"); + command.command.put("-parameters", "fixedLocation" + File.pathSeparator + "BisectionSolver-72"); main1.execute(command.flat()); List solutions = main1.getEngine().getSolutions(); @@ -601,7 +603,9 @@ public void testMath70Perfect() throws Exception { fw.write("return solve(f, min, max)"); fw.close(); command.command.put("-parameters", - "fixedLocation:BisectionSolver-72:" + "peOperator:replace:pefile:" + f.getAbsolutePath()); + "fixedLocation" + File.pathSeparator + "BisectionSolver-72" + File.pathSeparator + "" + "peOperator" + + File.pathSeparator + "replace" + File.pathSeparator + "pefile" + File.pathSeparator + "" + + f.getAbsolutePath()); main1.execute(command.flat()); List solutions = main1.getEngine().getSolutions(); @@ -720,4 +724,4 @@ public void testMath28() throws Exception { assertTrue(variants.size() > 0); } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/approaches/TibraApproachTest.java b/src/test/java/fr/inria/astor/test/repair/approaches/TibraApproachTest.java index fbfc67c12..68d18a506 100644 --- a/src/test/java/fr/inria/astor/test/repair/approaches/TibraApproachTest.java +++ b/src/test/java/fr/inria/astor/test/repair/approaches/TibraApproachTest.java @@ -3,6 +3,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; +import java.io.File; import java.util.Arrays; import java.util.List; @@ -37,7 +38,7 @@ public void testTimbraMath70() throws Exception { cs.command.put("-mode", "custom"); cs.command.put("-saveall", "true"); cs.command.put("-customengine", TibraApproach.class.getCanonicalName()); - cs.command.put("-parameters", "desactivateingredientcache:true"); + cs.command.put("-parameters", "desactivateingredientcache" + File.pathSeparator + "true"); System.out.println(Arrays.toString(cs.flat())); main1.execute(cs.flat()); @@ -46,4 +47,4 @@ public void testTimbraMath70() throws Exception { assertTrue(solutions.size() > 0); assertEquals(1, solutions.size()); } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/approaches/cardumen/CardumenApproachTest.java b/src/test/java/fr/inria/astor/test/repair/approaches/cardumen/CardumenApproachTest.java index b79dd9060..584913236 100644 --- a/src/test/java/fr/inria/astor/test/repair/approaches/cardumen/CardumenApproachTest.java +++ b/src/test/java/fr/inria/astor/test/repair/approaches/cardumen/CardumenApproachTest.java @@ -322,9 +322,9 @@ public void testCardumentM70TransformationBugSameCombination() throws Exception command.command.put("-maxgen", "0"); command.command.put("-population", "1"); command.command.put("-scope", scope.toString().toLowerCase()); - command.command.put("-parameters", "disablelog:true"); + command.command.put("-parameters", "disablelog" + File.pathSeparator + "true"); int maxCombinations = 30000; - command.command.put("-parameters", "maxVarCombination:" + maxCombinations + ":disablelog:true"); + command.command.put("-parameters", "maxVarCombination" + File.pathSeparator + "" + maxCombinations + "" + File.pathSeparator + "disablelog" + File.pathSeparator + "true"); AstorMain main1 = new AstorMain(); main1.execute(command.flat()); @@ -380,9 +380,9 @@ public void testCardumentM70TransformationBugSameCombination2() throws Exception command.command.put("-maxgen", "0"); command.command.put("-population", "1"); command.command.put("-scope", scope.toString().toLowerCase()); - command.command.put("-parameters", "disablelog:true"); + command.command.put("-parameters", "disablelog" + File.pathSeparator + "true"); int maxCombinations = 30000; - command.command.put("-parameters", "maxVarCombination:" + maxCombinations + ":disablelog:true"); + command.command.put("-parameters", "maxVarCombination" + File.pathSeparator + "" + maxCombinations + "" + File.pathSeparator + "disablelog" + File.pathSeparator + "true"); AstorMain main1 = new AstorMain(); main1.execute(command.flat()); @@ -451,7 +451,7 @@ public void testCardumentLang7NPE() throws Exception { command.command.put("-dependencies", dep); command.command.put("-loglevel", "INFO"); command.command.put("-location", new File("./examples/lang_7").getAbsolutePath()); - command.command.put("-parameters", "maxCombinationVariableLimit:true"); + command.command.put("-parameters", "maxCombinationVariableLimit" + File.pathSeparator + "true"); AstorMain main1 = new AstorMain(); main1.execute(command.flat()); @@ -474,7 +474,7 @@ public void testCardumentM70bugHEAP() throws Exception { command.command.put("-population", "1"); command.command.put("-scope", scope.toString().toLowerCase()); int maxCombinations = 3000; - command.command.put("-parameters", "maxVarCombination:" + maxCombinations + ":disablelog:true"); + command.command.put("-parameters", "maxVarCombination" + File.pathSeparator + "" + maxCombinations + "" + File.pathSeparator + "disablelog" + File.pathSeparator + "true"); AstorMain main1 = new AstorMain(); main1.execute(command.flat()); @@ -704,7 +704,7 @@ public void testCardumentM70Evolve() throws Exception { command.command.put("-maxgen", "200"); command.command.put("-population", "1"); command.command.put("-scope", scope.toString().toLowerCase()); - command.command.put("-parameters", "disablelog:false"); + command.command.put("-parameters", "disablelog" + File.pathSeparator + "false"); command.command.put("-maxVarCombination", "100"); AstorMain main1 = new AstorMain(); @@ -766,7 +766,7 @@ public void testCardumentM70EvolveNotUniformreplacement() throws Exception { command.command.put("-maxgen", "100"); command.command.put("-scope", scope.toString().toLowerCase()); command.command.put("-parameters", - "limitbysuspicious:false:" + "disablelog:true:uniformreplacement:false:frequenttemplate:true"); + "limitbysuspicious" + File.pathSeparator + "false" + File.pathSeparator + "" + "disablelog" + File.pathSeparator + "true" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "false" + File.pathSeparator + "frequenttemplate" + File.pathSeparator + "true"); command.command.put("-loglevel", Level.INFO.toString()); command.command.put("-maxVarCombination", "1000"); command.command.put("-stopfirst", "false"); @@ -795,7 +795,7 @@ public void testCardumentM70EvolveUniformreplacement() throws Exception { command.command.put("-maxgen", "200"); command.command.put("-population", "1"); command.command.put("-scope", scope.toString().toLowerCase()); - command.command.put("-parameters", "disablelog:true:uniformreplacement:true"); + command.command.put("-parameters", "disablelog" + File.pathSeparator + "true" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "true"); AstorMain main1 = new AstorMain(); main1.execute(command.flat()); @@ -829,7 +829,7 @@ public void testCardumentM70EvolveUniformreplacementMostUsedTemplate() throws Ex command.command.put("-population", "1"); command.command.put("-scope", scope.toString().toLowerCase()); command.command.put("-stopfirst", "false"); - command.command.put("-parameters", "disablelog:true:uniformreplacement:true:frequenttemplate:true"); + command.command.put("-parameters", "disablelog" + File.pathSeparator + "true" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "true" + File.pathSeparator + "frequenttemplate" + File.pathSeparator + "true"); AstorMain main1 = new AstorMain(); main1.execute(command.flat()); @@ -861,7 +861,7 @@ public void testCardumentM70Suspicious() throws Exception { command.command.put("-population", "1"); command.command.put("-scope", scope.toString().toLowerCase()); command.command.put("-stopfirst", "false"); - command.command.put("-parameters", "disablelog:true:uniformreplacement:true:frequenttemplate:true"); + command.command.put("-parameters", "disablelog" + File.pathSeparator + "true" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "true" + File.pathSeparator + "frequenttemplate" + File.pathSeparator + "true"); AstorMain main1 = new AstorMain(); main1.execute(command.flat()); @@ -885,7 +885,7 @@ public void testCardumentM70Suspicious() throws Exception { maxsusp = 100; command.command.put("-maxsuspcandidates", maxsusp.toString()); command.command.put("-flthreshold", "0.000000001"); - command.command.put("-parameters", "limitbysuspicious:false"); + command.command.put("-parameters", "limitbysuspicious" + File.pathSeparator + "false"); main1.execute(command.flat()); @@ -910,7 +910,7 @@ public void testCardumentM70AssertStats() throws Exception { command.command.put("-scope", scope.toString().toLowerCase()); command.command.put("-stopfirst", "false"); command.command.put("-loglevel", "INFO"); - command.command.put("-parameters", "disablelog:true:uniformreplacement:true:frequenttemplate:true"); + command.command.put("-parameters", "disablelog" + File.pathSeparator + "true" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "true" + File.pathSeparator + "frequenttemplate" + File.pathSeparator + "true"); AstorMain main1 = new AstorMain(); main1.execute(command.flat()); @@ -1152,7 +1152,7 @@ public void testCardumentM70MaxModPoints() throws Exception { command.command.put("-customengine", CardumenExhaustiveEngine4Stats.class.getCanonicalName()); command.command.put("-scope", scope.toString().toLowerCase()); command.command.put("-parameters", - "maxmodificationpoints:" + maxModPoints + ":skipfitnessinitialpopulation:true:limitbysuspicious:false"); + "maxmodificationpoints" + File.pathSeparator + "" + maxModPoints + "" + File.pathSeparator + "skipfitnessinitialpopulation" + File.pathSeparator + "true" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + "false"); command.command.put("-loglevel", Level.INFO.toString()); AstorMain main1 = new AstorMain(); @@ -1175,8 +1175,8 @@ public void testCardumentM42() throws Exception { command.command.put("-population", "1"); command.command.put("-customengine", CardumenExhaustiveEngine4Stats.class.getCanonicalName()); command.command.put("-scope", scope.toString().toLowerCase()); - command.command.put("-parameters", "skipfitnessinitialpopulation:true:limitbysuspicious:false:" - + "disablelog:false:uniformreplacement:" + Boolean.toString(uniformreplacement)); + command.command.put("-parameters", "skipfitnessinitialpopulation" + File.pathSeparator + "true" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + "false" + File.pathSeparator + "" + + "disablelog" + File.pathSeparator + "false" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "" + Boolean.toString(uniformreplacement)); command.command.put("-loglevel", Level.INFO.toString()); AstorMain main1 = new AstorMain(); @@ -1198,7 +1198,7 @@ public void testCardumentM70ScopeLocalProbTransformation() throws Exception { command.command.put("-maxgen", "0"); command.command.put("-population", "1"); command.command.put("-scope", scope.toString().toLowerCase()); - command.command.put("-parameters", "probabilistictransformation:true"); + command.command.put("-parameters", "probabilistictransformation" + File.pathSeparator + "true"); AstorMain main1 = new AstorMain(); main1.execute(command.flat()); @@ -1253,7 +1253,7 @@ public void testCardumentM70ScopeLocalRandomTransformation() throws Exception { command.command.put("-population", "1"); command.command.put("-scope", scope.toString().toLowerCase()); // RANDOM - command.command.put("-parameters", "probabilistictransformation:false"); + command.command.put("-parameters", "probabilistictransformation" + File.pathSeparator + "false"); AstorMain main1 = new AstorMain(); main1.execute(command.flat()); @@ -1321,4 +1321,4 @@ public void testCardumentM57() throws Exception { } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/approaches/cardumen/CardumenExahustiveTest.java b/src/test/java/fr/inria/astor/test/repair/approaches/cardumen/CardumenExahustiveTest.java index 3d27fcf15..4675c7059 100644 --- a/src/test/java/fr/inria/astor/test/repair/approaches/cardumen/CardumenExahustiveTest.java +++ b/src/test/java/fr/inria/astor/test/repair/approaches/cardumen/CardumenExahustiveTest.java @@ -4,6 +4,7 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; +import java.io.File; import java.util.List; import org.apache.log4j.Level; @@ -46,8 +47,8 @@ public void testCardumentM70ExhausitveComplete() throws Exception { command.command.put("-customengine", CardumenExhaustiveApproach.class.getCanonicalName()); command.command.put("-scope", scope.toString().toLowerCase()); int maxSol = 7; - command.command.put("-parameters", "limitbysuspicious:false:" + "disablelog:false:uniformreplacement:false:" - + "frequenttemplate:false:" + "maxnumbersolutions:" + maxSol); + command.command.put("-parameters", "limitbysuspicious" + File.pathSeparator + "false" + File.pathSeparator + "" + "disablelog" + File.pathSeparator + "false" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "false" + File.pathSeparator + "" + + "frequenttemplate" + File.pathSeparator + "false" + File.pathSeparator + "" + "maxnumbersolutions" + File.pathSeparator + "" + maxSol); command.command.put("-loglevel", Level.INFO.toString()); command.command.put("-maxVarCombination", "1000"); @@ -81,16 +82,16 @@ public void testCardumentM70Exhausitve() throws Exception { command.command.put("-maxtime", "60"); command.command.put("-population", "1"); command.command.put("-customengine", CardumenExhaustiveEngine4Stats.class.getCanonicalName()); - command.command.put("-parameters", "includeZeros:true:scope:" + scope.toString().toLowerCase() - + "scope:limitbysuspicious:false:" + "disablelog:true:uniformreplacement:false:frequenttemplate:true"); + command.command.put("-parameters", "includeZeros" + File.pathSeparator + "true" + File.pathSeparator + "scope" + File.pathSeparator + "" + scope.toString().toLowerCase() + + "scope" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + "false" + File.pathSeparator + "" + "disablelog" + File.pathSeparator + "true" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "false" + File.pathSeparator + "frequenttemplate" + File.pathSeparator + "true"); command.command.put("-loglevel", Level.INFO.toString()); command.command.put("-maxVarCombination", "100000000"); AstorMain main1 = new AstorMain(); log.debug("LOCAL SCOPE"); // Local - command.command.put("-parameters", "includeZeros:false:scope:local" + ":limitbysuspicious:false:" - + "disablelog:true:uniformreplacement:false:frequenttemplate:true"); + command.command.put("-parameters", "includeZeros" + File.pathSeparator + "false" + File.pathSeparator + "scope" + File.pathSeparator + "local" + "" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + "false" + File.pathSeparator + "" + + "disablelog" + File.pathSeparator + "true" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "false" + File.pathSeparator + "frequenttemplate" + File.pathSeparator + "true"); main1 = new AstorMain(); main1.execute(command.flat()); @@ -101,8 +102,8 @@ public void testCardumentM70Exhausitve() throws Exception { log.debug("PACKAGE SCOPE"); // PACKAGE - command.command.put("-parameters", "includeZeros:false:scope:package" + ":limitbysuspicious:false:" - + "disablelog:true:uniformreplacement:false:frequenttemplate:true"); + command.command.put("-parameters", "includeZeros" + File.pathSeparator + "false" + File.pathSeparator + "scope" + File.pathSeparator + "package" + "" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + "false" + File.pathSeparator + "" + + "disablelog" + File.pathSeparator + "true" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "false" + File.pathSeparator + "frequenttemplate" + File.pathSeparator + "true"); main1 = new AstorMain(); main1.execute(command.flat()); @@ -125,7 +126,7 @@ public void testCardumentM70ExhausitveMaxLimited() throws Exception { command.command.put("-customengine", CardumenExhaustiveEngine4Stats.class.getCanonicalName()); command.command.put("-scope", scope.toString().toLowerCase()); command.command.put("-parameters", - "limitbysuspicious:false:" + "disablelog:true:uniformreplacement:false:frequenttemplate:true"); + "limitbysuspicious" + File.pathSeparator + "false" + File.pathSeparator + "" + "disablelog" + File.pathSeparator + "true" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "false" + File.pathSeparator + "frequenttemplate" + File.pathSeparator + "true"); command.command.put("-loglevel", Level.INFO.toString()); command.command.put("-maxVarCombination", "1000"); @@ -154,8 +155,8 @@ public void testCardumentM70ExhausitveMaxSuspiciousLimited() throws Exception { command.command.put("-population", "1"); command.command.put("-customengine", CardumenExhaustiveEngine4Stats.class.getCanonicalName()); command.command.put("-scope", scope.toString().toLowerCase()); - command.command.put("-parameters", "skipfitnessinitialpopulation:true:limitbysuspicious:false:" - + "disablelog:false:uniformreplacement:false:frequenttemplate:false"); + command.command.put("-parameters", "skipfitnessinitialpopulation" + File.pathSeparator + "true" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + "false" + File.pathSeparator + "" + + "disablelog" + File.pathSeparator + "false" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "false" + File.pathSeparator + "frequenttemplate" + File.pathSeparator + "false"); command.command.put("-loglevel", Level.INFO.toString()); command.command.put("-maxVarCombination", "100"); command.command.put("-maxsuspcandidates", "1000"); @@ -191,8 +192,8 @@ public void testCardumentM70ExhausitveReplacement() throws Exception { command.command.put("-population", "1"); command.command.put("-customengine", CardumenExhaustiveEngine4Stats.class.getCanonicalName()); command.command.put("-scope", scope.toString().toLowerCase()); - command.command.put("-parameters", "skipfitnessinitialpopulation:true:limitbysuspicious:false:" - + "disablelog:false:uniformreplacement:" + Boolean.toString(uniformreplacement)); + command.command.put("-parameters", "skipfitnessinitialpopulation" + File.pathSeparator + "true" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + "false" + File.pathSeparator + "" + + "disablelog" + File.pathSeparator + "false" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "" + Boolean.toString(uniformreplacement)); command.command.put("-loglevel", Level.INFO.toString()); AstorMain main1 = new AstorMain(); @@ -210,8 +211,8 @@ public void testCardumentM70ExhausitveReplacement() throws Exception { uniformreplacement = true; - command.command.put("-parameters", "skipfitnessinitialpopulation:true:limitbysuspicious:false:" - + "disablelog:false:uniformreplacement:" + Boolean.toString(uniformreplacement)); + command.command.put("-parameters", "skipfitnessinitialpopulation" + File.pathSeparator + "true" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + "false" + File.pathSeparator + "" + + "disablelog" + File.pathSeparator + "false" + File.pathSeparator + "uniformreplacement" + File.pathSeparator + "" + Boolean.toString(uniformreplacement)); cardumen = null; main1.execute(command.flat()); @@ -226,4 +227,4 @@ public void testCardumentM70ExhausitveReplacement() throws Exception { assertTrue(tingNotUnifall + " > " + tingUnifall, tingNotUnifall > tingUnifall); } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/core/OutputTest.java b/src/test/java/fr/inria/astor/test/repair/core/OutputTest.java index 3bf0f7eea..433524184 100644 --- a/src/test/java/fr/inria/astor/test/repair/core/OutputTest.java +++ b/src/test/java/fr/inria/astor/test/repair/core/OutputTest.java @@ -60,9 +60,9 @@ public void testMath70LogFileInfoLevel() throws Exception { cs.command.put("-scope", "package"); cs.command.put("-loglevel", "INFO"); cs.command.put("-maxgen", "500"); - cs.command.put("-parameters", "disablelog:false"); + cs.command.put("-parameters", "disablelog" + File.pathSeparator + "false"); File fileLog = File.createTempFile("logTest", ".log"); - cs.append("-parameters", "logfilepath:" + fileLog.getAbsolutePath()); + cs.append("-parameters", "logfilepath" + File.pathSeparator + "" + fileLog.getAbsolutePath()); assertEquals(4, cs.command.get("-parameters").split(File.pathSeparator).length); System.out.println(Arrays.toString(cs.flat())); @@ -154,7 +154,7 @@ public void testExtPoint2Outputs() throws Exception { cs.command.put("-stopfirst", "true"); cs.command.put("-outputresult", PatchJSONStandarOutput.class.getCanonicalName() + "|" + StandardOutputReport.class.getCanonicalName()); - cs.command.put("-parameters", "outputjsonresult:true"); + cs.command.put("-parameters", "outputjsonresult" + File.pathSeparator + "true"); System.out.println(Arrays.toString(cs.flat())); main1.execute(cs.flat()); @@ -211,9 +211,9 @@ public void testMath70LogFile() throws Exception { cs.command.put("-scope", "package"); cs.command.put("-loglevel", Level.DEBUG.toString()); - cs.command.put("-parameters", "disablelog:false"); + cs.command.put("-parameters", "disablelog" + File.pathSeparator + "false"); File fileLog = File.createTempFile("logTest", ".log"); - cs.append("-parameters", "logfilepath:" + fileLog.getAbsolutePath()); + cs.append("-parameters", "logfilepath" + File.pathSeparator + "" + fileLog.getAbsolutePath()); assertEquals(4, cs.command.get("-parameters").split(File.pathSeparator).length); System.out.println(Arrays.toString(cs.flat())); @@ -267,7 +267,7 @@ public void testMath70Path() throws Exception { CommandSummary cs = MathCommandsTests.getMath70Command(); cs.command.put("-stopfirst", "true"); - cs.command.put("-parameters", "parsesourcefromoriginal:true"); + cs.command.put("-parameters", "parsesourcefromoriginal" + File.pathSeparator + "true"); cs.command.put("-loglevel", "DEBUG"); System.out.println(Arrays.toString(cs.flat())); @@ -326,7 +326,7 @@ public void testMath70Identifier() throws Exception { "-bintestfolder", new File("./examples/math_70").getAbsolutePath() + "/target/test-classes", // "-javacompliancelevel", "7", "-flthreshold", "0.5", "-out", out.getAbsolutePath(), "-scope", "local", "-seed", "10", "-maxgen", Integer.toString(generations), "-stopfirst", "true", "-maxtime", "100", - "-loglevel", "INFO", "-parameters", "disablelog:false" + "-loglevel", "INFO", "-parameters", "disablelog" + File.pathSeparator + "false" }; @@ -358,4 +358,4 @@ public void testMath70Identifier() throws Exception { assertEquals(id, retrievedId); } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/core/PatchDiffTest.java b/src/test/java/fr/inria/astor/test/repair/core/PatchDiffTest.java index ad3a398c9..475873316 100644 --- a/src/test/java/fr/inria/astor/test/repair/core/PatchDiffTest.java +++ b/src/test/java/fr/inria/astor/test/repair/core/PatchDiffTest.java @@ -7,6 +7,7 @@ import java.io.File; import java.util.Arrays; import java.util.List; +import java.util.regex.Pattern; import org.junit.Before; import org.junit.Test; @@ -35,7 +36,10 @@ public void testMath70Diff_default() throws Exception { CommandSummary cs = MathCommandsTests.getMath70Command(); cs.command.put("-stopfirst", "true"); - cs.command.put("-parameters", "savesolution:false:" + "preservelinenumbers:false" + ":diff_type:default"); + cs.command.put("-parameters", + "savesolution" + File.pathSeparator + "false" + File.pathSeparator + "" + "preservelinenumbers" + + File.pathSeparator + "false" + "" + File.pathSeparator + "diff_type" + File.pathSeparator + + "default"); System.out.println(Arrays.toString(cs.flat())); main1.execute(cs.flat()); @@ -54,8 +58,12 @@ public void testMath70Diff_default() throws Exception { String diff2 = variant.getPatchDiff().getOriginalStatementAlignmentDiff(); System.out.println("Patch original alignment: \n" + diff2); assertTrue(diff2.contains("return solve(f, min, max)")); - assertTrue(diff2.startsWith("--- org/apache/commons/math/analysis/solvers/BisectionSolver.java")); - assertTrue(diff2.contains("+++ org/apache/commons/math/analysis/solvers/BisectionSolver.java")); + assertTrue(diff2.startsWith("--- org" + File.separator + "apache" + File.separator + "commons" + File.separator + + "math" + File.separator + "analysis" + File.separator + "solvers" + File.separator + + "BisectionSolver.java")); + assertTrue(diff2.contains("+++ org" + File.separator + "apache" + File.separator + "commons" + File.separator + + "math" + File.separator + "analysis" + File.separator + "solvers" + File.separator + + "BisectionSolver.java")); String path_o = main1.getEngine().getProjectFacade().getInDirWithPrefix(variant.currentMutatorIdentifier()); assertTrue(new File(path_o + File.separator + PatchDiffCalculator.PATCH_DIFF_FILE_NAME).exists()); @@ -72,7 +80,10 @@ public void testMath70Diff_git() throws Exception { CommandSummary cs = MathCommandsTests.getMath70Command(); cs.command.put("-stopfirst", "true"); - cs.command.put("-parameters", "savesolution:false:" + "preservelinenumbers:true" + ":diff_type:git"); + cs.command.put("-parameters", + "savesolution" + File.pathSeparator + "false" + File.pathSeparator + "" + "preservelinenumbers" + + File.pathSeparator + "true" + "" + File.pathSeparator + "diff_type" + File.pathSeparator + + "git"); System.out.println(Arrays.toString(cs.flat())); main1.execute(cs.flat()); @@ -91,8 +102,12 @@ public void testMath70Diff_git() throws Exception { String diff2 = variant.getPatchDiff().getOriginalStatementAlignmentDiff(); System.out.println("Patch original alignment: \n" + diff2); assertTrue(diff2.contains("return solve(f, min, max)")); - assertTrue(diff2.startsWith("--- a/org/apache/commons/math/analysis/solvers/BisectionSolver.java")); - assertTrue(diff2.contains("+++ b/org/apache/commons/math/analysis/solvers/BisectionSolver.java")); + assertTrue(diff2.startsWith("--- a" + File.separator + "org" + File.separator + "apache" + File.separator + + "commons" + File.separator + "math" + File.separator + "analysis" + File.separator + "solvers" + + File.separator + "BisectionSolver.java")); + assertTrue(diff2.contains("+++ b" + File.separator + "org" + File.separator + "apache" + File.separator + + "commons" + File.separator + "math" + File.separator + "analysis" + File.separator + "solvers" + + File.separator + "BisectionSolver.java")); String path_o = main1.getEngine().getProjectFacade().getInDirWithPrefix(variant.currentMutatorIdentifier()); assertTrue(new File(path_o + File.separator + PatchDiffCalculator.PATCH_DIFF_FILE_NAME).exists()); @@ -109,7 +124,10 @@ public void testMath70Diff_relative() throws Exception { CommandSummary cs = MathCommandsTests.getMath70Command(); cs.command.put("-stopfirst", "true"); - cs.command.put("-parameters", "savesolution:false:" + "preservelinenumbers:true" + ":diff_type:relative"); + cs.command.put("-parameters", + "savesolution" + File.pathSeparator + "false" + File.pathSeparator + "" + "preservelinenumbers" + + File.pathSeparator + "true" + "" + File.pathSeparator + "diff_type" + File.pathSeparator + + "relative"); System.out.println(Arrays.toString(cs.flat())); main1.execute(cs.flat()); @@ -128,9 +146,18 @@ public void testMath70Diff_relative() throws Exception { String diff2 = variant.getPatchDiff().getOriginalStatementAlignmentDiff(); System.out.println("Patch original alignment: \n" + diff2); assertTrue(diff2.contains("return solve(f, min, max)")); - assertTrue( - diff2.startsWith("--- /src/main/java/org/apache/commons/math/analysis/solvers/BisectionSolver.java")); - assertTrue(diff2.contains("+++ /src/main/java/org/apache/commons/math/analysis/solvers/BisectionSolver.java")); + String envOS = System.getProperty("os.name"); + if (!envOS.contains("Windows")) { + assertTrue(diff2.startsWith("--- /src/main/java/org/apache/commons/math/analysis/solvers/BisectionSolver.java")); + assertTrue(diff2.contains("+++ /src/main/java/org/apache/commons/math/analysis/solvers/BisectionSolver.java")); + } else { + assertTrue(Pattern.compile( + "--- [^\r\n]*\\\\src\\\\main\\\\java\\\\org\\\\apache\\\\commons\\\\math\\\\analysis\\\\solvers\\\\BisectionSolver.java\n.*", + Pattern.DOTALL).matcher(diff2).matches()); + assertTrue(Pattern.compile( + ".*\\+\\+\\+ [^\r\n]*\\\\src\\\\main\\\\java\\\\org\\\\apache\\\\commons\\\\math\\\\analysis\\\\solvers\\\\BisectionSolver.java\n.*", + Pattern.DOTALL).matcher(diff2).matches()); + } String path_o = main1.getEngine().getProjectFacade().getInDirWithPrefix(variant.currentMutatorIdentifier()); assertTrue(new File(path_o + File.separator + PatchDiffCalculator.PATCH_DIFF_FILE_NAME).exists()); @@ -141,4 +168,4 @@ public void testMath70Diff_relative() throws Exception { } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/core/ValidationTest.java b/src/test/java/fr/inria/astor/test/repair/core/ValidationTest.java index fd01ebc39..057d3c515 100644 --- a/src/test/java/fr/inria/astor/test/repair/core/ValidationTest.java +++ b/src/test/java/fr/inria/astor/test/repair/core/ValidationTest.java @@ -72,8 +72,8 @@ public void testMath70LocalSolutionJUExLog() throws Exception { cs.command.put("-scope", "package"); cs.command.put("-maxgen", "200"); cs.command.put("-loglevel", "INFO"); - cs.command.put("-parameters", "disablelog:false"); - cs.append("-parameters", "logtestexecution:true"); + cs.command.put("-parameters", "disablelog" + File.pathSeparator + "false"); + cs.append("-parameters", "logtestexecution" + File.pathSeparator + "true"); assertEquals(4, cs.command.get("-parameters").split(File.pathSeparator).length); System.out.println(Arrays.toString(cs.flat())); @@ -85,4 +85,4 @@ public void testMath70LocalSolutionJUExLog() throws Exception { } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/core/solutionsearch/ProgramVariantFactoryTest.java b/src/test/java/fr/inria/astor/test/repair/core/solutionsearch/ProgramVariantFactoryTest.java index 048b003ec..2a1cf20e1 100644 --- a/src/test/java/fr/inria/astor/test/repair/core/solutionsearch/ProgramVariantFactoryTest.java +++ b/src/test/java/fr/inria/astor/test/repair/core/solutionsearch/ProgramVariantFactoryTest.java @@ -10,6 +10,7 @@ import spoon.reflect.cu.SourcePosition; import spoon.reflect.cu.position.NoSourcePosition; +import java.io.File; import java.util.List; import java.util.stream.Collectors; @@ -30,7 +31,8 @@ public void testProgramVariantFactory() throws Exception { command.command.put("-maxgen", "0"); command.command.put("-population", "1"); command.command.put("-scope", scope.toString().toLowerCase()); - command.command.put("-parameters", "disablelog:false:tmax2:6000"); + command.command.put("-parameters", "disablelog" + File.pathSeparator + "false" + File.pathSeparator + "tmax2" + + File.pathSeparator + "6000"); command.command.put("-maxVarCombination", "100"); AstorMain main = new AstorMain(); @@ -45,4 +47,4 @@ public void testProgramVariantFactory() throws Exception { // Confirm that there are no source positions that are instance of NoSourcePosition assertTrue(sourcePositions.stream().noneMatch(sourcePosition -> sourcePosition instanceof NoSourcePosition)); } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/FaultLocalizationExtensionTest.java b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/FaultLocalizationExtensionTest.java index 82754409d..2b09126f8 100644 --- a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/FaultLocalizationExtensionTest.java +++ b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/FaultLocalizationExtensionTest.java @@ -194,7 +194,8 @@ private AstorMain runMath85(String fltorun) throws Exception { csDefault.command.put("-maxgen", "0"); csDefault.command.put("-modificationpointnavigation", SuspiciousNavigationValues.WEIGHT.toString()); csDefault.command.put("-faultlocalization", fltorun); - csDefault.command.put("-parameters", "includeTestInSusp:true:loglevel:INFO"); + csDefault.command.put("-parameters", "includeTestInSusp" + File.pathSeparator + "true" + File.pathSeparator + + "loglevel" + File.pathSeparator + "INFO"); final Double flthreshold = 0.5; csDefault.command.put("-flthreshold", flthreshold.toString()); @@ -205,4 +206,4 @@ private AstorMain runMath85(String fltorun) throws Exception { return main1; } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/IngredientPoolTest.java b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/IngredientPoolTest.java index 3ee11dd7a..b80e723e7 100644 --- a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/IngredientPoolTest.java +++ b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/IngredientPoolTest.java @@ -513,7 +513,7 @@ public void testMath70WithCtLocationAvoidDuplicatesInSpace() throws Exception { "/target/test-classes", "-javacompliancelevel", "7", "-flthreshold", "0.5", "-out", out.getAbsolutePath(), "-stopfirst", "true", "-seed", "10", "-maxgen", "100", "-scope", CtLocationIngredientSpace.class.getCanonicalName(), "-parameters", - "duplicateingredientsinspace:false" }; + "duplicateingredientsinspace" + File.pathSeparator + "false" }; System.out.println(Arrays.toString(args)); main1.execute(args); @@ -545,7 +545,7 @@ public void testMath70WithCtLocationAvoidDuplicatesInSpace() throws Exception { // Now, with duplicates: CommandSummary cs = new CommandSummary(args); - cs.command.put("-parameters", "duplicateingredientsinspace:true"); + cs.command.put("-parameters", "duplicateingredientsinspace" + File.pathSeparator + "true"); main1.execute(cs.flat()); jgp = (JGenProg) main1.getEngine(); pv = solutions.get(0); @@ -559,4 +559,4 @@ public void testMath70WithCtLocationAvoidDuplicatesInSpace() throws Exception { } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/IngredientScopeTest.java b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/IngredientScopeTest.java index e370c4983..52f80903c 100644 --- a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/IngredientScopeTest.java +++ b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/IngredientScopeTest.java @@ -45,7 +45,7 @@ public void testMath70LocalSimple() throws Exception { cs.command.put("-stopfirst", "true"); cs.command.put("-loglevel", "INFO"); cs.command.put("-saveall", "true"); - cs.append("-parameters", ("logtestexecution:true")); + cs.append("-parameters", ("logtestexecution" + File.pathSeparator + "true")); System.out.println(Arrays.toString(cs.flat())); main1.execute(cs.flat()); @@ -74,7 +74,8 @@ public void testMath70LocalSimpleAutocompile() throws Exception { cs.command.put("-stopfirst", "true"); cs.command.put("-loglevel", "DEBUG"); cs.command.put("-saveall", "true"); - cs.append("-parameters", ("logtestexecution:true:autocompile:true")); + cs.append("-parameters", ("logtestexecution" + File.pathSeparator + "true" + File.pathSeparator + "autocompile" + + File.pathSeparator + "true")); System.out.println(Arrays.toString(cs.flat())); main1.execute(cs.flat()); @@ -184,7 +185,7 @@ public void testMath70PackageSolutions() throws Exception { "-scope", "package", "-seed", "10", "-maxgen", "2000", "-stopfirst", "false", "-maxtime", "10", "-population", "1", "-reintroduce", PopulationConformation.PARENTS.toString(), // Parameters: - "-parameters", "maxnumbersolutions:2" };// Two ingredients from package + "-parameters", "maxnumbersolutions" + File.pathSeparator + "2" };// Two ingredients from package System.out.println(Arrays.toString(args)); main1.execute(args); @@ -192,4 +193,4 @@ public void testMath70PackageSolutions() throws Exception { assertEquals(AstorOutputStatus.STOP_BY_PATCH_FOUND, main1.getEngine().getOutputStatus()); assertEquals(2, solutions.size()); } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/MultiPatchTest.java b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/MultiPatchTest.java index a7e6a0f06..1bba28fd3 100644 --- a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/MultiPatchTest.java +++ b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/ingredients/MultiPatchTest.java @@ -55,7 +55,8 @@ public void testMath70Steps() throws Exception { // "-loglevel", "INFO", "-scope", "package", "-seed", "10", "-maxgen", "0", "-stopfirst", "false", "-maxtime", "10", "-population", "1", "-reintroduce", PopulationConformation.PARENTS.toString(), - "-parameters", "logtestexecution:true:saveall:true" }; + "-parameters", "logtestexecution" + File.pathSeparator + "true" + File.pathSeparator + "saveall" + + File.pathSeparator + "true" }; System.out.println(Arrays.toString(args)); main1.execute(args); @@ -131,7 +132,8 @@ public void testMath70StepsInverted1() throws Exception { // "-loglevel", "INFO", "-scope", "package", "-seed", "10", "-maxgen", "0", "-stopfirst", "false", "-maxtime", "10", "-population", "1", "-reintroduce", PopulationConformation.PARENTS.toString(), - "-parameters", "logtestexecution:true:saveall:true" }; + "-parameters", "logtestexecution" + File.pathSeparator + "true" + File.pathSeparator + "saveall" + + File.pathSeparator + "true" }; System.out.println(Arrays.toString(args)); main1.execute(args); @@ -201,7 +203,7 @@ public void testMath70PriorityLocalSolution() throws Exception { "/target/test-classes", "-javacompliancelevel", "7", "-flthreshold", "1", "-out", out.getAbsolutePath(), "-scope", "package", "-seed", "10", "-maxgen", "10000", "-stopfirst", "false", "-maxtime", "15", // "-patchprioritization", IdentifierPriorityCriterion.class.getName(), "-parameters", - "maxnumbersolutions:2" + "maxnumbersolutions" + File.pathSeparator + "2" }; System.out.println(Arrays.toString(args)); @@ -231,7 +233,7 @@ public void testMath70Multi() throws Exception { // "-scope", "package", "-seed", "10", "-maxgen", "2000", "-stopfirst", "false", "-maxtime", "10", "-population", "1", "-reintroduce", PopulationConformation.PARENTS.toString(), "-parameters", - "maxnumbersolutions:2" }; + "maxnumbersolutions" + File.pathSeparator + "2" }; System.out.println(Arrays.toString(args)); main1.execute(args); @@ -280,4 +282,4 @@ private OperatorInstance createSecondPatch(ProgramVariant variant, ModificationP return operation; } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/operatorselection/SelectionOperatorTest.java b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/operatorselection/SelectionOperatorTest.java index ee3b2a9f4..d22cb08b2 100644 --- a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/operatorselection/SelectionOperatorTest.java +++ b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/operatorselection/SelectionOperatorTest.java @@ -4,6 +4,8 @@ import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; +import java.io.File; + import org.junit.Before; import org.junit.Test; @@ -32,7 +34,7 @@ public void testWeightedRandom() throws Exception { csDefault.command.put("-maxgen", "0"); csDefault.command.put("-opselectionstrategy", WeightedRandomOperatorSelection.class.getName()); - csDefault.append("-parameters", "weightsopselection:0.25_0.25_0.25_0.25"); + csDefault.append("-parameters", "weightsopselection" + File.pathSeparator + "0.25_0.25_0.25_0.25"); AstorMain main1 = new AstorMain(); main1.execute(csDefault.flat()); @@ -47,7 +49,7 @@ public void testWeightedRandom1Exception() throws Exception { CommandSummary csDefault = MathCommandsTests.getMath70Command(); csDefault.command.put("-maxgen", "0"); csDefault.command.put("-opselectionstrategy", WeightedRandomOperatorSelection.class.getName()); - csDefault.append("-parameters", "weightsopselection:0.25"); + csDefault.append("-parameters", "weightsopselection" + File.pathSeparator + "0.25"); AstorMain main1 = new AstorMain(); main1.execute(csDefault.flat()); fail(); @@ -60,7 +62,7 @@ public void testWeightedRandom1Exception() throws Exception { CommandSummary csDefault = MathCommandsTests.getMath70Command(); csDefault.command.put("-maxgen", "0"); csDefault.command.put("-opselectionstrategy", WeightedRandomOperatorSelection.class.getName()); - csDefault.append("-parameters", "weightsopselection:0.a5_0.25_0.25_0.25"); + csDefault.append("-parameters", "weightsopselection" + File.pathSeparator + "0.a5_0.25_0.25_0.25"); AstorMain main1 = new AstorMain(); main1.execute(csDefault.flat()); fail(); @@ -75,7 +77,7 @@ public void testWeightedRandom1Operator() throws Exception { csDefault.command.put("-maxgen", "0"); csDefault.command.put("-opselectionstrategy", WeightedRandomOperatorSelection.class.getName()); - csDefault.append("-parameters", "weightsopselection:1_0.0_0.0_0.0"); + csDefault.append("-parameters", "weightsopselection" + File.pathSeparator + "1_0.0_0.0_0.0"); AstorMain main1 = new AstorMain(); main1.execute(csDefault.flat()); @@ -92,4 +94,4 @@ public void testWeightedRandom1Operator() throws Exception { } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/patchsorting/PatchPriorizationTest.java b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/patchsorting/PatchPriorizationTest.java index e890a216c..ba3dcc2f2 100644 --- a/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/patchsorting/PatchPriorizationTest.java +++ b/src/test/java/fr/inria/astor/test/repair/evaluation/extensionpoints/patchsorting/PatchPriorizationTest.java @@ -36,7 +36,7 @@ public void testMath70PriorityLocalSolution() throws Exception { out.getAbsolutePath(), "-scope", "package", "-seed", "10", "-maxgen", "10000", "-stopfirst", "false", "-maxtime", "15", // "-patchprioritization", IdentifierPriorityCriterion.class.getName(), "-parameters", - "maxnumbersolutions:2" + "maxnumbersolutions" + File.pathSeparator + "2" }; System.out.println(Arrays.toString(args)); @@ -50,4 +50,4 @@ public void testMath70PriorityLocalSolution() throws Exception { assertEquals(AstorOutputStatus.STOP_BY_PATCH_FOUND, main1.getEngine().getOutputStatus()); } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/evaluation/regression/LangTest.java b/src/test/java/fr/inria/astor/test/repair/evaluation/regression/LangTest.java index 1e4ab6b34..2254e4bc3 100644 --- a/src/test/java/fr/inria/astor/test/repair/evaluation/regression/LangTest.java +++ b/src/test/java/fr/inria/astor/test/repair/evaluation/regression/LangTest.java @@ -49,7 +49,7 @@ public void testLang63OneSingle() throws Exception { String[] args = commandLang63(dep, out, stepbystep); CommandSummary command = new CommandSummary(args); System.out.println(Arrays.toString(command.flat())); - command.command.put("-parameters", "logtestexecution:true"); + command.command.put("-parameters", "logtestexecution" + File.pathSeparator + "true"); command.command.put("-population", "1"); command.command.put("-mode", "jkali"); main1.execute(command.flat()); @@ -74,7 +74,7 @@ public void testLang63OneSingleJUnitNologExternalExecutor() throws Exception { CommandSummary command = new CommandSummary(args); System.out.println(Arrays.toString(command.flat())); String save = "true"; - command.command.put("-parameters", "logtestexecution:" + save); + command.command.put("-parameters", "logtestexecution" + File.pathSeparator + "" + save); command.command.put("-population", "1"); command.command.put("-mode", "jkali"); main1.execute(command.flat()); @@ -213,4 +213,4 @@ private String getLangCommonLibs() { return dep; } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/evaluation/regression/MathCommandsTests.java b/src/test/java/fr/inria/astor/test/repair/evaluation/regression/MathCommandsTests.java index dc5bfd92d..f33debdf0 100644 --- a/src/test/java/fr/inria/astor/test/repair/evaluation/regression/MathCommandsTests.java +++ b/src/test/java/fr/inria/astor/test/repair/evaluation/regression/MathCommandsTests.java @@ -199,14 +199,17 @@ public void testMath1() throws Exception { String[] args = new String[] { "-dependencies", dep, "-mode", "jgenprog", // "-failing", - "org.apache.commons.math3.fraction.FractionTest:org.apache.commons.math3.fraction.BigFractionTest", + "org.apache.commons.math3.fraction.FractionTest" + File.pathSeparator + + "org.apache.commons.math3.fraction.BigFractionTest", "-location", new File("./examples/math_1").getAbsolutePath(), "-package", "org.apache.commons", "-srcjavafolder", "/src/main/java/ ", "-srctestfolder", "/src/test/java/", "-binjavafolder", "/target/classes", "-bintestfolder", "/target/test-classes", "-javacompliancelevel", "5", "-flthreshold", "0.1", "-out", out.getAbsolutePath(), // "-seed", "11", "-maxgen", "50", "-stopfirst", "true", "-maxtime", "100", // ExtensionPoints.REPAIR_OPERATORS.argument(), - "fr.inria.astor.approaches.jgenprog.operators.InsertAfterOp:fr.inria.astor.approaches.jgenprog.operators.InsertBeforeOp:fr.inria.astor.approaches.jgenprog.operators.ReplaceOp", + "fr.inria.astor.approaches.jgenprog.operators.InsertAfterOp" + File.pathSeparator + + "fr.inria.astor.approaches.jgenprog.operators.InsertBeforeOp" + File.pathSeparator + + "fr.inria.astor.approaches.jgenprog.operators.ReplaceOp", "-scope", "fr.inria.astor.core.loop.spaces.ingredients.scopes.ctscopes.CtGlobalIngredientScope", "-ingredientstrategy", "fr.inria.astor.core.loop.spaces.ingredients.ingredientSearch.CloneIngredientSearchStrategy", @@ -221,4 +224,4 @@ public void testMath1() throws Exception { // assertTrue(solutions.size() > 0); } -} +} \ No newline at end of file diff --git a/src/test/java/fr/inria/astor/test/repair/evaluation/regression/RepairnatorTest.java b/src/test/java/fr/inria/astor/test/repair/evaluation/regression/RepairnatorTest.java index 5774b2527..59822842d 100644 --- a/src/test/java/fr/inria/astor/test/repair/evaluation/regression/RepairnatorTest.java +++ b/src/test/java/fr/inria/astor/test/repair/evaluation/regression/RepairnatorTest.java @@ -37,11 +37,10 @@ public void testjsoup285353482() throws Exception { throw new Exception(m2path + "does not exit"); } - String[] command = new String[] { "-dependencies", - m2path + "/junit/junit/4.12/junit-4.12.jar:" + m2path - + "/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:" + m2path - + "/com/google/code/gson/gson/2.7/gson-2.7.jar", - "-mode", "jgenprog", "-location", + String[] command = new String[] { "-dependencies", m2path + "/junit/junit/4.12/junit-4.12.jar" + + File.pathSeparator + "" + m2path + "/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar" + + File.pathSeparator + "" + m2path + "/com/google/code/gson/gson/2.7/gson-2.7.jar", "-mode", "jgenprog", + "-location", new File("./examples/librepair-experiments-jhy-jsoup-285353482-20171009-062400_bugonly") .getAbsolutePath(), "-srcjavafolder", "/src/main/java", // Modified by M.M, original @@ -56,7 +55,10 @@ public void testjsoup285353482() throws Exception { // sent // by // S.U. - "-parameters", "timezone:Europe/Paris:maxnumbersolutions:3:limitbysuspicious:false:" + "loglevel:DEBUG", + "-parameters", + "timezone" + File.pathSeparator + "Europe/Paris" + File.pathSeparator + "maxnumbersolutions" + + File.pathSeparator + "3" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + + "false" + File.pathSeparator + "" + "loglevel" + File.pathSeparator + "DEBUG", "-maxtime", "100", "-seed", "1" }; CommandSummary cs = new CommandSummary(command); AstorMain main1 = new AstorMain(); @@ -76,11 +78,10 @@ public void testjsoup285353482WithPackageInfo() throws Exception { throw new Exception(m2path + "does not exit"); } - String[] command = new String[] { "-dependencies", - m2path + "/junit/junit/4.12/junit-4.12.jar:" + m2path - + "/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:" + m2path - + "/com/google/code/gson/gson/2.7/gson-2.7.jar", - "-mode", "jgenprog", "-location", + String[] command = new String[] { "-dependencies", m2path + "/junit/junit/4.12/junit-4.12.jar" + + File.pathSeparator + "" + m2path + "/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar" + + File.pathSeparator + "" + m2path + "/com/google/code/gson/gson/2.7/gson-2.7.jar", "-mode", "jgenprog", + "-location", new File( "./examples/librepair-experiments-jhy-jsoup-285353482-20171009-062400_bugonly_with_package_info") .getAbsolutePath(), @@ -96,7 +97,10 @@ public void testjsoup285353482WithPackageInfo() throws Exception { // sent // by // S.U. - "-parameters", "timezone:Europe/Paris:maxnumbersolutions:3:limitbysuspicious:false:" + "loglevel:DEBUG", + "-parameters", + "timezone" + File.pathSeparator + "Europe/Paris" + File.pathSeparator + "maxnumbersolutions" + + File.pathSeparator + "3" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + + "false" + File.pathSeparator + "" + "loglevel" + File.pathSeparator + "DEBUG", "-maxtime", "100", "-seed", "1" }; CommandSummary cs = new CommandSummary(command); AstorMain main1 = new AstorMain(); @@ -123,7 +127,7 @@ public void testMath70AbsolutesPaths() throws Exception { "-bintestfolder", new File("./examples/math_70").getAbsolutePath() + "/target/test-classes", // "-javacompliancelevel", "7", "-flthreshold", "0.5", "-out", out.getAbsolutePath(), "-scope", "local", "-seed", "10", "-maxgen", Integer.toString(generations), "-stopfirst", "true", "-maxtime", "100", - "-loglevel", "INFO", "-parameters", "disablelog:false" + "-loglevel", "INFO", "-parameters", "disablelog" + File.pathSeparator + "false" }; @@ -158,7 +162,7 @@ public void testMath70WrongPaths() throws Exception { "-bintestfolder", new File("./examples/math_70").getAbsolutePath() + "/target/test-classes", // "-javacompliancelevel", "7", "-flthreshold", "0.5", "-out", out.getAbsolutePath(), "-scope", "local", "-seed", "10", "-maxgen", Integer.toString(generations), "-stopfirst", "true", "-maxtime", "100", - "-loglevel", "INFO", "-parameters", "disablelog:false" + "-loglevel", "INFO", "-parameters", "disablelog" + File.pathSeparator + "false" }; @@ -207,7 +211,12 @@ public void testAsc() throws Exception { "/root/workspace/AsyncHttpClient/async-http-client/285409364/client", "-srcjavafolder", "/root/workspace/AsyncHttpClient/async-http-client/285409364/client/src/main/java", "-stopfirst", "true", "-population", "1", "-parameters", - "timezone:Europe/Paris:maxnumbersolutions:3:limitbysuspicious:false:maxmodificationpoints:1000:javacompliancelevel:8:logfilepath:./workspace/AsyncHttpClient/async-http-client/285409364/repairnator.astor.log", + "timezone" + File.pathSeparator + "Europe/Paris" + File.pathSeparator + "maxnumbersolutions" + + File.pathSeparator + "3" + File.pathSeparator + "limitbysuspicious" + File.pathSeparator + + "false" + File.pathSeparator + "maxmodificationpoints" + File.pathSeparator + "1000" + + File.pathSeparator + "javacompliancelevel" + File.pathSeparator + "8" + File.pathSeparator + + "logfilepath" + File.pathSeparator + + "./workspace/AsyncHttpClient/async-http-client/285409364/repairnator.astor.log", "-maxtime", "100", "-seed", "1" }; CommandSummary cs = new CommandSummary(command); AstorMain main1 = new AstorMain(); @@ -215,4 +224,4 @@ public void testAsc() throws Exception { } -} +} \ No newline at end of file From 55741e56aa96e38ff9b2f246c31c7750143bcb8f Mon Sep 17 00:00:00 2001 From: "ginellidavide@gmail.com" Date: Tue, 28 Jan 2020 03:02:25 -0800 Subject: [PATCH 4/8] Managed the cleaning of the workspace Astor now removes the Program Variant files (that are not solutions) contained in the bin folder when the option "saveall" is not set. Before the changing, even if the option "saveall" was not set, Astor didn't remove the .class files associated with the Program Variants that were not solutions. --- analysis-log.py | 30 ++ debug-DynaMoth-log | 64 +++ debug.log | 183 ++++++++ diagnostics.log | 0 foo | 32 ++ .../astor/core/setup/ProjectRepairFacade.java | 14 +- .../core/solutionsearch/AstorCoreEngine.java | 11 + .../astor/test/FaultLocalizationTest.java | 3 +- trace1 | 44 ++ trace2 | 155 +++++++ trace3 | 414 ++++++++++++++++++ 11 files changed, 942 insertions(+), 8 deletions(-) create mode 100644 analysis-log.py create mode 100644 debug-DynaMoth-log create mode 100644 debug.log create mode 100644 diagnostics.log create mode 100644 foo create mode 100644 trace1 create mode 100644 trace2 create mode 100644 trace3 diff --git a/analysis-log.py b/analysis-log.py new file mode 100644 index 000000000..fdae379a4 --- /dev/null +++ b/analysis-log.py @@ -0,0 +1,30 @@ + +last = 0 +l = [] +n=1 +for line in open('foo').read().split("\n"): + #print(line) + if 'DEBUG' in line or 'WARN' in line or 'INFO' in line: + if ':' not in line[0:5]: continue + + l.append(line[6:]) + #print(line[0:5]) + timeh, timem = line[0:5].split(':') + #print(timeh, timem) + time_min = int(timeh) * 60 + int(timem) + #print(time_min) + #if 'WARN' in line: print(time_min - last ) + + if 'WARN' in line and (time_min - last > 4): + fname = 'trace'+str(n) + with open(fname, 'w') as f: f.write("\n".join(l)) + l = [] + n+=1 + print(fname, line) + + if 'WARN' in line: + last = time_min + + #last = + #print(time_min) + diff --git a/debug-DynaMoth-log b/debug-DynaMoth-log new file mode 100644 index 000000000..23b523946 --- /dev/null +++ b/debug-DynaMoth-log @@ -0,0 +1,64 @@ +MyBuggyTest#testOperation1 +. +Time: 0.068 + +OK (1 test) + +MyBuggyTest#testOperation2 +. +Time: 0.023 + +OK (1 test) + +MyBuggyTest#testOperation3 +.E +Time: 0.013 +There was 1 failure: +1) testOperation3(MyBuggyTest) +java.lang.AssertionError: expected:<2> but was:<1> + at org.junit.Assert.fail(Assert.java:74) + at org.junit.Assert.failNotEquals(Assert.java:448) + at org.junit.Assert.assertEquals(Assert.java:102) + at org.junit.Assert.assertEquals(Assert.java:117) + at MyBuggyTest.testOperation3(MyBuggyTest.java:48) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:497) + at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59) + at org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98) + at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79) + at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87) + at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77) + at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42) + at org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88) + at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51) + at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44) + at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27) + at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37) + at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42) + at org.junit.runner.JUnitCore.run(JUnitCore.java:130) + at org.junit.runner.JUnitCore.run(JUnitCore.java:109) + at fr.inria.astor.core.manipulation.synthesis.dynamoth.MethodTestRunner.runTest(MethodTestRunner.java:48) + at fr.inria.astor.core.manipulation.synthesis.dynamoth.MethodTestRunner.access$000(MethodTestRunner.java:16) + at fr.inria.astor.core.manipulation.synthesis.dynamoth.MethodTestRunner$1.call(MethodTestRunner.java:24) + at java.util.concurrent.FutureTask.run(FutureTask.java:266) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) + at java.lang.Thread.run(Thread.java:745) + +FAILURES!!! +Tests run: 1, Failures: 1 + +MyBuggyTest#testOperation4 +. +Time: 0.023 + +OK (1 test) + +MyBuggyTest#testOperation5 +. +Time: 0.025 + +OK (1 test) + diff --git a/debug.log b/debug.log new file mode 100644 index 000000000..fb3b38d94 --- /dev/null +++ b/debug.log @@ -0,0 +1,183 @@ +15:19:14.308 f.i.l.r.s.c.SpoonElementsCollector - [data] i2=1 +15:19:14.311 f.i.l.r.s.c.SpoonElementsCollector - [data] i1=2 +15:19:14.314 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:19:14.315 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) +15:19:14.316 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:19:14.316 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:19:14.317 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:19:14.339 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:19:14.415 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 8 elements +15:19:14.482 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 10382 evaluated elements +15:19:37.791 f.i.l.r.s.c.SpoonElementsCollector - [data] i2=1 +15:19:37.791 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:19:37.791 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) +15:19:37.792 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:19:37.792 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:19:37.793 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:19:37.806 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:19:37.886 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 8 elements +15:19:37.940 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 10382 evaluated elements +15:19:46.235 f.i.l.r.s.c.spoon.ClassCollector - [class] java.lang.String +15:19:46.240 f.i.l.r.s.c.SpoonElementsCollector - [data] "-"="-" +15:19:46.241 f.i.l.r.s.c.SpoonElementsCollector - [data] type="p" +15:19:46.242 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:19:46.242 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) +15:19:46.242 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:19:46.243 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:19:46.243 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:19:46.253 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:19:46.259 f.i.l.r.s.c.SpoonElementsCollector - [data] "-"="-" +15:19:46.260 f.i.l.r.s.c.SpoonElementsCollector - [data] type="i" +15:19:46.260 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:19:46.260 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) +15:19:46.261 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:19:46.261 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:19:46.262 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:19:46.268 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:19:46.346 f.i.l.r.s.c.SpoonElementsCollector - [data] "-"="-" +15:19:46.347 f.i.l.r.s.c.SpoonElementsCollector - [data] type="gr" +15:19:46.347 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:19:46.347 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=398) +15:19:46.348 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:19:46.348 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:19:46.349 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:19:46.354 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:19:46.361 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 9 elements +15:19:46.403 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 10411 evaluated elements +15:20:15.083 f.i.l.r.s.c.spoon.ClassCollector - [class] java.lang.String +15:20:15.096 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 0 elements +15:20:15.096 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 0 evaluated elements +15:20:43.774 f.i.l.r.s.c.spoon.ClassCollector - [class] java.lang.String +15:20:43.778 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" +15:20:43.779 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" +15:20:43.779 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:20:43.779 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) +15:20:43.780 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:20:43.780 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:20:43.781 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:20:43.787 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:20:43.793 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" +15:20:43.793 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" +15:20:43.793 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:20:43.794 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) +15:20:43.794 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:20:43.794 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:20:43.795 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:20:43.798 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:20:43.863 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" +15:20:43.864 f.i.l.r.s.c.SpoonElementsCollector - [data] type="p" +15:20:43.864 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:20:43.864 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=397) +15:20:43.865 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:20:43.865 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:20:43.866 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:20:43.871 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:20:43.873 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" +15:20:43.874 f.i.l.r.s.c.SpoonElementsCollector - [data] type="i" +15:20:43.875 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:20:43.875 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=397) +15:20:43.875 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:20:43.876 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:20:43.876 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:20:43.881 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:20:43.887 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" +15:20:43.888 f.i.l.r.s.c.SpoonElementsCollector - [data] type="gr" +15:20:43.888 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:20:43.888 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=402) +15:20:43.889 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:20:43.889 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:20:43.889 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:20:43.894 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:20:43.903 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" +15:20:43.903 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" +15:20:43.903 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:20:43.903 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=416) +15:20:43.904 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:20:43.904 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:20:43.905 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:20:43.909 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:20:43.911 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" +15:20:43.911 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" +15:20:43.912 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:20:43.912 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=416) +15:20:43.912 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:20:43.912 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:20:43.913 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:20:43.916 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:20:43.919 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 9 elements +15:20:43.958 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 10411 evaluated elements +15:21:17.886 f.i.l.r.s.c.spoon.ClassCollector - [class] java.lang.String +15:21:17.895 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" +15:21:17.897 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" +15:21:17.897 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:21:17.897 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) +15:21:17.898 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:21:17.898 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:21:17.901 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:21:17.910 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:21:17.921 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" +15:21:17.922 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" +15:21:17.922 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:21:17.922 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) +15:21:17.923 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:21:17.924 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:21:17.925 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:21:17.935 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:21:18.031 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" +15:21:18.032 f.i.l.r.s.c.SpoonElementsCollector - [data] type="p" +15:21:18.032 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:21:18.032 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=397) +15:21:18.032 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:21:18.033 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:21:18.033 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:21:18.038 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:21:18.041 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" +15:21:18.042 f.i.l.r.s.c.SpoonElementsCollector - [data] type="i" +15:21:18.043 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:21:18.043 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=397) +15:21:18.043 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:21:18.044 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:21:18.044 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:21:18.050 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:21:18.056 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" +15:21:18.057 f.i.l.r.s.c.SpoonElementsCollector - [data] type="gr" +15:21:18.058 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:21:18.058 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=402) +15:21:18.058 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:21:18.058 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:21:18.059 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:21:18.064 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:21:18.075 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" +15:21:18.075 f.i.l.r.s.c.SpoonElementsCollector - [data] type="*" +15:21:18.075 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:21:18.075 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=416) +15:21:18.076 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:21:18.076 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:21:18.077 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:21:18.082 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:21:18.084 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" +15:21:18.085 f.i.l.r.s.c.SpoonElementsCollector - [data] type="*" +15:21:18.085 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:21:18.085 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=416) +15:21:18.086 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:21:18.086 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:21:18.087 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:21:18.094 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:21:18.099 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" +15:21:18.099 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" +15:21:18.099 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:21:18.100 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=420) +15:21:18.100 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:21:18.100 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:21:18.101 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:21:18.105 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:21:18.113 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" +15:21:18.114 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" +15:21:18.114 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 +15:21:18.114 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=420) +15:21:18.115 f.i.l.r.s.c.DynamothDataCollector - [data] i1 +15:21:18.115 f.i.l.r.s.c.DynamothDataCollector - [data] i2 +15:21:18.115 f.i.l.r.s.c.DynamothDataCollector - [data] type +15:21:18.121 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() +15:21:18.127 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 9 elements +15:21:18.190 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 10411 evaluated elements diff --git a/diagnostics.log b/diagnostics.log new file mode 100644 index 000000000..e69de29bb diff --git a/foo b/foo new file mode 100644 index 000000000..6c9d7b618 --- /dev/null +++ b/foo @@ -0,0 +1,32 @@ + +We have worked on two fronts: using sequence-to-sequence learning to automatically repair programs and metaprogramming for fixing static analysis warnings. + +\textbf{Repair with sequence-to-sequence learning} Sequence-to-sequence (seq2seq) learning is a branch of machine learning, mostly used for machine translation: the algorithm seq2seq learns to translate text from one language (say French) to another language (say Swedish) by generalizing over large amounts of sentence pairs from French to Swedish. In the context of program repair, we learn to 'translate' from one sequence of program tokens (a buggy program) to a different sequence of program tokens (a fixed program). The training data is readily available: we have millions of commits in open-source code repositories. Yet, we still have major challenges to overcome when it comes to using sequence-to-sequence learning on code: +\begin{enumerate*} + \item the raw data is rather noisy; one must deploy significant effort to identify and curate commits that focus on a clear task, in particular a bugg fixing task; + \item contrary to natural language, usage of rare words (identifiers, numbers, etc) is often fatal in machine learning on code; in natural language some errors may be tolerable thanks to the intelligence of the human reader while in programming languages the compiler (or interpreter) is strict + \item in natural language, the dependencies are often in the same sentence (``it'' refers to ``dog'' just before) , or within a couple of sentences, while in programming, the dependencies have a longer range: one may use a variable that has been declared dozens of lines before. +\end{enumerate*} + +In Trustfull, we have realized an end-to-end program repair approach which works as follows. +First, we focus on one-line fixes: we predict the fixed version of a buggy line. For this, we create a carefully curated training and testing dataset of one-line commits. +Second, we devise a sequence-to-sequence network architecture that is specifically designed to address the two main aforementioned challenges. +To address the unlimited vocabulary problem, we use the copy mechanism; this allows us to predict the fixed line, even if the fix contains a token that was too rare to be considered in the vocabulary (i.e. an API call that appears only in few cases, or a rare identifier used only in one class). This copy mechanism works even if the fixed line should contain tokens which were not in the training set. +To address the dependency problem, we have devised an \textit{abstract buggy context} from the buggy class, which captures the most important context around the buggy source code and reduces the complexity of the input sequence. This enables us to capture long range dependencies that are required for the fix. + +To sum up, our contribution is an approach for fixing bugs based on sequence-to-sequence learning on token sequences. This approach uses the copy mechanism to overcome the unlimited vocabulary problem in source code. We have evaluated our approach on 4,711 real bug fixing tasks. Our golden trained model is able to perfectly fix 950/4,711 testing samples. We have provided unique qualitative insights of interesting repair operators captured by sequence-to-sequence learning on the considered training dataset. +We are now extending this work to repair security vulnearbilities in C code. + +\textbf{Repair with metaprogramming} +Static analysis can uncover a multitude +of bugs in a reasonable time frame but +is plagued by issues such as high false-positive alert rates and unclear +calls to action, making it underutilized considering the benefits it can bring +with its bug-finding abilities. We have worked to reduce the shortcomings of +static analysis by implementing and evaluating a metaprogramming approach for +automatically repairing bugs found by static analysis. The approach is implemented for Java to repair the warnings identified by SonarQube, the leading static analyzer for Java. +Our results show that +the approach and developed tool are valuable to decrease the number of problems which static analysis finds. Two possible ways of integrating the +created tool into existing developer workflows are prototyped and a compar- +ison with a similar tool is performed to showcase the different approaches’ +differences, strengths and weaknesses. diff --git a/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java b/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java index 051e6744a..66eb96781 100644 --- a/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java +++ b/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java @@ -80,24 +80,26 @@ public void copyOriginalSourceCode(String pathOriginalCode, String currentMutato */ public void cleanMutationResultDirectories(String currentMutatorIdentifier) throws IOException { - removeDir(getProperties().getWorkingDirForSource() + File.separator + currentMutatorIdentifier); - removeDir(getProperties().getWorkingDirForBytecode() + File.separator + currentMutatorIdentifier); + removeDir(getProperties().getWorkingDirForSource() + File.separator + currentMutatorIdentifier, false); + removeDir(getProperties().getWorkingDirForBytecode() + File.separator + currentMutatorIdentifier, false); } public void cleanMutationResultDirectories() throws IOException { - removeDir(getProperties().getWorkingDirForSource()); - removeDir(getProperties().getWorkingDirForBytecode()); + removeDir(getProperties().getWorkingDirForSource(), true); + removeDir(getProperties().getWorkingDirForBytecode(), true); } - private void removeDir(String dir) throws IOException { + private void removeDir(String dir, boolean isFolderToBeRecreated) throws IOException { File dirin = new File(dir); try { FileUtils.deleteDirectory(dirin); } catch (Exception ex) { logger.error("ex: " + ex.getMessage()); } - dirin.mkdir(); + if (isFolderToBeRecreated) { + dirin.mkdir(); + } } public boolean copyOriginalBin(List inDirs, String mutatorIdentifier) throws IOException { diff --git a/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java b/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java index d7427059d..69b37429b 100644 --- a/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java +++ b/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java @@ -251,6 +251,14 @@ public ExecutionResult atEnd() { fw.close(); } } + if (!ConfigurationProperties.getPropertyBool("saveall")) { + try { + projectFacade.cleanMutationResultDirectories(ProgramVariant.DEFAULT_ORIGINAL_VARIANT); + } catch (IOException e) { + e.printStackTrace(); + log.error(e); + } + } } catch (Exception e1) { e1.printStackTrace(); } @@ -563,6 +571,9 @@ public boolean processCreatedVariant(ProgramVariant programVariant, int generati saveVariant(programVariant); return true; + } else if (!ConfigurationProperties.getPropertyBool("saveall")) { + projectFacade.cleanMutationResultDirectories( + ConfigurationProperties.getProperty("pvariantfoldername") + programVariant.getId()); } } else { log.debug("-The child does NOT compile: " + programVariant.getId() + ", errors: " diff --git a/src/test/java/fr/inria/astor/test/FaultLocalizationTest.java b/src/test/java/fr/inria/astor/test/FaultLocalizationTest.java index fd3631877..eaa0c4c50 100644 --- a/src/test/java/fr/inria/astor/test/FaultLocalizationTest.java +++ b/src/test/java/fr/inria/astor/test/FaultLocalizationTest.java @@ -9,7 +9,6 @@ import java.util.Arrays; import java.util.List; -import org.fest.util.Files; import org.junit.Test; import fr.inria.astor.core.entities.ProgramVariant; @@ -199,7 +198,7 @@ private void helperLimitedTestAndClassesFromFile(FaultLocalization fl) throws Ex String anotherTestClassToRun = "org.apache.commons.math.estimation.LevenbergMarquardtEstimatorTest"; String thirdTestclassToRun = "org.apache.commons.math.estimation.WeightedMeasurementTest"; - File ft = Files.newTemporaryFile(); + File ft = File.createTempFile("astortmp",""); FileWriter fw = new FileWriter(ft); fw.write(oneFailingTestClassToRun); diff --git a/trace1 b/trace1 new file mode 100644 index 000000000..e58256349 --- /dev/null +++ b/trace1 @@ -0,0 +1,44 @@ +[INFO] fr.inria.astor.core.setup.ProjectConfiguration:282 - Version of the JVM used: 1.8.0_40 +[INFO] main:404 - Java version of the JDK used to run tests: 1.8.0_40 +[INFO] main:405 - The compliance of the JVM is: 8 +[INFO] main:666 - command line arguments: [-dependencies /home/martin/martin-no-backup/astor/./examples/libs/junit-4.4.jar -mode jgenprog -location /home/martin/martin-no-backup/astor/./examples/math_70 -package org.apache.commons -srcjavafolder /src/java/ -srctestfolder /src/test/ -binjavafolder /target/classes -bintestfolder /target/test-classes -javacompliancelevel 7 -flthreshold 0.5 -out /home/martin/martin-no-backup/astor/./output_astor -maxgen 0] +[INFO] fr.inria.main.evolution.AstorMain:210 - Running Astor on a JDK at /home/martin/martin-no-backup/jdk1.8.0_40/jre +[INFO] main:984 - Source folders: [/home/martin/martin-no-backup/astor/./examples/math_70/src/main/java] +[INFO] main:1003 - Source Test folders: [/home/martin/martin-no-backup/astor/./examples/math_70/src/test] +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:762 - ---- Creating spoon model +[INFO] main:236 - Creating model, Code location from working folder: /home/martin/martin-no-backup/astor/./examples/math_70/src/main/java +[INFO] main:67 - building model: /home/martin/martin-no-backup/astor/./examples/math_70/src/main/java, compliance level: 8 +[INFO] main:81 - Classpath (Dependencies) for building SpoonModel: [/home/martin/martin-no-backup/astor/./examples/libs/junit-4.4.jar] +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:779 - Number of CtTypes created: 416 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:900 - Test retrieved from classes: 238 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:68 - -Executing Gzoltar classpath: /home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_70//bin//default from 238 classes with test cases +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:148 - Gzoltar fault localization: min susp value parameter: 0.5 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:168 - -gz-Adding classpath: [/home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_70//bin//default, /home/martin/martin-no-backup/astor/./examples/libs/junit-4.4.jar] +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:208 - Test failt: org.apache.commons.math.analysis.solvers.BisectionSolverTest#testMath369 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:220 - Gzoltar Test Result Total:2184, fails: 1, GZoltar suspicious 17331, with positive susp 14 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:228 - nr test results 2184 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:283 - Gzoltar found: 8 with susp > 0.5, we consider: 8 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:914 - Setting up the max to 127590 milliseconds (127 sec) +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:711 - ---- Initial suspicious size: 8 +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] main:134 - Total suspicious from FL: 8, 8 +[INFO] main:143 - Total ModPoint created: 8 +[INFO] main:82 - Creating program variant #1, [Variant id: 1, #gens: 8, #ops: 0, parent:-] +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:752 - The original fitness is : 1.0 +[WARN] fr.inria.astor.core.setup.ConfigurationProperties:67 - ---------------------------- \ No newline at end of file diff --git a/trace2 b/trace2 new file mode 100644 index 000000000..3f25e2682 --- /dev/null +++ b/trace2 @@ -0,0 +1,155 @@ +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:68 - ---Configuration properties +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:lastJUnitVersion= ./examples/libs/junit-4.11.jar +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:alternativecompliancelevel= 8 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:ignoredTestCases= +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:workingDirectory= /home/martin/martin-no-backup/astor/./output_astor +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:manipulatesuper= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:validation= process +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvm4testexecution= /home/martin/martin-no-backup/jdk1.8.0_40/bin +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:operatorspace= irr-statements +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:diffcontext= 0 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:binjavafolder= /target/classes +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:synthesis_depth= 3 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:gzoltartestpackagetoexclude= junit.framework +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:skipfitnessinitialpopulation= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuiteresultfolder= evosuite +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:flthreshold= 0.5 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:regressionforfaultlocalization= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:collectonlyusedmethod= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:preservelinenumbers= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:tmax2= 127590 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:tmax1= 10000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:probagenmutation= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:nomodificationconvergence= 100 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:diff_type= relative +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:targetelementprocessor= statements +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:srctestfolder= /src/test/ +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:forceExecuteRegression= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:clusteringfilename= clustering.csv +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:logtestexecution= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evo_buggy_class= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:numberExecutions= 1 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxnumbersolutions= 1000000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evo_affected_by_op= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:population= 1 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:considerzerovaluesusp= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxCombinationVariableLimit= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savesolution= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:javacompliancelevel= 7 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:uniqueoptogen= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:gzoltarpackagetonotinstrument= junit.framework +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:projectIdentifier= +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:modificationpointnavigation= weight +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:stopfirst= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:multipointmodification= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:elementsToMutate= 10 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jsonoutputname= astor_output +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evoDSE= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:bintestfolder= /target/test-classes +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:testbystep= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:version-location= ./math-version/ +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:reintroduce= PARENTS:ORIGINAL +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:executorjar= ./lib/jtestex7.jar +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxGeneration= 0 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:max_synthesis_step= 10000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:projectinfocommand= com.github.tdurieux:project-config-maven-plugin:info +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxVarCombination= 1000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxtime= 60 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuitejar= ./lib/evosuite-master-1.0.4-SNAPSHOT.jar +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvmversion= 1.8.0_40 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:commandTrunk= 50000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:faultlocalization= gzoltar +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resetmodel= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxsuspcandidates= 1000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:mode= jgenprog +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:learningdir= +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvm4evosuitetestexecution= /home/martin/martin-no-backup/jdk1.8.0_40/bin +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:filterfaultlocalization= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:mutationrate= 1 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:pathToMVNRepository= +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resourcesfolder= /src/main/resources:/src/test/resources: +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:runjava7code= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:timezone= America/Los_Angeles +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evoRunOnBuggyClass= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:compiler= fr.inria.astor.core.manipulation.bytecode.compiler.SpoonClassCompiler +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:limitbysuspicious= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:logsattemps= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:dependenciespath= /home/martin/martin-no-backup/astor/./examples/libs/junit-4.4.jar +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:packageToInstrument= org.apache.commons +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:skipfaultlocalization= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:scope= package +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:transformingredient= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:fitnessfunction= fr.inria.astor.core.solutionsearch.population.TestCaseFitnessFunction +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxnumvariablesperingredient= 10 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:parsesourcefromoriginal= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:pvariantfoldername= variant- +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savespoonmodelondisk= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:srcjavafolder= /src/java/ +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:populationcontroller= fr.inria.astor.core.solutionsearch.population.TestCaseBasedFitnessPopulationController +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:ignoreflakyinfl= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:cleantemplates= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:applyCrossover= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxmodificationpoints= 1000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:duplicateingredientsinspace= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:metid= 0 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:continuewhenmodelfail= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:saveall= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:seed= 0 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savecompletepatched= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resetoperations= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:processoutputinfile= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:location= /home/martin/martin-no-backup/astor/./examples/math_70 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:probabilistictransformation= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:overridemaxtime= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:outputjsonresult= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:allpoints= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:antipattern= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:bugId= 280 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuitetimeout= 120 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxtimefactor= 10 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:nrPlaceholders= 1 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:forcesubprocesskilling= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:72 - ---------------------------- +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:41 - ----Starting Solution Search +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:172 - Time Repair Loop (s): 0.001 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:174 - generationsexecuted: 0 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:249 - +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:259 - End Repair Search: NOT Found solution +[INFO] fr.inria.main.evolution.AstorMain:194 - Time Total(s): 31.341 +[INFO] fr.inria.astor.core.setup.ProjectConfiguration:282 - Version of the JVM used: 1.8.0_40 +[INFO] main:404 - Java version of the JDK used to run tests: 1.8.0_40 +[INFO] main:405 - The compliance of the JVM is: 8 +[INFO] main:666 - command line arguments: [-dependencies /home/martin/martin-no-backup/astor/./examples/libs/junit-4.4.jar -mode jgenprog -failing org.apache.commons.math.analysis.solvers.BisectionSolverTest -location /home/martin/martin-no-backup/astor/./examples/math_70 -package org.apache.commons -srcjavafolder /src/java/ -srctestfolder /src/test/ -binjavafolder /target/classes -bintestfolder /target/test-classes -javacompliancelevel 7 -flthreshold 0.5 -out /home/martin/martin-no-backup/astor/./output_astor -scope package -seed 10 -stopfirst true -maxgen 50 -saveall false] +[INFO] fr.inria.astor.core.setup.ProjectConfiguration:282 - Version of the JVM used: 1.8.0_40 +[INFO] main:404 - Java version of the JDK used to run tests: 1.8.0_40 +[INFO] main:405 - The compliance of the JVM is: 8 +[INFO] main:666 - command line arguments: [-mode jgenprog -location /home/martin/martin-no-backup/astor/./examples/math_5 -dependencies /home/martin/martin-no-backup/astor/./examples/libs/junit-4.10.jar -flthreshold 0.5 -out /home/martin/martin-no-backup/astor/./output_astor -scope local -seed 0 -maxgen 5000 -stopfirst true -maxtime 200 -loglevel INFO -stopfirst true -srcjavafolder /src/main/java/ -srctestfolder /src/test/java/ -binjavafolder /target/classes -bintestfolder /target/test-classes -javacompliancelevel 6 -parameters maxmodificationpoints:1] +[INFO] fr.inria.main.evolution.AstorMain:210 - Running Astor on a JDK at /home/martin/martin-no-backup/jdk1.8.0_40/jre +[INFO] main:984 - Source folders: [/home/martin/martin-no-backup/astor/./examples/math_5/src/main/java] +[INFO] main:1003 - Source Test folders: [/home/martin/martin-no-backup/astor/./examples/math_5/src/test/java] +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:762 - ---- Creating spoon model +[INFO] main:236 - Creating model, Code location from working folder: /home/martin/martin-no-backup/astor/./examples/math_5/src/main/java +[INFO] main:67 - building model: /home/martin/martin-no-backup/astor/./examples/math_5/src/main/java, compliance level: 7 +[INFO] main:81 - Classpath (Dependencies) for building SpoonModel: [/home/martin/martin-no-backup/astor/./examples/libs/junit-4.10.jar] +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:779 - Number of CtTypes created: 714 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:900 - Test retrieved from classes: 393 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:68 - -Executing Gzoltar classpath: /home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_5//bin//default from 393 classes with test cases +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:148 - Gzoltar fault localization: min susp value parameter: 0.5 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:168 - -gz-Adding classpath: [/home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_5//bin//default, /home/martin/martin-no-backup/astor/./examples/libs/junit-4.10.jar] +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:208 - Test failt: org.apache.commons.math3.complex.ComplexTest#testReciprocalZero +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:220 - Gzoltar Test Result Total:4948, fails: 1, GZoltar suspicious 35640, with positive susp 9 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:228 - nr test results 4948 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:283 - Gzoltar found: 2 with susp > 0.5, we consider: 2 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:914 - Setting up the max to 4856290 milliseconds (4856 sec) +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:711 - ---- Initial suspicious size: 2 +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] main:128 - Reducing Total ModPoint created to: 1 +[INFO] main:134 - Total suspicious from FL: 2, 1 +[INFO] main:143 - Total ModPoint created: 1 +[INFO] main:82 - Creating program variant #1, [Variant id: 1, #gens: 1, #ops: 0, parent:-] +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:752 - The original fitness is : 1.0 +[WARN] fr.inria.astor.core.setup.ConfigurationProperties:67 - ---------------------------- \ No newline at end of file diff --git a/trace3 b/trace3 new file mode 100644 index 000000000..236676274 --- /dev/null +++ b/trace3 @@ -0,0 +1,414 @@ +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:68 - ---Configuration properties +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:lastJUnitVersion= ./examples/libs/junit-4.11.jar +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:alternativecompliancelevel= 8 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:ignoredTestCases= +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:workingDirectory= /home/martin/martin-no-backup/astor/./output_astor +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:manipulatesuper= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:validation= process +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvm4testexecution= /home/martin/martin-no-backup/jdk1.8.0_40/bin +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:operatorspace= irr-statements +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:diffcontext= 0 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:binjavafolder= /target/classes +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:synthesis_depth= 3 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:gzoltartestpackagetoexclude= junit.framework +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:skipfitnessinitialpopulation= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuiteresultfolder= evosuite +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:flthreshold= 0.5 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:regressionforfaultlocalization= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:collectonlyusedmethod= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:preservelinenumbers= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:tmax2= 4856290 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:tmax1= 10000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:probagenmutation= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:nomodificationconvergence= 100 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:diff_type= relative +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:targetelementprocessor= statements +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:srctestfolder= /src/test/java/ +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:forceExecuteRegression= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:clusteringfilename= clustering.csv +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:logtestexecution= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evo_buggy_class= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:numberExecutions= 1 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxnumbersolutions= 1000000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evo_affected_by_op= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:population= 1 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:considerzerovaluesusp= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxCombinationVariableLimit= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savesolution= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:javacompliancelevel= 6 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:uniqueoptogen= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:gzoltarpackagetonotinstrument= junit.framework +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:projectIdentifier= +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:modificationpointnavigation= weight +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:stopfirst= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:multipointmodification= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:elementsToMutate= 10 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jsonoutputname= astor_output +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evoDSE= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:bintestfolder= /target/test-classes +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:testbystep= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:version-location= ./math-version/ +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:reintroduce= PARENTS:ORIGINAL +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:executorjar= ./lib/jtestex7.jar +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxGeneration= 5000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:max_synthesis_step= 10000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:projectinfocommand= com.github.tdurieux:project-config-maven-plugin:info +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxVarCombination= 1000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxtime= 200 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuitejar= ./lib/evosuite-master-1.0.4-SNAPSHOT.jar +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvmversion= 1.8.0_40 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:commandTrunk= 50000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:faultlocalization= gzoltar +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resetmodel= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxsuspcandidates= 1000 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:mode= jgenprog +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:learningdir= +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvm4evosuitetestexecution= /home/martin/martin-no-backup/jdk1.8.0_40/bin +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:filterfaultlocalization= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:mutationrate= 1 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:pathToMVNRepository= +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resourcesfolder= /src/main/resources:/src/test/resources: +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:runjava7code= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:timezone= America/Los_Angeles +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evoRunOnBuggyClass= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:compiler= fr.inria.astor.core.manipulation.bytecode.compiler.SpoonClassCompiler +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:limitbysuspicious= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:logsattemps= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:dependenciespath= /home/martin/martin-no-backup/astor/./examples/libs/junit-4.10.jar +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:packageToInstrument= +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:skipfaultlocalization= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:scope= local +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:transformingredient= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:fitnessfunction= fr.inria.astor.core.solutionsearch.population.TestCaseFitnessFunction +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxnumvariablesperingredient= 10 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:parsesourcefromoriginal= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:pvariantfoldername= variant- +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savespoonmodelondisk= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:srcjavafolder= /src/main/java/ +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:populationcontroller= fr.inria.astor.core.solutionsearch.population.TestCaseBasedFitnessPopulationController +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:ignoreflakyinfl= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:cleantemplates= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:applyCrossover= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxmodificationpoints= 1 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:duplicateingredientsinspace= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:metid= 0 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:continuewhenmodelfail= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:saveall= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:seed= 0 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savecompletepatched= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resetoperations= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:processoutputinfile= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:location= /home/martin/martin-no-backup/astor/./examples/math_5 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:probabilistictransformation= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:overridemaxtime= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:outputjsonresult= true +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:allpoints= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:antipattern= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:bugId= 280 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuitetimeout= 120 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxtimefactor= 10 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:nrPlaceholders= 1 +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:forcesubprocesskilling= false +[INFO] fr.inria.astor.core.setup.ConfigurationProperties:72 - ---------------------------- +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:41 - ----Starting Solution Search +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:451 - -Found Solution, child variant #290 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:172 - Time Repair Loop (s): 227.434 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:174 - generationsexecuted: 145 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:249 - +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:251 - End Repair Search: Found solution +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:252 - Solution stored at: /home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_5//src/ +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:191 - +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 1 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 2 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 3 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 4 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 5 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 6 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 7 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 8 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 9 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 10 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 11 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 12 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 13 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 14 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 15 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 16 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 17 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 18 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 19 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 20 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 21 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 22 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 23 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 24 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 25 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 26 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 27 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 28 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 29 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 30 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 31 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 32 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 33 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 34 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 35 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 36 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 37 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 38 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 39 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 40 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 41 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 42 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 43 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 44 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 45 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 46 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 47 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 48 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 49 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 50 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 51 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 52 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 53 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 54 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 55 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 56 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 57 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 58 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 59 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 60 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 61 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 62 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 63 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 64 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 65 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 66 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 67 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 68 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 69 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 70 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 71 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 72 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 73 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 74 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 75 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 76 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 77 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 78 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 79 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 80 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 81 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 82 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 83 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 84 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 85 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 86 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 87 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 88 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 89 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 90 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 91 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 92 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 93 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 94 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 95 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 96 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 97 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 98 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 99 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 100 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 101 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 102 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 103 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 104 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 105 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 106 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 107 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 108 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 109 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 110 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 111 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 112 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 113 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 114 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 115 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 116 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 117 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 118 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 119 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 120 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 121 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 122 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 123 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 124 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 125 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 126 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 127 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 128 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 129 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 130 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 131 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 132 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 133 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 134 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 135 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 136 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 137 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 138 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 139 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 140 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 141 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 142 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 143 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 144 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 145 +[INFO] fr.inria.astor.core.stats.Stats:103 - Storing ing JSON at /home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_5//astor_output.json +[INFO] fr.inria.astor.core.stats.Stats:104 - astor_output: +[INFO] fr.inria.main.evolution.AstorMain:194 - Time Total(s): 925.975 +[INFO] fr.inria.astor.core.setup.ProjectConfiguration:282 - Version of the JVM used: 1.8.0_40 +[INFO] main:404 - Java version of the JDK used to run tests: 1.8.0_40 +[INFO] main:405 - The compliance of the JVM is: 8 +[INFO] main:666 - command line arguments: [-bug280] +[INFO] fr.inria.main.evolution.AstorMain:210 - Running Astor on a JDK at /home/martin/martin-no-backup/jdk1.8.0_40/jre +[INFO] main:984 - Source folders: [/home/martin/martin-no-backup/astor/./examples/Math-issue-280/src/java] +[INFO] main:1003 - Source Test folders: [/home/martin/martin-no-backup/astor/./examples/Math-issue-280/src/test] +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:762 - ---- Creating spoon model +[INFO] main:236 - Creating model, Code location from working folder: /home/martin/martin-no-backup/astor/./examples/Math-issue-280/src/java +[INFO] main:67 - building model: /home/martin/martin-no-backup/astor/./examples/Math-issue-280/src/java, compliance level: 6 +[INFO] main:81 - Classpath (Dependencies) for building SpoonModel: [/home/martin/martin-no-backup/astor/./examples/math_85/libs/junit-4.4.jar] +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:779 - Number of CtTypes created: 386 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:900 - Test retrieved from classes: 214 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:68 - -Executing Gzoltar classpath: /home/martin/martin-no-backup/astor/./output_astor/AstorMain-Math-issue-280//bin//default from 214 classes with test cases +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:148 - Gzoltar fault localization: min susp value parameter: 0.2 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:168 - -gz-Adding classpath: [/home/martin/martin-no-backup/astor/./output_astor/AstorMain-Math-issue-280//bin//default, /home/martin/martin-no-backup/astor/./examples/math_85/libs/junit-4.4.jar] +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:208 - Test failt: org.apache.commons.math.distribution.NormalDistributionTest#testMath280 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:220 - Gzoltar Test Result Total:1981, fails: 1, GZoltar suspicious 16490, with positive susp 106 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:228 - nr test results 1981 +[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:283 - Gzoltar found: 60 with susp > 0.2, we consider: 60 +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:914 - Setting up the max to 84920 milliseconds (84 sec) +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:711 - ---- Initial suspicious size: 60 +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). +[INFO] main:134 - Total suspicious from FL: 60, 52 +[INFO] main:143 - Total ModPoint created: 52 +[INFO] main:82 - Creating program variant #1, [Variant id: 1, #gens: 52, #ops: 0, parent:-] +[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:752 - The original fitness is : 1.0 +[WARN] fr.inria.astor.core.setup.ConfigurationProperties:67 - ---------------------------- \ No newline at end of file From 496cdb07d5ce230a0dc65a6add117c4ddb1ded83 Mon Sep 17 00:00:00 2001 From: "ginellidavide@gmail.com" Date: Tue, 28 Jan 2020 06:11:21 -0800 Subject: [PATCH 5/8] Fixed the check to remove the folder associated with the original Program Variant Astor can now remove also the source folder with the suffix "_f" associated with the original Program Variant. --- .../fr/inria/astor/core/setup/ProjectRepairFacade.java | 10 ++++++++++ .../astor/core/solutionsearch/AstorCoreEngine.java | 8 ++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java b/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java index 66eb96781..81027f838 100644 --- a/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java +++ b/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java @@ -84,6 +84,16 @@ public void cleanMutationResultDirectories(String currentMutatorIdentifier) thro removeDir(getProperties().getWorkingDirForBytecode() + File.separator + currentMutatorIdentifier, false); } + /** + * Remove source dir for a given mutation + * + * @throws IOException + */ + public void cleanMutationResultSourceDirectories(String currentMutatorIdentifier) throws IOException { + + removeDir(getProperties().getWorkingDirForSource() + File.separator + currentMutatorIdentifier, false); + } + public void cleanMutationResultDirectories() throws IOException { removeDir(getProperties().getWorkingDirForSource(), true); diff --git a/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java b/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java index 69b37429b..ed4e311bf 100644 --- a/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java +++ b/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java @@ -252,12 +252,8 @@ public ExecutionResult atEnd() { } } if (!ConfigurationProperties.getPropertyBool("saveall")) { - try { - projectFacade.cleanMutationResultDirectories(ProgramVariant.DEFAULT_ORIGINAL_VARIANT); - } catch (IOException e) { - e.printStackTrace(); - log.error(e); - } + projectFacade.cleanMutationResultDirectories(ProgramVariant.DEFAULT_ORIGINAL_VARIANT); + projectFacade.cleanMutationResultSourceDirectories(ProgramVariant.DEFAULT_ORIGINAL_VARIANT + PatchDiffCalculator.DIFF_SUFFIX); } } catch (Exception e1) { e1.printStackTrace(); From 477437a8378155388374eca7d0153f6e6e3ddd67 Mon Sep 17 00:00:00 2001 From: "ginellidavide@gmail.com" Date: Tue, 28 Jan 2020 06:30:02 -0800 Subject: [PATCH 6/8] Fixed the name of a function --- .../java/fr/inria/astor/core/setup/ProjectRepairFacade.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java b/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java index 81027f838..e449f4eb1 100644 --- a/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java +++ b/src/main/java/fr/inria/astor/core/setup/ProjectRepairFacade.java @@ -89,7 +89,7 @@ public void cleanMutationResultDirectories(String currentMutatorIdentifier) thro * * @throws IOException */ - public void cleanMutationResultSourceDirectories(String currentMutatorIdentifier) throws IOException { + public void cleanMutationResultSourceDirectory(String currentMutatorIdentifier) throws IOException { removeDir(getProperties().getWorkingDirForSource() + File.separator + currentMutatorIdentifier, false); } From 254b58a4acfa990a746f7fffc9fae8b2d8a14ae5 Mon Sep 17 00:00:00 2001 From: Martin Monperrus Date: Wed, 7 Aug 2024 07:44:03 +0200 Subject: [PATCH 7/8] up --- analysis-log.py | 30 ---- debug-DynaMoth-log | 64 ------- debug.log | 183 -------------------- diagnostics.log | 0 foo | 32 ---- trace1 | 44 ----- trace2 | 155 ----------------- trace3 | 414 --------------------------------------------- 8 files changed, 922 deletions(-) delete mode 100644 analysis-log.py delete mode 100644 debug-DynaMoth-log delete mode 100644 debug.log delete mode 100644 diagnostics.log delete mode 100644 foo delete mode 100644 trace1 delete mode 100644 trace2 delete mode 100644 trace3 diff --git a/analysis-log.py b/analysis-log.py deleted file mode 100644 index fdae379a4..000000000 --- a/analysis-log.py +++ /dev/null @@ -1,30 +0,0 @@ - -last = 0 -l = [] -n=1 -for line in open('foo').read().split("\n"): - #print(line) - if 'DEBUG' in line or 'WARN' in line or 'INFO' in line: - if ':' not in line[0:5]: continue - - l.append(line[6:]) - #print(line[0:5]) - timeh, timem = line[0:5].split(':') - #print(timeh, timem) - time_min = int(timeh) * 60 + int(timem) - #print(time_min) - #if 'WARN' in line: print(time_min - last ) - - if 'WARN' in line and (time_min - last > 4): - fname = 'trace'+str(n) - with open(fname, 'w') as f: f.write("\n".join(l)) - l = [] - n+=1 - print(fname, line) - - if 'WARN' in line: - last = time_min - - #last = - #print(time_min) - diff --git a/debug-DynaMoth-log b/debug-DynaMoth-log deleted file mode 100644 index 23b523946..000000000 --- a/debug-DynaMoth-log +++ /dev/null @@ -1,64 +0,0 @@ -MyBuggyTest#testOperation1 -. -Time: 0.068 - -OK (1 test) - -MyBuggyTest#testOperation2 -. -Time: 0.023 - -OK (1 test) - -MyBuggyTest#testOperation3 -.E -Time: 0.013 -There was 1 failure: -1) testOperation3(MyBuggyTest) -java.lang.AssertionError: expected:<2> but was:<1> - at org.junit.Assert.fail(Assert.java:74) - at org.junit.Assert.failNotEquals(Assert.java:448) - at org.junit.Assert.assertEquals(Assert.java:102) - at org.junit.Assert.assertEquals(Assert.java:117) - at MyBuggyTest.testOperation3(MyBuggyTest.java:48) - at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.lang.reflect.Method.invoke(Method.java:497) - at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59) - at org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98) - at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79) - at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87) - at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77) - at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42) - at org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88) - at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51) - at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44) - at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27) - at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37) - at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42) - at org.junit.runner.JUnitCore.run(JUnitCore.java:130) - at org.junit.runner.JUnitCore.run(JUnitCore.java:109) - at fr.inria.astor.core.manipulation.synthesis.dynamoth.MethodTestRunner.runTest(MethodTestRunner.java:48) - at fr.inria.astor.core.manipulation.synthesis.dynamoth.MethodTestRunner.access$000(MethodTestRunner.java:16) - at fr.inria.astor.core.manipulation.synthesis.dynamoth.MethodTestRunner$1.call(MethodTestRunner.java:24) - at java.util.concurrent.FutureTask.run(FutureTask.java:266) - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) - at java.lang.Thread.run(Thread.java:745) - -FAILURES!!! -Tests run: 1, Failures: 1 - -MyBuggyTest#testOperation4 -. -Time: 0.023 - -OK (1 test) - -MyBuggyTest#testOperation5 -. -Time: 0.025 - -OK (1 test) - diff --git a/debug.log b/debug.log deleted file mode 100644 index fb3b38d94..000000000 --- a/debug.log +++ /dev/null @@ -1,183 +0,0 @@ -15:19:14.308 f.i.l.r.s.c.SpoonElementsCollector - [data] i2=1 -15:19:14.311 f.i.l.r.s.c.SpoonElementsCollector - [data] i1=2 -15:19:14.314 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:19:14.315 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) -15:19:14.316 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:19:14.316 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:19:14.317 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:19:14.339 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:19:14.415 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 8 elements -15:19:14.482 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 10382 evaluated elements -15:19:37.791 f.i.l.r.s.c.SpoonElementsCollector - [data] i2=1 -15:19:37.791 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:19:37.791 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) -15:19:37.792 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:19:37.792 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:19:37.793 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:19:37.806 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:19:37.886 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 8 elements -15:19:37.940 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 10382 evaluated elements -15:19:46.235 f.i.l.r.s.c.spoon.ClassCollector - [class] java.lang.String -15:19:46.240 f.i.l.r.s.c.SpoonElementsCollector - [data] "-"="-" -15:19:46.241 f.i.l.r.s.c.SpoonElementsCollector - [data] type="p" -15:19:46.242 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:19:46.242 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) -15:19:46.242 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:19:46.243 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:19:46.243 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:19:46.253 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:19:46.259 f.i.l.r.s.c.SpoonElementsCollector - [data] "-"="-" -15:19:46.260 f.i.l.r.s.c.SpoonElementsCollector - [data] type="i" -15:19:46.260 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:19:46.260 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) -15:19:46.261 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:19:46.261 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:19:46.262 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:19:46.268 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:19:46.346 f.i.l.r.s.c.SpoonElementsCollector - [data] "-"="-" -15:19:46.347 f.i.l.r.s.c.SpoonElementsCollector - [data] type="gr" -15:19:46.347 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:19:46.347 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=398) -15:19:46.348 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:19:46.348 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:19:46.349 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:19:46.354 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:19:46.361 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 9 elements -15:19:46.403 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 10411 evaluated elements -15:20:15.083 f.i.l.r.s.c.spoon.ClassCollector - [class] java.lang.String -15:20:15.096 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 0 elements -15:20:15.096 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 0 evaluated elements -15:20:43.774 f.i.l.r.s.c.spoon.ClassCollector - [class] java.lang.String -15:20:43.778 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" -15:20:43.779 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" -15:20:43.779 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:20:43.779 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) -15:20:43.780 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:20:43.780 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:20:43.781 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:20:43.787 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:20:43.793 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" -15:20:43.793 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" -15:20:43.793 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:20:43.794 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) -15:20:43.794 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:20:43.794 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:20:43.795 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:20:43.798 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:20:43.863 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" -15:20:43.864 f.i.l.r.s.c.SpoonElementsCollector - [data] type="p" -15:20:43.864 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:20:43.864 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=397) -15:20:43.865 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:20:43.865 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:20:43.866 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:20:43.871 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:20:43.873 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" -15:20:43.874 f.i.l.r.s.c.SpoonElementsCollector - [data] type="i" -15:20:43.875 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:20:43.875 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=397) -15:20:43.875 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:20:43.876 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:20:43.876 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:20:43.881 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:20:43.887 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" -15:20:43.888 f.i.l.r.s.c.SpoonElementsCollector - [data] type="gr" -15:20:43.888 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:20:43.888 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=402) -15:20:43.889 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:20:43.889 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:20:43.889 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:20:43.894 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:20:43.903 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" -15:20:43.903 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" -15:20:43.903 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:20:43.903 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=416) -15:20:43.904 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:20:43.904 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:20:43.905 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:20:43.909 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:20:43.911 f.i.l.r.s.c.SpoonElementsCollector - [data] "+"="+" -15:20:43.911 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" -15:20:43.912 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:20:43.912 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=416) -15:20:43.912 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:20:43.912 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:20:43.913 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:20:43.916 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:20:43.919 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 9 elements -15:20:43.958 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 10411 evaluated elements -15:21:17.886 f.i.l.r.s.c.spoon.ClassCollector - [class] java.lang.String -15:21:17.895 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" -15:21:17.897 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" -15:21:17.897 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:21:17.897 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) -15:21:17.898 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:21:17.898 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:21:17.901 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:21:17.910 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:21:17.921 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" -15:21:17.922 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" -15:21:17.922 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:21:17.922 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=300) -15:21:17.923 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:21:17.924 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:21:17.925 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:21:17.935 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:21:18.031 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" -15:21:18.032 f.i.l.r.s.c.SpoonElementsCollector - [data] type="p" -15:21:18.032 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:21:18.032 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=397) -15:21:18.032 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:21:18.033 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:21:18.033 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:21:18.038 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:21:18.041 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" -15:21:18.042 f.i.l.r.s.c.SpoonElementsCollector - [data] type="i" -15:21:18.043 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:21:18.043 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=397) -15:21:18.043 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:21:18.044 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:21:18.044 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:21:18.050 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:21:18.056 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" -15:21:18.057 f.i.l.r.s.c.SpoonElementsCollector - [data] type="gr" -15:21:18.058 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:21:18.058 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=402) -15:21:18.058 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:21:18.058 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:21:18.059 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:21:18.064 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:21:18.075 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" -15:21:18.075 f.i.l.r.s.c.SpoonElementsCollector - [data] type="*" -15:21:18.075 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:21:18.075 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=416) -15:21:18.076 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:21:18.076 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:21:18.077 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:21:18.082 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:21:18.084 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" -15:21:18.085 f.i.l.r.s.c.SpoonElementsCollector - [data] type="*" -15:21:18.085 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:21:18.085 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=416) -15:21:18.086 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:21:18.086 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:21:18.087 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:21:18.094 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:21:18.099 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" -15:21:18.099 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" -15:21:18.099 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:21:18.100 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=420) -15:21:18.100 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:21:18.100 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:21:18.101 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:21:18.105 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:21:18.113 f.i.l.r.s.c.SpoonElementsCollector - [data] "*"="*" -15:21:18.114 f.i.l.r.s.c.SpoonElementsCollector - [data] type="+" -15:21:18.114 f.i.l.r.s.c.DynamothDataCollector - Collect Level 1 -15:21:18.114 f.i.l.r.s.c.DynamothDataCollector - [data] this=instance of test.MyBuggy(id=420) -15:21:18.115 f.i.l.r.s.c.DynamothDataCollector - [data] i1 -15:21:18.115 f.i.l.r.s.c.DynamothDataCollector - [data] i2 -15:21:18.115 f.i.l.r.s.c.DynamothDataCollector - [data] type -15:21:18.121 f.i.l.r.s.c.DynamothDataCollector - [data] type.length() -15:21:18.127 f.i.a.c.m.s.d.DataCombinerModified - [combine] start on 9 elements -15:21:18.190 f.i.a.c.m.s.d.DataCombinerModified - [combine] end 10411 evaluated elements diff --git a/diagnostics.log b/diagnostics.log deleted file mode 100644 index e69de29bb..000000000 diff --git a/foo b/foo deleted file mode 100644 index 6c9d7b618..000000000 --- a/foo +++ /dev/null @@ -1,32 +0,0 @@ - -We have worked on two fronts: using sequence-to-sequence learning to automatically repair programs and metaprogramming for fixing static analysis warnings. - -\textbf{Repair with sequence-to-sequence learning} Sequence-to-sequence (seq2seq) learning is a branch of machine learning, mostly used for machine translation: the algorithm seq2seq learns to translate text from one language (say French) to another language (say Swedish) by generalizing over large amounts of sentence pairs from French to Swedish. In the context of program repair, we learn to 'translate' from one sequence of program tokens (a buggy program) to a different sequence of program tokens (a fixed program). The training data is readily available: we have millions of commits in open-source code repositories. Yet, we still have major challenges to overcome when it comes to using sequence-to-sequence learning on code: -\begin{enumerate*} - \item the raw data is rather noisy; one must deploy significant effort to identify and curate commits that focus on a clear task, in particular a bugg fixing task; - \item contrary to natural language, usage of rare words (identifiers, numbers, etc) is often fatal in machine learning on code; in natural language some errors may be tolerable thanks to the intelligence of the human reader while in programming languages the compiler (or interpreter) is strict - \item in natural language, the dependencies are often in the same sentence (``it'' refers to ``dog'' just before) , or within a couple of sentences, while in programming, the dependencies have a longer range: one may use a variable that has been declared dozens of lines before. -\end{enumerate*} - -In Trustfull, we have realized an end-to-end program repair approach which works as follows. -First, we focus on one-line fixes: we predict the fixed version of a buggy line. For this, we create a carefully curated training and testing dataset of one-line commits. -Second, we devise a sequence-to-sequence network architecture that is specifically designed to address the two main aforementioned challenges. -To address the unlimited vocabulary problem, we use the copy mechanism; this allows us to predict the fixed line, even if the fix contains a token that was too rare to be considered in the vocabulary (i.e. an API call that appears only in few cases, or a rare identifier used only in one class). This copy mechanism works even if the fixed line should contain tokens which were not in the training set. -To address the dependency problem, we have devised an \textit{abstract buggy context} from the buggy class, which captures the most important context around the buggy source code and reduces the complexity of the input sequence. This enables us to capture long range dependencies that are required for the fix. - -To sum up, our contribution is an approach for fixing bugs based on sequence-to-sequence learning on token sequences. This approach uses the copy mechanism to overcome the unlimited vocabulary problem in source code. We have evaluated our approach on 4,711 real bug fixing tasks. Our golden trained model is able to perfectly fix 950/4,711 testing samples. We have provided unique qualitative insights of interesting repair operators captured by sequence-to-sequence learning on the considered training dataset. -We are now extending this work to repair security vulnearbilities in C code. - -\textbf{Repair with metaprogramming} -Static analysis can uncover a multitude -of bugs in a reasonable time frame but -is plagued by issues such as high false-positive alert rates and unclear -calls to action, making it underutilized considering the benefits it can bring -with its bug-finding abilities. We have worked to reduce the shortcomings of -static analysis by implementing and evaluating a metaprogramming approach for -automatically repairing bugs found by static analysis. The approach is implemented for Java to repair the warnings identified by SonarQube, the leading static analyzer for Java. -Our results show that -the approach and developed tool are valuable to decrease the number of problems which static analysis finds. Two possible ways of integrating the -created tool into existing developer workflows are prototyped and a compar- -ison with a similar tool is performed to showcase the different approaches’ -differences, strengths and weaknesses. diff --git a/trace1 b/trace1 deleted file mode 100644 index e58256349..000000000 --- a/trace1 +++ /dev/null @@ -1,44 +0,0 @@ -[INFO] fr.inria.astor.core.setup.ProjectConfiguration:282 - Version of the JVM used: 1.8.0_40 -[INFO] main:404 - Java version of the JDK used to run tests: 1.8.0_40 -[INFO] main:405 - The compliance of the JVM is: 8 -[INFO] main:666 - command line arguments: [-dependencies /home/martin/martin-no-backup/astor/./examples/libs/junit-4.4.jar -mode jgenprog -location /home/martin/martin-no-backup/astor/./examples/math_70 -package org.apache.commons -srcjavafolder /src/java/ -srctestfolder /src/test/ -binjavafolder /target/classes -bintestfolder /target/test-classes -javacompliancelevel 7 -flthreshold 0.5 -out /home/martin/martin-no-backup/astor/./output_astor -maxgen 0] -[INFO] fr.inria.main.evolution.AstorMain:210 - Running Astor on a JDK at /home/martin/martin-no-backup/jdk1.8.0_40/jre -[INFO] main:984 - Source folders: [/home/martin/martin-no-backup/astor/./examples/math_70/src/main/java] -[INFO] main:1003 - Source Test folders: [/home/martin/martin-no-backup/astor/./examples/math_70/src/test] -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:762 - ---- Creating spoon model -[INFO] main:236 - Creating model, Code location from working folder: /home/martin/martin-no-backup/astor/./examples/math_70/src/main/java -[INFO] main:67 - building model: /home/martin/martin-no-backup/astor/./examples/math_70/src/main/java, compliance level: 8 -[INFO] main:81 - Classpath (Dependencies) for building SpoonModel: [/home/martin/martin-no-backup/astor/./examples/libs/junit-4.4.jar] -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:779 - Number of CtTypes created: 416 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:900 - Test retrieved from classes: 238 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:68 - -Executing Gzoltar classpath: /home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_70//bin//default from 238 classes with test cases -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:148 - Gzoltar fault localization: min susp value parameter: 0.5 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:168 - -gz-Adding classpath: [/home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_70//bin//default, /home/martin/martin-no-backup/astor/./examples/libs/junit-4.4.jar] -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:208 - Test failt: org.apache.commons.math.analysis.solvers.BisectionSolverTest#testMath369 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:220 - Gzoltar Test Result Total:2184, fails: 1, GZoltar suspicious 17331, with positive susp 14 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:228 - nr test results 2184 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:283 - Gzoltar found: 8 with susp > 0.5, we consider: 8 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:914 - Setting up the max to 127590 milliseconds (127 sec) -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:711 - ---- Initial suspicious size: 8 -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] main:134 - Total suspicious from FL: 8, 8 -[INFO] main:143 - Total ModPoint created: 8 -[INFO] main:82 - Creating program variant #1, [Variant id: 1, #gens: 8, #ops: 0, parent:-] -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:752 - The original fitness is : 1.0 -[WARN] fr.inria.astor.core.setup.ConfigurationProperties:67 - ---------------------------- \ No newline at end of file diff --git a/trace2 b/trace2 deleted file mode 100644 index 3f25e2682..000000000 --- a/trace2 +++ /dev/null @@ -1,155 +0,0 @@ -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:68 - ---Configuration properties -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:lastJUnitVersion= ./examples/libs/junit-4.11.jar -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:alternativecompliancelevel= 8 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:ignoredTestCases= -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:workingDirectory= /home/martin/martin-no-backup/astor/./output_astor -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:manipulatesuper= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:validation= process -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvm4testexecution= /home/martin/martin-no-backup/jdk1.8.0_40/bin -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:operatorspace= irr-statements -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:diffcontext= 0 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:binjavafolder= /target/classes -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:synthesis_depth= 3 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:gzoltartestpackagetoexclude= junit.framework -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:skipfitnessinitialpopulation= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuiteresultfolder= evosuite -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:flthreshold= 0.5 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:regressionforfaultlocalization= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:collectonlyusedmethod= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:preservelinenumbers= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:tmax2= 127590 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:tmax1= 10000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:probagenmutation= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:nomodificationconvergence= 100 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:diff_type= relative -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:targetelementprocessor= statements -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:srctestfolder= /src/test/ -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:forceExecuteRegression= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:clusteringfilename= clustering.csv -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:logtestexecution= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evo_buggy_class= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:numberExecutions= 1 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxnumbersolutions= 1000000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evo_affected_by_op= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:population= 1 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:considerzerovaluesusp= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxCombinationVariableLimit= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savesolution= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:javacompliancelevel= 7 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:uniqueoptogen= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:gzoltarpackagetonotinstrument= junit.framework -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:projectIdentifier= -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:modificationpointnavigation= weight -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:stopfirst= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:multipointmodification= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:elementsToMutate= 10 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jsonoutputname= astor_output -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evoDSE= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:bintestfolder= /target/test-classes -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:testbystep= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:version-location= ./math-version/ -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:reintroduce= PARENTS:ORIGINAL -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:executorjar= ./lib/jtestex7.jar -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxGeneration= 0 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:max_synthesis_step= 10000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:projectinfocommand= com.github.tdurieux:project-config-maven-plugin:info -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxVarCombination= 1000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxtime= 60 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuitejar= ./lib/evosuite-master-1.0.4-SNAPSHOT.jar -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvmversion= 1.8.0_40 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:commandTrunk= 50000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:faultlocalization= gzoltar -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resetmodel= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxsuspcandidates= 1000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:mode= jgenprog -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:learningdir= -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvm4evosuitetestexecution= /home/martin/martin-no-backup/jdk1.8.0_40/bin -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:filterfaultlocalization= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:mutationrate= 1 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:pathToMVNRepository= -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resourcesfolder= /src/main/resources:/src/test/resources: -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:runjava7code= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:timezone= America/Los_Angeles -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evoRunOnBuggyClass= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:compiler= fr.inria.astor.core.manipulation.bytecode.compiler.SpoonClassCompiler -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:limitbysuspicious= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:logsattemps= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:dependenciespath= /home/martin/martin-no-backup/astor/./examples/libs/junit-4.4.jar -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:packageToInstrument= org.apache.commons -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:skipfaultlocalization= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:scope= package -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:transformingredient= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:fitnessfunction= fr.inria.astor.core.solutionsearch.population.TestCaseFitnessFunction -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxnumvariablesperingredient= 10 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:parsesourcefromoriginal= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:pvariantfoldername= variant- -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savespoonmodelondisk= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:srcjavafolder= /src/java/ -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:populationcontroller= fr.inria.astor.core.solutionsearch.population.TestCaseBasedFitnessPopulationController -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:ignoreflakyinfl= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:cleantemplates= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:applyCrossover= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxmodificationpoints= 1000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:duplicateingredientsinspace= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:metid= 0 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:continuewhenmodelfail= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:saveall= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:seed= 0 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savecompletepatched= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resetoperations= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:processoutputinfile= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:location= /home/martin/martin-no-backup/astor/./examples/math_70 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:probabilistictransformation= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:overridemaxtime= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:outputjsonresult= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:allpoints= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:antipattern= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:bugId= 280 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuitetimeout= 120 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxtimefactor= 10 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:nrPlaceholders= 1 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:forcesubprocesskilling= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:72 - ---------------------------- -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:41 - ----Starting Solution Search -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:172 - Time Repair Loop (s): 0.001 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:174 - generationsexecuted: 0 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:249 - -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:259 - End Repair Search: NOT Found solution -[INFO] fr.inria.main.evolution.AstorMain:194 - Time Total(s): 31.341 -[INFO] fr.inria.astor.core.setup.ProjectConfiguration:282 - Version of the JVM used: 1.8.0_40 -[INFO] main:404 - Java version of the JDK used to run tests: 1.8.0_40 -[INFO] main:405 - The compliance of the JVM is: 8 -[INFO] main:666 - command line arguments: [-dependencies /home/martin/martin-no-backup/astor/./examples/libs/junit-4.4.jar -mode jgenprog -failing org.apache.commons.math.analysis.solvers.BisectionSolverTest -location /home/martin/martin-no-backup/astor/./examples/math_70 -package org.apache.commons -srcjavafolder /src/java/ -srctestfolder /src/test/ -binjavafolder /target/classes -bintestfolder /target/test-classes -javacompliancelevel 7 -flthreshold 0.5 -out /home/martin/martin-no-backup/astor/./output_astor -scope package -seed 10 -stopfirst true -maxgen 50 -saveall false] -[INFO] fr.inria.astor.core.setup.ProjectConfiguration:282 - Version of the JVM used: 1.8.0_40 -[INFO] main:404 - Java version of the JDK used to run tests: 1.8.0_40 -[INFO] main:405 - The compliance of the JVM is: 8 -[INFO] main:666 - command line arguments: [-mode jgenprog -location /home/martin/martin-no-backup/astor/./examples/math_5 -dependencies /home/martin/martin-no-backup/astor/./examples/libs/junit-4.10.jar -flthreshold 0.5 -out /home/martin/martin-no-backup/astor/./output_astor -scope local -seed 0 -maxgen 5000 -stopfirst true -maxtime 200 -loglevel INFO -stopfirst true -srcjavafolder /src/main/java/ -srctestfolder /src/test/java/ -binjavafolder /target/classes -bintestfolder /target/test-classes -javacompliancelevel 6 -parameters maxmodificationpoints:1] -[INFO] fr.inria.main.evolution.AstorMain:210 - Running Astor on a JDK at /home/martin/martin-no-backup/jdk1.8.0_40/jre -[INFO] main:984 - Source folders: [/home/martin/martin-no-backup/astor/./examples/math_5/src/main/java] -[INFO] main:1003 - Source Test folders: [/home/martin/martin-no-backup/astor/./examples/math_5/src/test/java] -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:762 - ---- Creating spoon model -[INFO] main:236 - Creating model, Code location from working folder: /home/martin/martin-no-backup/astor/./examples/math_5/src/main/java -[INFO] main:67 - building model: /home/martin/martin-no-backup/astor/./examples/math_5/src/main/java, compliance level: 7 -[INFO] main:81 - Classpath (Dependencies) for building SpoonModel: [/home/martin/martin-no-backup/astor/./examples/libs/junit-4.10.jar] -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:779 - Number of CtTypes created: 714 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:900 - Test retrieved from classes: 393 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:68 - -Executing Gzoltar classpath: /home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_5//bin//default from 393 classes with test cases -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:148 - Gzoltar fault localization: min susp value parameter: 0.5 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:168 - -gz-Adding classpath: [/home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_5//bin//default, /home/martin/martin-no-backup/astor/./examples/libs/junit-4.10.jar] -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:208 - Test failt: org.apache.commons.math3.complex.ComplexTest#testReciprocalZero -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:220 - Gzoltar Test Result Total:4948, fails: 1, GZoltar suspicious 35640, with positive susp 9 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:228 - nr test results 4948 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:283 - Gzoltar found: 2 with susp > 0.5, we consider: 2 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:914 - Setting up the max to 4856290 milliseconds (4856 sec) -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:711 - ---- Initial suspicious size: 2 -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] main:128 - Reducing Total ModPoint created to: 1 -[INFO] main:134 - Total suspicious from FL: 2, 1 -[INFO] main:143 - Total ModPoint created: 1 -[INFO] main:82 - Creating program variant #1, [Variant id: 1, #gens: 1, #ops: 0, parent:-] -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:752 - The original fitness is : 1.0 -[WARN] fr.inria.astor.core.setup.ConfigurationProperties:67 - ---------------------------- \ No newline at end of file diff --git a/trace3 b/trace3 deleted file mode 100644 index 236676274..000000000 --- a/trace3 +++ /dev/null @@ -1,414 +0,0 @@ -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:68 - ---Configuration properties -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:lastJUnitVersion= ./examples/libs/junit-4.11.jar -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:alternativecompliancelevel= 8 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:ignoredTestCases= -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:workingDirectory= /home/martin/martin-no-backup/astor/./output_astor -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:manipulatesuper= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:validation= process -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvm4testexecution= /home/martin/martin-no-backup/jdk1.8.0_40/bin -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:operatorspace= irr-statements -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:diffcontext= 0 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:binjavafolder= /target/classes -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:synthesis_depth= 3 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:gzoltartestpackagetoexclude= junit.framework -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:skipfitnessinitialpopulation= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuiteresultfolder= evosuite -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:flthreshold= 0.5 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:regressionforfaultlocalization= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:collectonlyusedmethod= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:preservelinenumbers= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:tmax2= 4856290 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:tmax1= 10000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:probagenmutation= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:nomodificationconvergence= 100 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:diff_type= relative -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:targetelementprocessor= statements -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:srctestfolder= /src/test/java/ -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:forceExecuteRegression= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:clusteringfilename= clustering.csv -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:logtestexecution= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evo_buggy_class= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:numberExecutions= 1 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxnumbersolutions= 1000000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evo_affected_by_op= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:population= 1 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:considerzerovaluesusp= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxCombinationVariableLimit= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savesolution= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:javacompliancelevel= 6 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:uniqueoptogen= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:gzoltarpackagetonotinstrument= junit.framework -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:projectIdentifier= -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:modificationpointnavigation= weight -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:stopfirst= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:multipointmodification= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:elementsToMutate= 10 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jsonoutputname= astor_output -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evoDSE= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:bintestfolder= /target/test-classes -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:testbystep= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:version-location= ./math-version/ -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:reintroduce= PARENTS:ORIGINAL -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:executorjar= ./lib/jtestex7.jar -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxGeneration= 5000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:max_synthesis_step= 10000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:projectinfocommand= com.github.tdurieux:project-config-maven-plugin:info -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxVarCombination= 1000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxtime= 200 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuitejar= ./lib/evosuite-master-1.0.4-SNAPSHOT.jar -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvmversion= 1.8.0_40 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:commandTrunk= 50000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:faultlocalization= gzoltar -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resetmodel= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxsuspcandidates= 1000 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:mode= jgenprog -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:learningdir= -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:jvm4evosuitetestexecution= /home/martin/martin-no-backup/jdk1.8.0_40/bin -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:filterfaultlocalization= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:mutationrate= 1 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:pathToMVNRepository= -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resourcesfolder= /src/main/resources:/src/test/resources: -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:runjava7code= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:timezone= America/Los_Angeles -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evoRunOnBuggyClass= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:compiler= fr.inria.astor.core.manipulation.bytecode.compiler.SpoonClassCompiler -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:limitbysuspicious= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:logsattemps= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:dependenciespath= /home/martin/martin-no-backup/astor/./examples/libs/junit-4.10.jar -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:packageToInstrument= -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:skipfaultlocalization= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:scope= local -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:transformingredient= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:fitnessfunction= fr.inria.astor.core.solutionsearch.population.TestCaseFitnessFunction -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxnumvariablesperingredient= 10 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:parsesourcefromoriginal= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:pvariantfoldername= variant- -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savespoonmodelondisk= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:srcjavafolder= /src/main/java/ -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:populationcontroller= fr.inria.astor.core.solutionsearch.population.TestCaseBasedFitnessPopulationController -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:ignoreflakyinfl= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:cleantemplates= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:applyCrossover= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxmodificationpoints= 1 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:duplicateingredientsinspace= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:metid= 0 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:continuewhenmodelfail= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:saveall= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:seed= 0 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:savecompletepatched= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:resetoperations= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:processoutputinfile= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:location= /home/martin/martin-no-backup/astor/./examples/math_5 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:probabilistictransformation= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:overridemaxtime= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:outputjsonresult= true -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:allpoints= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:antipattern= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:bugId= 280 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:evosuitetimeout= 120 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:maxtimefactor= 10 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:nrPlaceholders= 1 -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:70 - p:forcesubprocesskilling= false -[INFO] fr.inria.astor.core.setup.ConfigurationProperties:72 - ---------------------------- -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:41 - ----Starting Solution Search -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:451 - -Found Solution, child variant #290 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:172 - Time Repair Loop (s): 227.434 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:174 - generationsexecuted: 145 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:249 - -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:251 - End Repair Search: Found solution -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:252 - Solution stored at: /home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_5//src/ -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:191 - -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 1 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 2 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 3 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 4 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 5 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 6 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 7 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 8 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 9 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 10 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 11 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 12 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 13 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 14 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 15 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 16 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 17 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 18 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 19 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 20 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 21 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 22 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 23 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 24 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 25 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 26 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 27 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 28 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 29 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 30 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 31 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 32 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 33 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 34 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 35 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 36 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 37 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 38 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 39 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 40 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 41 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 42 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 43 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 44 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 45 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 46 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 47 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 48 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 49 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 50 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 51 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 52 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 53 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 54 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 55 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 56 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 57 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 58 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 59 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 60 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 61 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 62 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 63 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 64 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 65 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 66 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 67 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 68 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 69 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 70 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 71 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 72 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 73 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 74 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 75 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 76 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 77 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 78 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 79 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 80 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 81 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 82 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 83 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 84 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 85 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 86 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 87 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 88 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 89 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 90 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 91 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 92 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 93 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 94 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 95 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 96 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 97 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 98 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 99 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 100 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 101 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 102 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 103 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 104 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 105 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 106 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 107 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 108 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 109 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 110 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 111 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 112 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 113 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 114 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 115 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 116 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 117 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 118 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 119 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 120 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 121 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 122 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 123 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 124 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 125 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 126 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 127 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 128 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 129 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 130 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 131 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 132 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 133 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 134 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 135 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 136 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 137 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 138 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 139 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 140 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 141 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 142 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 143 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 144 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:1222 - Generation 145 -[INFO] fr.inria.astor.core.stats.Stats:103 - Storing ing JSON at /home/martin/martin-no-backup/astor/./output_astor/AstorMain-math_5//astor_output.json -[INFO] fr.inria.astor.core.stats.Stats:104 - astor_output: -[INFO] fr.inria.main.evolution.AstorMain:194 - Time Total(s): 925.975 -[INFO] fr.inria.astor.core.setup.ProjectConfiguration:282 - Version of the JVM used: 1.8.0_40 -[INFO] main:404 - Java version of the JDK used to run tests: 1.8.0_40 -[INFO] main:405 - The compliance of the JVM is: 8 -[INFO] main:666 - command line arguments: [-bug280] -[INFO] fr.inria.main.evolution.AstorMain:210 - Running Astor on a JDK at /home/martin/martin-no-backup/jdk1.8.0_40/jre -[INFO] main:984 - Source folders: [/home/martin/martin-no-backup/astor/./examples/Math-issue-280/src/java] -[INFO] main:1003 - Source Test folders: [/home/martin/martin-no-backup/astor/./examples/Math-issue-280/src/test] -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:762 - ---- Creating spoon model -[INFO] main:236 - Creating model, Code location from working folder: /home/martin/martin-no-backup/astor/./examples/Math-issue-280/src/java -[INFO] main:67 - building model: /home/martin/martin-no-backup/astor/./examples/Math-issue-280/src/java, compliance level: 6 -[INFO] main:81 - Classpath (Dependencies) for building SpoonModel: [/home/martin/martin-no-backup/astor/./examples/math_85/libs/junit-4.4.jar] -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:779 - Number of CtTypes created: 386 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:900 - Test retrieved from classes: 214 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:68 - -Executing Gzoltar classpath: /home/martin/martin-no-backup/astor/./output_astor/AstorMain-Math-issue-280//bin//default from 214 classes with test cases -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:148 - Gzoltar fault localization: min susp value parameter: 0.2 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:168 - -gz-Adding classpath: [/home/martin/martin-no-backup/astor/./output_astor/AstorMain-Math-issue-280//bin//default, /home/martin/martin-no-backup/astor/./examples/math_85/libs/junit-4.4.jar] -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:208 - Test failt: org.apache.commons.math.distribution.NormalDistributionTest#testMath280 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:220 - Gzoltar Test Result Total:1981, fails: 1, GZoltar suspicious 16490, with positive susp 106 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:228 - nr test results 1981 -[INFO] fr.inria.astor.core.faultlocalization.gzoltar.GZoltarFaultLocalization:283 - Gzoltar found: 60 with susp > 0.2, we consider: 60 -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:914 - Setting up the max to 84920 milliseconds (84 sec) -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:711 - ---- Initial suspicious size: 60 -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] spoon.Launcher:452 - Running in NOCLASSPATH mode (doc: http://spoon.gforge.inria.fr/launcher.html). -[INFO] main:134 - Total suspicious from FL: 60, 52 -[INFO] main:143 - Total ModPoint created: 52 -[INFO] main:82 - Creating program variant #1, [Variant id: 1, #gens: 52, #ops: 0, parent:-] -[INFO] fr.inria.astor.core.solutionsearch.AstorCoreEngine:752 - The original fitness is : 1.0 -[WARN] fr.inria.astor.core.setup.ConfigurationProperties:67 - ---------------------------- \ No newline at end of file From 29b952e26decec7d7f1d93d1ed81d3a53b07b4d3 Mon Sep 17 00:00:00 2001 From: Martin Monperrus Date: Wed, 7 Aug 2024 07:57:44 +0200 Subject: [PATCH 8/8] up --- .../fr/inria/astor/core/solutionsearch/AstorCoreEngine.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java b/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java index ed4e311bf..5295c5812 100644 --- a/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java +++ b/src/main/java/fr/inria/astor/core/solutionsearch/AstorCoreEngine.java @@ -253,7 +253,7 @@ public ExecutionResult atEnd() { } if (!ConfigurationProperties.getPropertyBool("saveall")) { projectFacade.cleanMutationResultDirectories(ProgramVariant.DEFAULT_ORIGINAL_VARIANT); - projectFacade.cleanMutationResultSourceDirectories(ProgramVariant.DEFAULT_ORIGINAL_VARIANT + PatchDiffCalculator.DIFF_SUFFIX); + projectFacade.cleanMutationResultDirectories(ProgramVariant.DEFAULT_ORIGINAL_VARIANT + PatchDiffCalculator.DIFF_SUFFIX); } } catch (Exception e1) { e1.printStackTrace();