Sample project and reports are attached to the linked issue. I'm adding only the verbose logs.
When Robolectric runner is used there is a warning:
WARNING : More threads at end of test (6) testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests) than start. (5)
Fail (with RobolectricTestRunner):
> Task :app:pitestDebug
3:12:21 AM PIT >> INFO : ---------------------------------------------------------------------------
3:12:21 AM PIT >> INFO : Enabled (+) and disabled (-) features.
3:12:21 AM PIT >> INFO : -----------------------------------------
3:12:21 AM PIT >> INFO : +FANN Filters mutations in classes and methods with matching annotations of class or runtime retention
3:12:21 AM PIT >> INFO : [annotation] Annotation to avoid (full package name not required)
3:12:21 AM PIT >> INFO : +FENUM Filters mutations in enum constructors
3:12:21 AM PIT >> INFO : +FFBLOCK Filters mutations in code duplicated by finally block inlining
3:12:21 AM PIT >> INFO : +FFEACH Filters mutations in compiler generated code that implements for each loops
3:12:21 AM PIT >> INFO : +FFLOOP Filters any mutations to increments in for loops as they may cause timeouts
3:12:21 AM PIT >> INFO : +FINFINC Filters mutations to increments that may cause infinite loops
3:12:21 AM PIT >> INFO : +FINFIT Filters mutations that may cause infinite loops by removing calls to iterator.next
3:12:21 AM PIT >> INFO : +FINULL Filters mutations in compiler generated code that checks for null by calling getClass
3:12:21 AM PIT >> INFO : +FKOTLIN Filters out junk mutations in bytecode created by compiler for kotlin language features
3:12:21 AM PIT >> INFO : +FLOGCALL Filters mutations in code that makes calls to logging frameworks
3:12:21 AM PIT >> INFO : +FMRNULL Filters mutations in compiler generated code that inserts Objects.requireNonNull for method references
3:12:21 AM PIT >> INFO : +FRECORD Filters mutations in compiler generated record code
3:12:21 AM PIT >> INFO : +FRETEQUIV Filters return vals mutants with bytecode equivalent to the unmutated class
3:12:21 AM PIT >> INFO : +FSEQUIVEQUALS Filters equivalent mutations that affect only performance in short cutting equals methods
3:12:21 AM PIT >> INFO : +FSTATI Filters mutations in static initializers and code called only from them
3:12:21 AM PIT >> INFO : +FTRYWR Filters mutations in code generated for try with resources statements
3:12:21 AM PIT >> INFO : -CLASSLIMIT Limits the maximum number of mutations per class
3:12:21 AM PIT >> INFO : [limit] Integer value for maximum mutations to create per class
3:12:21 AM PIT >> INFO : -EXPORT Exports mutants bytecode and other details to disk
3:12:21 AM PIT >> INFO : ---------------------------------------------------------------------------
3:12:21 AM PIT >> FINE : Running report with ReportOptions [targetClasses=[nz.co.fendustries.playground.logic.*], excludedMethods=[], excludedClasses=[], excludedTestClasses=[], codePaths=[/Users/koral/StudioProjects/PlayGround/app/build/intermediates/javac/debug/classes, /Users/koral/StudioProjects/PlayGround/app/build/tmp/kotlin-classes/debug], reportDir=/Users/koral/StudioProjects/PlayGround/app/build/reports/pitest, historyInputLocation=null, historyOutputLocation=null, sourceDirs=[/Users/koral/StudioProjects/PlayGround/app/src/main/java, /Users/koral/StudioProjects/PlayGround/app/src/main/resources], classPathElements=[/Users/koral/.gradle/caches/modules-2/files-2.1/org.pitest/pitest/1.7.3/4cc79d87a737e29b551159d96dbb0ec2e2e00f83/pitest-1.7.3.jar, /Users/koral/StudioProjects/PlayGround/app/build/pitest-android-31.jar, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/sourceFolderJavaResources/debug, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/sourceFolderJavaResources/test/debug, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/java_res/debug/out, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/java_res/debugUnitTest/out, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/unitTestConfig/test/debug, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/compile_and_runtime_not_namespaced_r_class_jar/debug/R.jar, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/app_classes/debug/classes.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.6.10/e80fe6ac3c3573a80305f5ec43f86b829e8ab53d/kotlin-stdlib-jdk8-1.6.10.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/junit/junit/4.13.2/8ac9e16d933b6fb43bc7f576336b8f4d7eb5ba12/junit-4.13.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest-core-1.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/robolectric/4.7.3/7365a38bf8b5cb86a42b48510f4d760f243ba3ca/robolectric-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/shadows-framework/4.7.3/40428b2b6fd3f04f69063c16ee81e35640efeef3/shadows-framework-4.7.3.jar, /Users/koral/.gradle/caches/transforms-3/bc76a61e2f52fee840873ba2228d3a29/transformed/monitor-1.4.0-api.jar, /Users/koral/.gradle/caches/transforms-3/72c0fd9e6a7ae05295a3c24e6e8da85a/transformed/core-ktx-1.7.0-api.jar, /Users/koral/.gradle/caches/transforms-3/d8582867eaa37256acab50a8f22f026e/transformed/material-1.4.0-api.jar, /Users/koral/.gradle/caches/transforms-3/5b19fadd015f93eedb51bf6f69916c94/transformed/constraintlayout-2.0.4-api.jar, /Users/koral/.gradle/caches/transforms-3/e67b37fb46360a8a869a8e0b0d33550d/transformed/appcompat-1.3.0-api.jar, /Users/koral/.gradle/caches/transforms-3/cc15a91d18d5bc166cadb4c859b16007/transformed/viewpager2-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/888fb749ec3d38ad81b3f317c0ec5b5d/transformed/fragment-1.3.4-api.jar, /Users/koral/.gradle/caches/transforms-3/9525211a6a8c276a1ec030e55e5747fd/transformed/activity-1.2.3-api.jar, /Users/koral/.gradle/caches/transforms-3/89f5e0831fe8ab1d2c803577d7256df6/transformed/appcompat-resources-1.3.0-api.jar, /Users/koral/.gradle/caches/transforms-3/3d0a574a23159bbf8b0f0f1a188de7da/transformed/drawerlayout-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/6a0b17e3bf4a57b4f3ef2c5638b62031/transformed/coordinatorlayout-1.1.0-api.jar, /Users/koral/.gradle/caches/transforms-3/3bb129209b307e763df273c7f3ee6db4/transformed/dynamicanimation-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/78dec5dd3c7c6b19e1a4f9856750d3e7/transformed/recyclerview-1.1.0-api.jar, /Users/koral/.gradle/caches/transforms-3/2096ae73aaf9b3c98256d539c6894590/transformed/transition-1.2.0-api.jar, /Users/koral/.gradle/caches/transforms-3/3b5848e87f978530fd08bc954a71823b/transformed/vectordrawable-animated-1.1.0-api.jar, /Users/koral/.gradle/caches/transforms-3/3425a212969f9e3eed12010e51e76719/transformed/vectordrawable-1.1.0-api.jar, /Users/koral/.gradle/caches/transforms-3/5e9fd9c7fd1490f773a9d6e84c719b18/transformed/viewpager-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/6355722eb1372e80b499ff0ffc0b02f8/transformed/legacy-support-core-utils-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/d3aac5f2c2ea89c1ba77460e6f403955/transformed/loader-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/bed78873dd277752e6d16286be2b5548/transformed/customview-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/cacce6b2189df6f252d3b26dae8c2032/transformed/core-1.7.0-api.jar, /Users/koral/.gradle/caches/transforms-3/7fe28f840ce056ac359b4d71d2c552e6/transformed/cursoradapter-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/1e38a5b32fb245eb8fad21ae11742dc5/transformed/lifecycle-viewmodel-savedstate-2.3.1-api.jar, /Users/koral/.gradle/caches/transforms-3/2fe6ff8d375d49f96f9f06df1e5b6b46/transformed/savedstate-1.1.0-api.jar, /Users/koral/.gradle/caches/transforms-3/b1dd340246fb8e7bee45115475483c23/transformed/cardview-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/a16081a276746189c3479c1115e57316/transformed/lifecycle-runtime-2.3.1-api.jar, /Users/koral/.gradle/caches/transforms-3/021df0456884efffb0d51336ad6cf648/transformed/versionedparcelable-1.1.1-api.jar, /Users/koral/.gradle/caches/transforms-3/85e2c9cab8f2603233bc972c82ad899e/transformed/lifecycle-viewmodel-2.3.1-api.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/androidx.collection/collection/1.1.0/1f27220b47669781457de0d600849a5de0e89909/collection-1.1.0.jar, /Users/koral/.gradle/caches/transforms-3/262ccdbf6d0fcc99fd521f946cd2976c/transformed/lifecycle-livedata-2.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/bf62adb95fc8705180cf307f03b9e05a/transformed/lifecycle-livedata-core-2.3.1-api.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/androidx.lifecycle/lifecycle-common/2.3.1/fc466261d52f4433863642fb40d12441ae274a98/lifecycle-common-2.3.1.jar, /Users/koral/.gradle/caches/transforms-3/6a2b69f5635c668e2140f71f60c73044/transformed/core-runtime-2.1.0-api.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/androidx.arch.core/core-common/2.1.0/b3152fc64428c9354344bd89848ecddc09b6f07e/core-common-2.1.0.jar, /Users/koral/.gradle/caches/transforms-3/60e2c5af7e4456070ba298e3311b3a3b/transformed/interpolator-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/8f82009cca0fdc1b03f17ba3609ccc2b/transformed/documentfile-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/0c5349edbf9606a31b46e48b13180659/transformed/localbroadcastmanager-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/60811c9f814e6dbc6aa61251ca11cf3f/transformed/print-1.0.0-api.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/androidx.annotation/annotation/1.2.0/57136ff68ee784c6e19db34ed4a175338fadfde1/annotation-1.2.0.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/junit/4.7.3/687caec5d95c48f59c5b6168f8cb1472b1757827/junit-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/resources/4.7.3/fadfbb93414a754f3ca2dd0e71c2ae00730b1cc/resources-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/sandbox/4.7.3/449b30d91562089e74a854f9e6d47cbf1568bdd1/sandbox-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/utils-reflector/4.7.3/e27d1c1f867ff08b5aa28cae6a5b1f3d067002e4/utils-reflector-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/plugins-maven-dependency-resolver/4.7.3/e9ad43068bd4bc6e967879dbacd2a450e2a0b994/plugins-maven-dependency-resolver-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/shadowapi/4.7.3/f58b925a11605a82f32327db4c271f3f835008f/shadowapi-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/utils/4.7.3/580c8ed0e92508df69c8dc97e8cbc12b1052ef10/utils-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/pluginapi/4.7.3/56e53ba922352fac89d1851206ba95fa7ea13452/pluginapi-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/annotations/4.7.3/ce248bbc24447bc2acfbababc51a100570c0e8cf/annotations-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/nativeruntime/4.7.3/4f5ba41c2a5c064fb82d0f30fcc03f1300d913b5/nativeruntime-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/27.0.1-jre/bd41a290787b5301e63929676d792c507bbc00ae/guava-27.0.1-jre.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.guava/failureaccess/1.0.1/1dcf1de382a0bf95a3d8b0849546c88bac1292c9/failureaccess-1.0.1.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/b421526c5f297295adef1c886e5246c39d4ac629/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.code.findbugs/jsr305/3.0.2/25ea2e8b0c338a877313bd4672d3fe056ea78f0d/jsr305-3.0.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.checkerframework/checker-qual/2.5.2/cea74543d5904a30861a61b4643a5f2bb372efc4/checker-qual-2.5.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.errorprone/error_prone_annotations/2.9.0/74fe3b8b4f3fc84dc940d0ca4c4b270dbc902764/error_prone_annotations-2.9.0.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.j2objc/j2objc-annotations/1.1/ed28ded51a8b1c6b112568def5f4b455e6809019/j2objc-annotations-1.1.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.codehaus.mojo/animal-sniffer-annotations/1.17/f97ce6decaea32b36101e37979f8b647f00681fb/animal-sniffer-annotations-1.17.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/javax.inject/javax.inject/1/6975da39a7040257bd51d21a231b76c915872d38/javax.inject-1.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/javax.annotation/javax.annotation-api/1.3.2/934c04d3cfef185a8008e7bf34331b79730a9d43/javax.annotation-api-1.3.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-commons/9.2/f4d7f0fc9054386f2893b602454d48e07d4fbead/asm-commons-9.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-util/9.2/fbc178fc5ba3dab50fd7e8a5317b8b647c8e8946/asm-util-9.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-analysis/9.2/7487dd756daf96cab9986e44b9d7bcb796a61c10/asm-analysis-9.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-tree/9.2/d96c99a30f5e1a19b0e609dbb19a44d8518ac01e/asm-tree-9.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm/9.2/81a03f76019c67362299c40e0ba13405f5467bff/asm-9.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.almworks.sqlite4java/sqlite4java/1.0.392/d6234e08ff4e1607ff5321da2579571f05ff778d/sqlite4java-1.0.392.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.ibm.icu/icu4j/53.1/786d9055d4ca8c1aab4a7d4ac8283f973fd7e41f/icu4j-53.1.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.auto.value/auto-value-annotations/1.7.4/eff48ed53995db2dadf0456426cc1f8700136f86/auto-value-annotations-1.7.4.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.bouncycastle/bcprov-jdk15on/1.68/46a080368d38b428d237a59458f9bc915222894d/bcprov-jdk15on-1.68.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.6.10/e1c380673654a089c4f0c9f83d0ddfdc1efdb498/kotlin-stdlib-jdk7-1.6.10.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.6.10/b8af3fe6f1ca88526914929add63cf5e7c5049af/kotlin-stdlib-1.6.10.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.6.10/c118700e3a33c8a0d9adc920e9dec0831171925/kotlin-stdlib-common-1.6.10.jar, /Users/koral/.gradle/caches/transforms-3/843c94101332065d4e12bf5fe442ece1/transformed/annotation-experimental-1.1.0-api.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/androidx.constraintlayout/constraintlayout-solver/2.0.4/1f001d7db280a89a6c26b26a66eb064bb6d5efeb/constraintlayout-solver-2.0.4.jar, /Users/koral/StudioProjects/PlayGround/app/build/tmp/kotlin-classes/debugUnitTest, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/javac/debugUnitTest/classes, /Users/koral/StudioProjects/PlayGround/app/build/tmp/kotlin-classes/debug, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/javac/debug/classes, /Users/koral/StudioProjects/PlayGround/app/src/test/java, /Users/koral/StudioProjects/PlayGround/app/src/test/resources], mutators=[], features=[], dependencyAnalysisMaxDistance=-1, jvmArgs=[-Djava.awt.headless=true], numberOfThreads=1, timeoutFactor=1.25, timeoutConstant=4000, targetTests=[^nz\.co\.fendustries\.playground\.logic\..*$], loggingClasses=[kotlin.jvm.internal], verbosity=VERBOSE, failWhenNoMutations=true, outputs=[XML, HTML], groupConfig=TestGroupConfig [excludedGroups=[], includedGroups=[]], fullMutationMatrix=false, mutationUnitSize=0, shouldCreateTimestampedReports=false, detectInlinedCode=false, exportLineCoverage=false, mutationThreshold=80, testStrengthThreshold=0, coverageThreshold=0, mutationEngine=gregor, javaExecutable=null, includeLaunchClasspath=false, properties={}, maxSurvivors=-1, excludedRunners=[], includedTestMethods=[], testPlugin=, useClasspathJar=false, skipFailingTests=false]
3:12:21 AM PIT >> FINE : System class path is /Users/koral/.gradle/caches/modules-2/files-2.1/org.pitest/pitest-command-line/1.7.3/6b38162935953025ec76b3fa42c1e86a3035930/pitest-command-line-1.7.3.jar:/Users/koral/.gradle/caches/modules-2/files-2.1/org.pitest/pitest-entry/1.7.3/4ac3ac202b16e4b1aac7af79d6e6fe6261bc9fa3/pitest-entry-1.7.3.jar:/Users/koral/.gradle/caches/modules-2/files-2.1/org.pitest/pitest/1.7.3/4cc79d87a737e29b551159d96dbb0ec2e2e00f83/pitest-1.7.3.jar
3:12:21 AM PIT >> FINE : Maximum available memory is 8192 mb
3:12:21 AM PIT >> FINE : Incremental analysis set 4 mutations to a status of NOT_STARTED
3:12:21 AM PIT >> INFO : Incremental analysis reduced number of mutations by 0
3:12:21 AM PIT >> INFO : Created 2 mutation test units in pre scan
3:12:22 AM PIT >> FINE : MINION : Installing PIT agent
3:12:22 AM PIT >> INFO : Sending 4 test classes to minion
3:12:22 AM PIT >> INFO : Sent tests to minion
3:12:22 AM PIT >> INFO : MINION : 3:12:22 AM PIT >> FINE : Expecting 4 tests classes from parent
3:12:22 AM PIT >> INFO : MINION : 3:12:22 AM PIT >> FINE : Tests classes received
3:12:22 AM PIT >> INFO : MINION : 3:12:22 AM PIT >> INFO : Checking environment
3:12:22 AM PIT >> INFO : MINION : 3:12:22 AM PIT >> INFO : Found 2 tests
3:12:22 AM PIT >> INFO : MINION : 3:12:22 AM PIT >> INFO : Dependency analysis reduced number of potential tests by 0
3:12:22 AM PIT >> INFO : MINION : 3:12:22 AM PIT >> INFO : 2 tests received
3:12:22 AM PIT >> INFO : MINION : 3:12:22 AM PIT >> FINE : Running 2 units
3:12:22 AM PIT >> INFO : MINION : 3:12:22 AM PIT >> FINE : Gathering coverage for test Description [testClass=nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest, name=testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]
3:12:22 AM PIT >> INFO : MINION : 3:12:22 AM PIT >> FINE : Gathering coverage for test Description [testClass=nz.co.fendustries.playground.logic.NotCoveredLogicTests, name=testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests)]
3:12:24 AM PIT >> INFO : MINION : 3:12:24 AM PIT >> WARNING : More threads at end of test (6) testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests) than start. (5) -3:12:24 AM PIT >> FINE : Coverage generator Minion exited ok
3:12:24 AM PIT >> INFO : Calculated coverage in 2 seconds.
3:12:24 AM PIT >> FINE : Used memory after coverage calculation 13 mb
3:12:24 AM PIT >> FINE : Free Memory after coverage calculation 498 mb
3:12:24 AM PIT >> FINE : Incremental analysis set 4 mutations to a status of NOT_STARTED
3:12:24 AM PIT >> INFO : Incremental analysis reduced number of mutations by 0
3:12:24 AM PIT >> INFO : Created 2 mutation test units
3:12:24 AM PIT >> FINE : Used memory before analysis start 16 mb
3:12:24 AM PIT >> FINE : Free Memory before analysis start 495 mb
3:12:24 AM PIT >> FINE : Running 2 units
stdout : Installing PIT agent
stderr : 3:12:24 AM PIT >> FINE : Running mutation MutationDetails [id=MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator], filename=CorrectlyCoveredLogic.kt, block=0, lineNumber=5, description=Replaced integer addition with subtraction, testsInOrder=[nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]]
stderr : 3:12:24 AM PIT >> FINE : mutating method addSomeNumbers
stderr : 3:12:24 AM PIT >> FINE : 1 relevant test for addSomeNumbers
stderr : 3:12:24 AM PIT >> FINE : replaced class with mutant in 5 ms
stderr : 3:12:24 AM PIT >> FINE : Running 1 units
stderr : 3:12:24 AM PIT >> FINE : Mutation MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator] detected = KILLED by [nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]
stderr : 3:12:24 AM PIT >> FINE : processed mutation in 53 ms.
stderr : 3:12:24 AM PIT >> FINE : Running mutation MutationDetails [id=MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator], filename=CorrectlyCoveredLogic.kt, block=0, lineNumber=5, description=replaced int return with 0 for nz/co/fendustries/playground/logic/CorrectlyCoveredLogic::addSomeNumbers, testsInOrder=[nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]]
3:12:24 AM PIT >> FINE : MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator] KILLED by [nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]
stderr : 3:12:24 AM PIT >> FINE : mutating method addSomeNumbers
stderr : 3:12:24 AM PIT >> FINE : 1 relevant test for addSomeNumbers
stderr : 3:12:24 AM PIT >> FINE : replaced class with mutant in 4 ms
stderr : 3:12:24 AM PIT >> FINE : Running 1 units
stderr : 3:12:24 AM PIT >> FINE : Mutation MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator] detected = KILLED by [nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]
stderr : 3:12:24 AM PIT >> FINE : processed mutation in 7 ms.
3:12:24 AM PIT >> FINE : MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator] KILLED by [nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]
3:12:24 AM PIT >> FINE : Exit code was - OK
3:stdout : Installing PIT agentexited ok /
stderr : 3:12:25 AM PIT >> FINE : Running mutation MutationDetails [id=MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator], filename=NotCoveredLogic.kt, block=0, lineNumber=5, description=replaced int return with 0 for nz/co/fendustries/playground/logic/NotCoveredLogic::subtractSomeNumbers, testsInOrder=[nz.co.fendustries.playground.logic.NotCoveredLogicTests.testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests)]]
stderr : 3:12:25 AM PIT >> FINE : mutating method subtractSomeNumbers
stderr : 3:12:25 AM PIT >> FINE : 1 relevant test for subtractSomeNumbers
stderr : 3:12:25 AM PIT >> FINE : replaced class with mutant in 6 ms
stderr : 3:12:25 AM PIT >> FINE : Running 1 units
stderr : 3:12:27 AM PIT >> FINE : Mutation MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator] detected = SURVIVED
stderr : 3:12:27 AM PIT >> FINE : processed mutation in 1960 ms.
stderr : 3:12:27 AM PIT >> FINE : Running mutation MutationDetails [id=MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator], filename=NotCoveredLogic.kt, block=0, lineNumber=5, description=Replaced integer subtraction with addition, testsInOrder=[nz.co.fendustries.playground.logic.NotCoveredLogicTests.testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests)]]
3:12:27 AM PIT >> FINE : MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator] SURVIVED
stderr : 3:12:27 AM PIT >> FINE : mutating method subtractSomeNumbers
stderr : 3:12:27 AM PIT >> FINE : 1 relevant test for subtractSomeNumbers
stderr : 3:12:27 AM PIT >> FINE : replaced class with mutant in 17 ms
stderr : 3:12:27 AM PIT >> FINE : Running 1 units
stderr : 3:12:27 AM PIT >> FINE : Mutation MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator] detected = SURVIVED
stderr : 3:12:27 AM PIT >> FINE : processed mutation in 27 ms.
3:12:27 AM PIT >> FINE : MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator] SURVIVED
3:12:27 AM PIT >> FINE : Exit code was - OK
3:3:12:27 AM PIT >> INFO : Completed in 5 seconds -
================================================================================
- Mutators
================================================================================
> org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator
>> Generated 2 Killed 1 (50%)
> KILLED 1 SURVIVED 1 TIMED_OUT 0 NON_VIABLE 0
> MEMORY_ERROR 0 NOT_STARTED 0 STARTED 0 RUN_ERROR 0
> NO_COVERAGE 0
--------------------------------------------------------------------------------
> org.pitest.mutationtest.engine.gregor.mutators.MathMutator
>> Generated 2 Killed 1 (50%)
> KILLED 1 SURVIVED 1 TIMED_OUT 0 NON_VIABLE 0
> MEMORY_ERROR 0 NOT_STARTED 0 STARTED 0 RUN_ERROR 0
> NO_COVERAGE 0
--------------------------------------------------------------------------------
================================================================================
- Timings
================================================================================
> pre-scan for mutations : < 1 second
> scan classpath : < 1 second
> coverage and dependency analysis : 2 seconds
> build mutation tests : < 1 second
> run mutation analysis : 2 seconds
--------------------------------------------------------------------------------
> Total : 5 seconds
--------------------------------------------------------------------------------
================================================================================
- Statistics
================================================================================
>> Line Coverage: 4/4 (100%)
>> Generated 4 mutations Killed 2 (50%)
>> Mutations with no coverage 0. Test strength 50%
>> Ran 4 tests (1 tests per mutation)
Pitest development is currently supported by GroupCDG.
Enhanced functionality available at https://pitest.groupcdg.com/
Exception in thread "main" java.lang.RuntimeException: Mutation score of 50 is below threshold of 80
at org.pitest.mutationtest.commandline.MutationCoverageReport.throwErrorIfScoreBelowMutationThreshold(MutationCoverageReport.java:70)
at org.pitest.mutationtest.commandline.MutationCoverageReport.main(MutationCoverageReport.java:51)
> Task :app:pitestDebug FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:pitestDebug'.
> Process 'command '/Users/koral/.sdkman/candidates/java/11.0.15-tem/bin/java'' finished with non-zero exit value 1
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 7s
20 actionable tasks: 2 executed, 18 up-to-date
Success (without RobolectricTestRunner):
> Task :app:pitestDebug
3:10:25 AM PIT >> INFO : ---------------------------------------------------------------------------
3:10:25 AM PIT >> INFO : Enabled (+) and disabled (-) features.
3:10:25 AM PIT >> INFO : -----------------------------------------
3:10:25 AM PIT >> INFO : +FANN Filters mutations in classes and methods with matching annotations of class or runtime retention
3:10:25 AM PIT >> INFO : [annotation] Annotation to avoid (full package name not required)
3:10:25 AM PIT >> INFO : +FENUM Filters mutations in enum constructors
3:10:25 AM PIT >> INFO : +FFBLOCK Filters mutations in code duplicated by finally block inlining
3:10:25 AM PIT >> INFO : +FFEACH Filters mutations in compiler generated code that implements for each loops
3:10:25 AM PIT >> INFO : +FFLOOP Filters any mutations to increments in for loops as they may cause timeouts
3:10:25 AM PIT >> INFO : +FINFINC Filters mutations to increments that may cause infinite loops
3:10:25 AM PIT >> INFO : +FINFIT Filters mutations that may cause infinite loops by removing calls to iterator.next
3:10:25 AM PIT >> INFO : +FINULL Filters mutations in compiler generated code that checks for null by calling getClass
3:10:25 AM PIT >> INFO : +FKOTLIN Filters out junk mutations in bytecode created by compiler for kotlin language features
3:10:25 AM PIT >> INFO : +FLOGCALL Filters mutations in code that makes calls to logging frameworks
3:10:25 AM PIT >> INFO : +FMRNULL Filters mutations in compiler generated code that inserts Objects.requireNonNull for method references
3:10:25 AM PIT >> INFO : +FRECORD Filters mutations in compiler generated record code
3:10:25 AM PIT >> INFO : +FRETEQUIV Filters return vals mutants with bytecode equivalent to the unmutated class
3:10:25 AM PIT >> INFO : +FSEQUIVEQUALS Filters equivalent mutations that affect only performance in short cutting equals methods
3:10:25 AM PIT >> INFO : +FSTATI Filters mutations in static initializers and code called only from them
3:10:25 AM PIT >> INFO : +FTRYWR Filters mutations in code generated for try with resources statements
3:10:25 AM PIT >> INFO : -CLASSLIMIT Limits the maximum number of mutations per class
3:10:25 AM PIT >> INFO : [limit] Integer value for maximum mutations to create per class
3:10:25 AM PIT >> INFO : -EXPORT Exports mutants bytecode and other details to disk
3:10:25 AM PIT >> INFO : ---------------------------------------------------------------------------
3:10:25 AM PIT >> FINE : Running report with ReportOptions [targetClasses=[nz.co.fendustries.playground.logic.*], excludedMethods=[], excludedClasses=[], excludedTestClasses=[], codePaths=[/Users/koral/StudioProjects/PlayGround/app/build/intermediates/javac/debug/classes, /Users/koral/StudioProjects/PlayGround/app/build/tmp/kotlin-classes/debug], reportDir=/Users/koral/StudioProjects/PlayGround/app/build/reports/pitest, historyInputLocation=null, historyOutputLocation=null, sourceDirs=[/Users/koral/StudioProjects/PlayGround/app/src/main/java, /Users/koral/StudioProjects/PlayGround/app/src/main/resources], classPathElements=[/Users/koral/.gradle/caches/modules-2/files-2.1/org.pitest/pitest/1.7.3/4cc79d87a737e29b551159d96dbb0ec2e2e00f83/pitest-1.7.3.jar, /Users/koral/StudioProjects/PlayGround/app/build/pitest-android-31.jar, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/sourceFolderJavaResources/debug, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/sourceFolderJavaResources/test/debug, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/java_res/debug/out, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/java_res/debugUnitTest/out, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/unitTestConfig/test/debug, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/compile_and_runtime_not_namespaced_r_class_jar/debug/R.jar, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/app_classes/debug/classes.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.6.10/e80fe6ac3c3573a80305f5ec43f86b829e8ab53d/kotlin-stdlib-jdk8-1.6.10.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/junit/junit/4.13.2/8ac9e16d933b6fb43bc7f576336b8f4d7eb5ba12/junit-4.13.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest-core-1.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/robolectric/4.7.3/7365a38bf8b5cb86a42b48510f4d760f243ba3ca/robolectric-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/shadows-framework/4.7.3/40428b2b6fd3f04f69063c16ee81e35640efeef3/shadows-framework-4.7.3.jar, /Users/koral/.gradle/caches/transforms-3/bc76a61e2f52fee840873ba2228d3a29/transformed/monitor-1.4.0-api.jar, /Users/koral/.gradle/caches/transforms-3/72c0fd9e6a7ae05295a3c24e6e8da85a/transformed/core-ktx-1.7.0-api.jar, /Users/koral/.gradle/caches/transforms-3/d8582867eaa37256acab50a8f22f026e/transformed/material-1.4.0-api.jar, /Users/koral/.gradle/caches/transforms-3/5b19fadd015f93eedb51bf6f69916c94/transformed/constraintlayout-2.0.4-api.jar, /Users/koral/.gradle/caches/transforms-3/e67b37fb46360a8a869a8e0b0d33550d/transformed/appcompat-1.3.0-api.jar, /Users/koral/.gradle/caches/transforms-3/cc15a91d18d5bc166cadb4c859b16007/transformed/viewpager2-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/888fb749ec3d38ad81b3f317c0ec5b5d/transformed/fragment-1.3.4-api.jar, /Users/koral/.gradle/caches/transforms-3/9525211a6a8c276a1ec030e55e5747fd/transformed/activity-1.2.3-api.jar, /Users/koral/.gradle/caches/transforms-3/89f5e0831fe8ab1d2c803577d7256df6/transformed/appcompat-resources-1.3.0-api.jar, /Users/koral/.gradle/caches/transforms-3/3d0a574a23159bbf8b0f0f1a188de7da/transformed/drawerlayout-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/6a0b17e3bf4a57b4f3ef2c5638b62031/transformed/coordinatorlayout-1.1.0-api.jar, /Users/koral/.gradle/caches/transforms-3/3bb129209b307e763df273c7f3ee6db4/transformed/dynamicanimation-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/78dec5dd3c7c6b19e1a4f9856750d3e7/transformed/recyclerview-1.1.0-api.jar, /Users/koral/.gradle/caches/transforms-3/2096ae73aaf9b3c98256d539c6894590/transformed/transition-1.2.0-api.jar, /Users/koral/.gradle/caches/transforms-3/3b5848e87f978530fd08bc954a71823b/transformed/vectordrawable-animated-1.1.0-api.jar, /Users/koral/.gradle/caches/transforms-3/3425a212969f9e3eed12010e51e76719/transformed/vectordrawable-1.1.0-api.jar, /Users/koral/.gradle/caches/transforms-3/5e9fd9c7fd1490f773a9d6e84c719b18/transformed/viewpager-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/6355722eb1372e80b499ff0ffc0b02f8/transformed/legacy-support-core-utils-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/d3aac5f2c2ea89c1ba77460e6f403955/transformed/loader-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/bed78873dd277752e6d16286be2b5548/transformed/customview-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/cacce6b2189df6f252d3b26dae8c2032/transformed/core-1.7.0-api.jar, /Users/koral/.gradle/caches/transforms-3/7fe28f840ce056ac359b4d71d2c552e6/transformed/cursoradapter-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/1e38a5b32fb245eb8fad21ae11742dc5/transformed/lifecycle-viewmodel-savedstate-2.3.1-api.jar, /Users/koral/.gradle/caches/transforms-3/2fe6ff8d375d49f96f9f06df1e5b6b46/transformed/savedstate-1.1.0-api.jar, /Users/koral/.gradle/caches/transforms-3/b1dd340246fb8e7bee45115475483c23/transformed/cardview-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/a16081a276746189c3479c1115e57316/transformed/lifecycle-runtime-2.3.1-api.jar, /Users/koral/.gradle/caches/transforms-3/021df0456884efffb0d51336ad6cf648/transformed/versionedparcelable-1.1.1-api.jar, /Users/koral/.gradle/caches/transforms-3/85e2c9cab8f2603233bc972c82ad899e/transformed/lifecycle-viewmodel-2.3.1-api.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/androidx.collection/collection/1.1.0/1f27220b47669781457de0d600849a5de0e89909/collection-1.1.0.jar, /Users/koral/.gradle/caches/transforms-3/262ccdbf6d0fcc99fd521f946cd2976c/transformed/lifecycle-livedata-2.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/bf62adb95fc8705180cf307f03b9e05a/transformed/lifecycle-livedata-core-2.3.1-api.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/androidx.lifecycle/lifecycle-common/2.3.1/fc466261d52f4433863642fb40d12441ae274a98/lifecycle-common-2.3.1.jar, /Users/koral/.gradle/caches/transforms-3/6a2b69f5635c668e2140f71f60c73044/transformed/core-runtime-2.1.0-api.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/androidx.arch.core/core-common/2.1.0/b3152fc64428c9354344bd89848ecddc09b6f07e/core-common-2.1.0.jar, /Users/koral/.gradle/caches/transforms-3/60e2c5af7e4456070ba298e3311b3a3b/transformed/interpolator-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/8f82009cca0fdc1b03f17ba3609ccc2b/transformed/documentfile-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/0c5349edbf9606a31b46e48b13180659/transformed/localbroadcastmanager-1.0.0-api.jar, /Users/koral/.gradle/caches/transforms-3/60811c9f814e6dbc6aa61251ca11cf3f/transformed/print-1.0.0-api.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/androidx.annotation/annotation/1.2.0/57136ff68ee784c6e19db34ed4a175338fadfde1/annotation-1.2.0.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/junit/4.7.3/687caec5d95c48f59c5b6168f8cb1472b1757827/junit-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/resources/4.7.3/fadfbb93414a754f3ca2dd0e71c2ae00730b1cc/resources-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/sandbox/4.7.3/449b30d91562089e74a854f9e6d47cbf1568bdd1/sandbox-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/utils-reflector/4.7.3/e27d1c1f867ff08b5aa28cae6a5b1f3d067002e4/utils-reflector-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/plugins-maven-dependency-resolver/4.7.3/e9ad43068bd4bc6e967879dbacd2a450e2a0b994/plugins-maven-dependency-resolver-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/shadowapi/4.7.3/f58b925a11605a82f32327db4c271f3f835008f/shadowapi-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/utils/4.7.3/580c8ed0e92508df69c8dc97e8cbc12b1052ef10/utils-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/pluginapi/4.7.3/56e53ba922352fac89d1851206ba95fa7ea13452/pluginapi-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/annotations/4.7.3/ce248bbc24447bc2acfbababc51a100570c0e8cf/annotations-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.robolectric/nativeruntime/4.7.3/4f5ba41c2a5c064fb82d0f30fcc03f1300d913b5/nativeruntime-4.7.3.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/27.0.1-jre/bd41a290787b5301e63929676d792c507bbc00ae/guava-27.0.1-jre.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.guava/failureaccess/1.0.1/1dcf1de382a0bf95a3d8b0849546c88bac1292c9/failureaccess-1.0.1.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/b421526c5f297295adef1c886e5246c39d4ac629/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.code.findbugs/jsr305/3.0.2/25ea2e8b0c338a877313bd4672d3fe056ea78f0d/jsr305-3.0.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.checkerframework/checker-qual/2.5.2/cea74543d5904a30861a61b4643a5f2bb372efc4/checker-qual-2.5.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.errorprone/error_prone_annotations/2.9.0/74fe3b8b4f3fc84dc940d0ca4c4b270dbc902764/error_prone_annotations-2.9.0.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.j2objc/j2objc-annotations/1.1/ed28ded51a8b1c6b112568def5f4b455e6809019/j2objc-annotations-1.1.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.codehaus.mojo/animal-sniffer-annotations/1.17/f97ce6decaea32b36101e37979f8b647f00681fb/animal-sniffer-annotations-1.17.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/javax.inject/javax.inject/1/6975da39a7040257bd51d21a231b76c915872d38/javax.inject-1.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/javax.annotation/javax.annotation-api/1.3.2/934c04d3cfef185a8008e7bf34331b79730a9d43/javax.annotation-api-1.3.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-commons/9.2/f4d7f0fc9054386f2893b602454d48e07d4fbead/asm-commons-9.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-util/9.2/fbc178fc5ba3dab50fd7e8a5317b8b647c8e8946/asm-util-9.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-analysis/9.2/7487dd756daf96cab9986e44b9d7bcb796a61c10/asm-analysis-9.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-tree/9.2/d96c99a30f5e1a19b0e609dbb19a44d8518ac01e/asm-tree-9.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm/9.2/81a03f76019c67362299c40e0ba13405f5467bff/asm-9.2.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.almworks.sqlite4java/sqlite4java/1.0.392/d6234e08ff4e1607ff5321da2579571f05ff778d/sqlite4java-1.0.392.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.ibm.icu/icu4j/53.1/786d9055d4ca8c1aab4a7d4ac8283f973fd7e41f/icu4j-53.1.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/com.google.auto.value/auto-value-annotations/1.7.4/eff48ed53995db2dadf0456426cc1f8700136f86/auto-value-annotations-1.7.4.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.bouncycastle/bcprov-jdk15on/1.68/46a080368d38b428d237a59458f9bc915222894d/bcprov-jdk15on-1.68.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.6.10/e1c380673654a089c4f0c9f83d0ddfdc1efdb498/kotlin-stdlib-jdk7-1.6.10.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.6.10/b8af3fe6f1ca88526914929add63cf5e7c5049af/kotlin-stdlib-1.6.10.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.6.10/c118700e3a33c8a0d9adc920e9dec0831171925/kotlin-stdlib-common-1.6.10.jar, /Users/koral/.gradle/caches/transforms-3/843c94101332065d4e12bf5fe442ece1/transformed/annotation-experimental-1.1.0-api.jar, /Users/koral/.gradle/caches/modules-2/files-2.1/androidx.constraintlayout/constraintlayout-solver/2.0.4/1f001d7db280a89a6c26b26a66eb064bb6d5efeb/constraintlayout-solver-2.0.4.jar, /Users/koral/StudioProjects/PlayGround/app/build/tmp/kotlin-classes/debugUnitTest, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/javac/debugUnitTest/classes, /Users/koral/StudioProjects/PlayGround/app/build/tmp/kotlin-classes/debug, /Users/koral/StudioProjects/PlayGround/app/build/intermediates/javac/debug/classes, /Users/koral/StudioProjects/PlayGround/app/src/test/java, /Users/koral/StudioProjects/PlayGround/app/src/test/resources], mutators=[], features=[], dependencyAnalysisMaxDistance=-1, jvmArgs=[-Djava.awt.headless=true], numberOfThreads=1, timeoutFactor=1.25, timeoutConstant=4000, targetTests=[^nz\.co\.fendustries\.playground\.logic\..*$], loggingClasses=[kotlin.jvm.internal], verbosity=VERBOSE, failWhenNoMutations=true, outputs=[XML, HTML], groupConfig=TestGroupConfig [excludedGroups=[], includedGroups=[]], fullMutationMatrix=false, mutationUnitSize=0, shouldCreateTimestampedReports=false, detectInlinedCode=false, exportLineCoverage=false, mutationThreshold=80, testStrengthThreshold=0, coverageThreshold=0, mutationEngine=gregor, javaExecutable=null, includeLaunchClasspath=false, properties={}, maxSurvivors=-1, excludedRunners=[], includedTestMethods=[], testPlugin=, useClasspathJar=false, skipFailingTests=false]
3:10:25 AM PIT >> FINE : System class path is /Users/koral/.gradle/caches/modules-2/files-2.1/org.pitest/pitest-command-line/1.7.3/6b38162935953025ec76b3fa42c1e86a3035930/pitest-command-line-1.7.3.jar:/Users/koral/.gradle/caches/modules-2/files-2.1/org.pitest/pitest-entry/1.7.3/4ac3ac202b16e4b1aac7af79d6e6fe6261bc9fa3/pitest-entry-1.7.3.jar:/Users/koral/.gradle/caches/modules-2/files-2.1/org.pitest/pitest/1.7.3/4cc79d87a737e29b551159d96dbb0ec2e2e00f83/pitest-1.7.3.jar
3:10:25 AM PIT >> FINE : Maximum available memory is 8192 mb
3:10:25 AM PIT >> FINE : Incremental analysis set 4 mutations to a status of NOT_STARTED
3:10:25 AM PIT >> INFO : Incremental analysis reduced number of mutations by 0
3:10:25 AM PIT >> INFO : Created 2 mutation test units in pre scan
3:10:25 AM PIT >> FINE : MINION : Installing PIT agent
3:10:25 AM PIT >> INFO : Sending 4 test classes to minion
3:10:25 AM PIT >> INFO : Sent tests to minion
3:10:25 AM PIT >> INFO : MINION : 3:10:25 AM PIT >> FINE : Expecting 4 tests classes from parent
3:10:25 AM PIT >> INFO : MINION : 3:10:25 AM PIT >> FINE : Tests classes received
3:10:25 AM PIT >> INFO : MINION : 3:10:25 AM PIT >> INFO : Checking environment
3:10:25 AM PIT >> INFO : MINION : 3:10:25 AM PIT >> INFO : Found 2 tests
3:10:25 AM PIT >> INFO : MINION : 3:10:25 AM PIT >> INFO : Dependency analysis reduced number of potential tests by 0
3:10:25 AM PIT >> INFO : MINION : 3:10:25 AM PIT >> INFO : 2 tests received
3:10:25 AM PIT >> INFO : MINION : 3:10:25 AM PIT >> FINE : Running 2 units
3:10:25 AM PIT >> INFO : MINION : 3:10:25 AM PIT >> FINE : Gathering coverage for test Description [testClass=nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest, name=testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]
3:10:25 AM PIT >> INFO : MINION : 3:10:25 AM PIT >> FINE : Gathering coverage for test Description [testClass=nz.co.fendustries.playground.logic.NotCoveredLogicTests, name=testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests)] -3:10:25 AM PIT >> FINE : Coverage generator Minion exited ok
3:10:25 AM PIT >> INFO : Calculated coverage in 0 seconds.
3:10:25 AM PIT >> FINE : Used memory after coverage calculation 13 mb
3:10:25 AM PIT >> FINE : Free Memory after coverage calculation 498 mb
3:10:25 AM PIT >> FINE : Incremental analysis set 4 mutations to a status of NOT_STARTED
3:10:25 AM PIT >> INFO : Incremental analysis reduced number of mutations by 0
3:10:25 AM PIT >> INFO : Created 2 mutation test units
3:10:25 AM PIT >> FINE : Used memory before analysis start 16 mb
3:10:25 AM PIT >> FINE : Free Memory before analysis start 495 mb
3:10:25 AM PIT >> FINE : Running 2 units
stdout : Installing PIT agent
stderr : 3:10:26 AM PIT >> FINE : Running mutation MutationDetails [id=MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator], filename=CorrectlyCoveredLogic.kt, block=0, lineNumber=5, description=Replaced integer addition with subtraction, testsInOrder=[nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]]
stderr : 3:10:26 AM PIT >> FINE : mutating method addSomeNumbers
stderr : 3:10:26 AM PIT >> FINE : 1 relevant test for addSomeNumbers
stderr : 3:10:26 AM PIT >> FINE : replaced class with mutant in 4 ms
stderr : 3:10:26 AM PIT >> FINE : Running 1 units
stderr : 3:10:26 AM PIT >> FINE : Mutation MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator] detected = KILLED by [nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]
stderr : 3:10:26 AM PIT >> FINE : processed mutation in 51 ms.
stderr : 3:10:26 AM PIT >> FINE : Running mutation MutationDetails [id=MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator], filename=CorrectlyCoveredLogic.kt, block=0, lineNumber=5, description=replaced int return with 0 for nz/co/fendustries/playground/logic/CorrectlyCoveredLogic::addSomeNumbers, testsInOrder=[nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]]
3:10:26 AM PIT >> FINE : MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator] KILLED by [nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]
stderr : 3:10:26 AM PIT >> FINE : mutating method addSomeNumbers
stderr : 3:10:26 AM PIT >> FINE : 1 relevant test for addSomeNumbers
stderr : 3:10:26 AM PIT >> FINE : replaced class with mutant in 4 ms
stderr : 3:10:26 AM PIT >> FINE : Running 1 units
stderr : 3:10:26 AM PIT >> FINE : Mutation MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator] detected = KILLED by [nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]
stderr : 3:10:26 AM PIT >> FINE : processed mutation in 8 ms.
3:10:26 AM PIT >> FINE : MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.CorrectlyCoveredLogic, method=addSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator] KILLED by [nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest.testAddSomeNumbers(nz.co.fendustries.playground.logic.CorrectlyCoveredLogicTest)]
3:10:26 AM PIT >> FINE : Exit code was - OK
3:10:26 AM PIT >> FINE : Minion exited ok /stdout : Installing PIT agent
stderr : 3:10:26 AM PIT >> FINE : Running mutation MutationDetails [id=MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator], filename=NotCoveredLogic.kt, block=0, lineNumber=5, description=replaced int return with 0 for nz/co/fendustries/playground/logic/NotCoveredLogic::subtractSomeNumbers, testsInOrder=[nz.co.fendustries.playground.logic.NotCoveredLogicTests.testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests)]]
stderr : 3:10:26 AM PIT >> FINE : mutating method subtractSomeNumbers
stderr : 3:10:26 AM PIT >> FINE : 1 relevant test for subtractSomeNumbers
stderr : 3:10:26 AM PIT >> FINE : replaced class with mutant in 4 ms
stderr : 3:10:26 AM PIT >> FINE : Running 1 units
stderr : 3:10:26 AM PIT >> FINE : Mutation MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator] detected = KILLED by [nz.co.fendustries.playground.logic.NotCoveredLogicTests.testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests)]
stderr : 3:10:26 AM PIT >> FINE : processed mutation in 51 ms.
stderr : 3:10:26 AM PIT >> FINE : Running mutation MutationDetails [id=MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator], filename=NotCoveredLogic.kt, block=0, lineNumber=5, description=Replaced integer subtraction with addition, testsInOrder=[nz.co.fendustries.playground.logic.NotCoveredLogicTests.testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests)]]
3:10:26 AM PIT >> FINE : MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[6], mutator=org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator] KILLED by [nz.co.fendustries.playground.logic.NotCoveredLogicTests.testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests)]
stderr : 3:10:26 AM PIT >> FINE : mutating method subtractSomeNumbers
stderr : 3:10:26 AM PIT >> FINE : 1 relevant test for subtractSomeNumbers
stderr : 3:10:26 AM PIT >> FINE : replaced class with mutant in 3 ms
stderr : 3:10:26 AM PIT >> FINE : Running 1 units
stderr : 3:10:26 AM PIT >> FINE : Mutation MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator] detected = KILLED by [nz.co.fendustries.playground.logic.NotCoveredLogicTests.testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests)]
stderr : 3:10:26 AM PIT >> FINE : processed mutation in 7 ms.
3:10:26 AM PIT >> FINE : MutationIdentifier [location=Location [clazz=nz.co.fendustries.playground.logic.NotCoveredLogic, method=subtractSomeNumbers, methodDesc=(II)I], indexes=[5], mutator=org.pitest.mutationtest.engine.gregor.mutators.MathMutator] KILLED by [nz.co.fendustries.playground.logic.NotCoveredLogicTests.testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests)]
3:10:26 AM PIT >> FINE : Exit code was - OK
3:10:26 AM PIT >> FINE : Minion exited ok -3:10:26 AM PIT >> INFO : Completed in 1 seconds
================================================================================
- Mutators
================================================================================
> org.pitest.mutationtest.engine.gregor.mutators.returns.PrimitiveReturnsMutator
>> Generated 2 Killed 2 (100%)
> KILLED 2 SURVIVED 0 TIMED_OUT 0 NON_VIABLE 0
> MEMORY_ERROR 0 NOT_STARTED 0 STARTED 0 RUN_ERROR 0
> NO_COVERAGE 0
--------------------------------------------------------------------------------
> org.pitest.mutationtest.engine.gregor.mutators.MathMutator
>> Generated 2 Killed 2 (100%)
> KILLED 2 SURVIVED 0 TIMED_OUT 0 NON_VIABLE 0
> MEMORY_ERROR 0 NOT_STARTED 0 STARTED 0 RUN_ERROR 0
> NO_COVERAGE 0
--------------------------------------------------------------------------------
================================================================================
- Timings
================================================================================
> pre-scan for mutations : < 1 second
> scan classpath : < 1 second
> coverage and dependency analysis : < 1 second
> build mutation tests : < 1 second
> run mutation analysis : < 1 second
--------------------------------------------------------------------------------
> Total : 1 seconds
--------------------------------------------------------------------------------
================================================================================
- Statistics
================================================================================
>> Line Coverage: 4/4 (100%)
>> Generated 4 mutations Killed 4 (100%)
>> Mutations with no coverage 0. Test strength 100%
>> Ran 4 tests (1 tests per mutation)
Pitest development is currently supported by GroupCDG.
Enhanced functionality available at https://pitest.groupcdg.com/
Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings
BUILD SUCCESSFUL in 3s
20 actionable tasks: 2 executed, 18 up-to-date
The issue has been reported in https://github.com/koral--/gradle-pitest-plugin/issues/80 but it looks like the cause is located here in the upstream.
Sample project and reports are attached to the linked issue. I'm adding only the verbose logs.
When Robolectric runner is used there is a warning:
WARNING : More threads at end of test (6) testSubtractSomeNumbers(nz.co.fendustries.playground.logic.NotCoveredLogicTests) than start. (5)
Fail (with RobolectricTestRunner):
Success (without RobolectricTestRunner):