Skip to content

Commit 90eaeb5

Browse files
Adding logs for phases start and finish (#1460)
1 parent d7800c4 commit 90eaeb5

File tree

3 files changed

+37
-13
lines changed

3 files changed

+37
-13
lines changed

utbot-framework/src/main/kotlin/org/utbot/framework/codegen/CodeGenerator.kt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.utbot.framework.codegen
22

3+
import mu.KotlinLogging
34
import org.utbot.framework.codegen.domain.ForceStaticMocking
45
import org.utbot.framework.codegen.domain.HangingTestsTimeout
56
import org.utbot.framework.codegen.domain.ParametrizedTestSource
@@ -19,6 +20,8 @@ import org.utbot.framework.plugin.api.CodegenLanguage
1920
import org.utbot.framework.plugin.api.ExecutableId
2021
import org.utbot.framework.plugin.api.MockFramework
2122
import org.utbot.framework.plugin.api.UtMethodTestSet
23+
import java.time.LocalDateTime
24+
import java.time.format.DateTimeFormatter
2225

2326
open class CodeGenerator(
2427
val classUnderTest: ClassId,
@@ -37,6 +40,8 @@ open class CodeGenerator(
3740
testClassPackageName: String = classUnderTest.packageName,
3841
) {
3942

43+
private val logger = KotlinLogging.logger {}
44+
4045
open var context: CgContext = CgContext(
4146
classUnderTest = classUnderTest,
4247
generateUtilClassFile = generateUtilClassFile,
@@ -71,8 +76,15 @@ open class CodeGenerator(
7176
val renderer = CgAbstractRenderer.makeRenderer(context)
7277
val testClassModel = TestClassModel.fromTestSets(classUnderTest, cgTestSets)
7378

79+
fun now() = LocalDateTime.now().format(DateTimeFormatter.ofPattern("HH:mm:ss.SSS"))
80+
81+
logger.info { "Code generation phase started at ${now()}" }
7482
val testClassFile = astConstructor.construct(testClassModel)
83+
logger.info { "Code generation phase finished at ${now()}" }
84+
85+
logger.info { "Rendering phase started at ${now()}" }
7586
testClassFile.accept(renderer)
87+
logger.info { "Rendering phase finished at ${now()}" }
7688

7789
CodeGeneratorResult(
7890
generatedCode = renderer.toString(),

utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/generator/UtTestsDialogProcessor.kt

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@ import com.intellij.task.ProjectTaskManager
2222
import com.intellij.util.concurrency.AppExecutorUtil
2323
import com.intellij.util.containers.nullize
2424
import com.intellij.util.io.exists
25-
import com.jetbrains.rd.util.lifetime.LifetimeDefinition
26-
import kotlinx.coroutines.runBlocking
2725
import mu.KotlinLogging
2826
import org.jetbrains.kotlin.idea.util.module
2927
import org.utbot.framework.UtSettings
@@ -50,6 +48,8 @@ import kotlin.io.path.pathString
5048
import org.utbot.framework.plugin.api.util.LockFile
5149
import org.utbot.intellij.plugin.ui.utils.isBuildWithGradle
5250
import org.utbot.rd.terminateOnException
51+
import java.time.LocalDateTime
52+
import java.time.format.DateTimeFormatter
5353

5454
object UtTestsDialogProcessor {
5555
private val logger = KotlinLogging.logger {}
@@ -134,7 +134,15 @@ object UtTestsDialogProcessor {
134134
if (!LockFile.lock()) {
135135
return
136136
}
137+
138+
UtSettings.concreteExecutionTimeoutInInstrumentedProcess = model.hangingTestsTimeout.timeoutMs
139+
UtSettings.useCustomJavaDocTags = model.commentStyle == JavaDocCommentStyle.CUSTOM_JAVADOC_TAGS
140+
UtSettings.enableSummariesGeneration = model.enableSummariesGeneration
141+
142+
fun now() = LocalDateTime.now().format(DateTimeFormatter.ofPattern("HH:mm:ss.SSS"))
143+
137144
try {
145+
logger.info { "Collecting information phase started at ${now()}" }
138146
val secondsTimeout = TimeUnit.MILLISECONDS.toSeconds(model.timeout)
139147

140148
indicator.isIndeterminate = false
@@ -166,6 +174,7 @@ object UtTestsDialogProcessor {
166174
})
167175
}
168176

177+
169178
for (srcClass in model.srcClasses) {
170179
val (methods, className) = DumbService.getInstance(project)
171180
.runReadActionInSmartMode(Computable {
@@ -191,22 +200,15 @@ object UtTestsDialogProcessor {
191200
continue
192201
}
193202

203+
logger.info { "Collecting information phase finished at ${now()}" }
204+
194205
updateIndicator(
195206
indicator,
196207
ProgressRange.SOLVING,
197208
"Generate test cases for class $className",
198209
processedClasses.toDouble() / totalClasses
199210
)
200211

201-
// set timeout for concrete execution and for generated tests
202-
UtSettings.concreteExecutionTimeoutInInstrumentedProcess =
203-
model.hangingTestsTimeout.timeoutMs
204-
205-
UtSettings.useCustomJavaDocTags =
206-
model.commentStyle == JavaDocCommentStyle.CUSTOM_JAVADOC_TAGS
207-
208-
UtSettings.enableSummariesGeneration = model.enableSummariesGeneration
209-
210212
val searchDirectory = ReadAction
211213
.nonBlocking<Path> {
212214
project.basePath?.let { Paths.get(it) }

utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/ui/GenerateTestsDialogWindow.kt

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ import com.intellij.util.ui.JBUI.scale
7272
import com.intellij.util.ui.JBUI.size
7373
import com.intellij.util.ui.UIUtil
7474
import com.intellij.util.ui.components.BorderLayoutPanel
75+
import mu.KotlinLogging
7576
import java.awt.BorderLayout
7677
import java.awt.Color
7778
import java.awt.Dimension
@@ -80,7 +81,6 @@ import java.nio.file.Files
8081
import java.nio.file.Path
8182
import java.nio.file.Paths
8283
import java.text.ParseException
83-
import java.util.Objects
8484
import java.util.concurrent.TimeUnit
8585
import javax.swing.AbstractAction
8686
import javax.swing.Action
@@ -116,6 +116,7 @@ import org.utbot.framework.plugin.api.utils.MOCKITO_EXTENSIONS_FILE_CONTENT
116116
import org.utbot.framework.plugin.api.utils.MOCKITO_EXTENSIONS_FOLDER
117117
import org.utbot.framework.plugin.api.utils.MOCKITO_MOCKMAKER_FILE_NAME
118118
import org.utbot.framework.util.Conflict
119+
import org.utbot.intellij.plugin.generator.UtTestsDialogProcessor
119120
import org.utbot.intellij.plugin.models.GenerateTestsModel
120121
import org.utbot.intellij.plugin.models.id
121122
import org.utbot.intellij.plugin.models.jUnit4LibraryDescriptor
@@ -142,6 +143,9 @@ import org.utbot.intellij.plugin.ui.utils.testRootType
142143
import org.utbot.intellij.plugin.util.IntelliJApiHelper
143144
import org.utbot.intellij.plugin.util.extractFirstLevelMembers
144145
import org.utbot.intellij.plugin.util.findSdkVersion
146+
import java.time.LocalDateTime
147+
import java.time.format.DateTimeFormatter
148+
import java.util.*
145149

146150
private const val RECENTS_KEY = "org.utbot.recents"
147151

@@ -160,6 +164,8 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m
160164
const val maxSupportedSdkVersion = 17
161165
}
162166

167+
private val logger = KotlinLogging.logger {}
168+
163169
private val membersTable = MemberSelectionTable(emptyList(), null)
164170

165171
private val cbSpecifyTestPackage = CheckBox("Specify destination package", false)
@@ -486,6 +492,10 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m
486492
override fun getOKAction() = okOptionAction
487493

488494
override fun doOKAction() {
495+
fun now() = LocalDateTime.now().format(DateTimeFormatter.ofPattern("HH:mm:ss.SSS"))
496+
497+
logger.info { "Tests generation instantiation phase started at ${now()}" }
498+
489499
model.testPackageName =
490500
if (testPackageField.text != SAME_PACKAGE_LABEL) testPackageField.text else ""
491501

@@ -542,7 +552,6 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m
542552
}
543553
} catch (e: IncorrectOperationException) {
544554
println(e.message)
545-
546555
}
547556

548557
configureJvmTargetIfRequired()
@@ -551,6 +560,7 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m
551560
configureStaticMockingIfRequired()
552561
configureParametrizedTestsIfRequired()
553562

563+
logger.info { "Tests generation instantiation phase finished at ${now()}" }
554564
super.doOKAction()
555565
}
556566

0 commit comments

Comments
 (0)