@@ -68,12 +68,32 @@ class Summarization(val sourceFile: File?, val invokeDescriptions: List<InvokeDe
6868 }
6969return listOf (UtExecutionCluster (UtClusterInfo (), testCase.executions))
7070 }
71+
7172// init
7273val sootToAST= sootToAST(testCase)
7374val jimpleBody= testCase.jimpleBody
7475val updatedExecutions= mutableListOf<UtExecution >()
7576val clustersToReturn= mutableListOf<UtExecutionCluster >()
7677
78+ // TODO: Now it excludes tests generated by Fuzzer, handle it properly, related to the https://github.com/UnitTestBot/UTBotJava/issues/428
79+ val executionsProducedByFuzzer= getExecutionsWithEmptyPath(testCase)
80+
81+ if (executionsProducedByFuzzer.isNotEmpty()) {
82+ executionsProducedByFuzzer.forEach {
83+ logger.info {
84+ " The path for test${it.testMethodName} " +
85+ " for method${testCase.method.clazz.qualifiedName} is empty and summaries could not be generated."
86+ }
87+ }
88+
89+ clustersToReturn.add(
90+ UtExecutionCluster (
91+ UtClusterInfo (),
92+ executionsProducedByFuzzer
93+ )
94+ )
95+ }
96+
7797// analyze
7898if (jimpleBody!= null && sootToAST!= null ) {
7999val methodUnderTest= jimpleBody.method
@@ -83,9 +103,9 @@ class Summarization(val sourceFile: File?, val invokeDescriptions: List<InvokeDe
83103for (clusterTraceTagsin clusteredTags) {
84104val clusterHeader= clusterTraceTags.summary.takeIf {GENERATE_CLUSTER_COMMENTS }
85105val clusterContent= if (
86- GENERATE_CLUSTER_COMMENTS && clusterTraceTags.isSuccessful// add only for successful executions
87- && numberOfSuccessfulClusters> 1 // there is more than one successful execution
88- && clusterTraceTags.traceTags.size> 1 // add if there is more than 1 execution
106+ GENERATE_CLUSTER_COMMENTS && clusterTraceTags.isSuccessful// add only for successful executions
107+ && numberOfSuccessfulClusters> 1 // there is more than one successful execution
108+ && clusterTraceTags.traceTags.size> 1 // add if there is more than 1 execution
89109 ) {
90110SimpleClusterCommentBuilder (clusterTraceTags.commonStepsTraceTag, sootToAST)
91111 .buildString(methodUnderTest)
@@ -113,20 +133,14 @@ class Summarization(val sourceFile: File?, val invokeDescriptions: List<InvokeDe
113133val nameIndex= namesCounter.getOrPut(name) {0 }
114134 namesCounter[name]= nameIndex+ 1
115135 updatedExecutions+ = traceTags.execution
116- if (GENERATE_DISPLAY_NAMES
117- // todo extract these options into more suitable place (https://github.com/UnitTestBot/UTBotJava/issues/359)
118- // do not rewrite display name if already set
119- && traceTags.execution.displayName.isNullOrBlank()) {
136+ if (GENERATE_DISPLAY_NAMES ) {
120137if (! GENERATE_DISPLAYNAME_FROM_TO_STYLE ) {
121138 traceTags.execution.displayName= displayName
122139 }else {
123140 traceTags.execution.displayName= fromToName
124141 }
125142 }
126- if (GENERATE_NAMES
127- // todo extract these options into more suitable place (https://github.com/UnitTestBot/UTBotJava/issues/359)
128- // do not rewrite display name if already set
129- && traceTags.execution.testMethodName.isNullOrBlank()) {
143+ if (GENERATE_NAMES ) {
130144 traceTags.execution.testMethodName= name
131145if (nameIndex!= 0 ) traceTags.execution.testMethodName+ = " _$nameIndex "
132146 }
@@ -150,6 +164,9 @@ class Summarization(val sourceFile: File?, val invokeDescriptions: List<InvokeDe
150164return listOf (UtExecutionCluster (UtClusterInfo (), testCase.executions))
151165 }
152166
167+ private fun getExecutionsWithEmptyPath (testCase : UtTestCase )=
168+ testCase.executions.filter { it.path.isEmpty() }
169+
153170/*
154171 * asts of invokes also included
155172 **/