aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvgeny Mandrikov <138671+Godin@users.noreply.github.com>2021-05-04 13:54:37 +0200
committerGitHub <noreply@github.com>2021-05-04 13:54:37 +0200
commitb25ce531a4e81f1a0cffc5937ff8d44161a2f663 (patch)
tree509a523e9fec794d23667e1a7f7eaff4de6bb971
parent29a289066a20c85354d0fce06cad745157d77cc8 (diff)
downloadjacoco-b25ce531a4e81f1a0cffc5937ff8d44161a2f663.tar.gz
Upgrade Kotlin to 1.5.0 (#1181)
-rw-r--r--org.jacoco.core.test.validation.kotlin/pom.xml6
-rw-r--r--org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/KotlinDefaultMethodsTest.java6
-rw-r--r--org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinControlStructuresTarget.kt2
-rw-r--r--org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinDataClassTarget.kt4
-rw-r--r--org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinWhenExpressionTarget.kt8
-rw-r--r--org.jacoco.core.test.validation/pom.xml75
-rw-r--r--org.jacoco.doc/docroot/doc/build.html10
7 files changed, 79 insertions, 32 deletions
diff --git a/org.jacoco.core.test.validation.kotlin/pom.xml b/org.jacoco.core.test.validation.kotlin/pom.xml
index 0f3cae74..013a6ac5 100644
--- a/org.jacoco.core.test.validation.kotlin/pom.xml
+++ b/org.jacoco.core.test.validation.kotlin/pom.xml
@@ -25,11 +25,7 @@
<name>JaCoCo :: Test :: Core :: Validation Kotlin</name>
<properties>
- <!--
- re-include this module in profiles for JDK 16 and 17 in org.jacoco.core.test.validation
- once there is version with resolved https://youtrack.jetbrains.com/issue/KT-43704
- -->
- <kotlin.version>1.4.20</kotlin.version>
+ <kotlin.version>1.5.0</kotlin.version>
</properties>
<dependencies>
diff --git a/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/KotlinDefaultMethodsTest.java b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/KotlinDefaultMethodsTest.java
index d7e53732..1cba4a2c 100644
--- a/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/KotlinDefaultMethodsTest.java
+++ b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/KotlinDefaultMethodsTest.java
@@ -24,4 +24,10 @@ public class KotlinDefaultMethodsTest extends ValidationTestBase {
super(KotlinDefaultMethodsTarget.class);
}
+ @Override
+ public void all_missed_instructions_should_have_line_number() {
+ // instructions without line numbers
+ // corresponding to non-executed default implementations
+ }
+
}
diff --git a/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinControlStructuresTarget.kt b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinControlStructuresTarget.kt
index 16e1f98e..cc8825df 100644
--- a/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinControlStructuresTarget.kt
+++ b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinControlStructuresTarget.kt
@@ -47,7 +47,7 @@ object KotlinControlStructuresTarget {
private fun missedWhileBlock() {
- while (f()) { // assertPartlyCovered(1, 1)
+ while (f()) { // assertFullyCovered(1, 1)
nop() // assertNotCovered()
}
diff --git a/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinDataClassTarget.kt b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinDataClassTarget.kt
index 13c55090..67abe0f9 100644
--- a/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinDataClassTarget.kt
+++ b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinDataClassTarget.kt
@@ -20,9 +20,9 @@ import org.jacoco.core.test.validation.targets.Stubs.nop
object KotlinDataClassTarget {
data class DataClass( // assertFullyCovered()
- val valNoRead: Int, // assertNotCovered()
+ val valNoRead: Int, // assertPartlyCovered()
val valRead: Int, // assertFullyCovered()
- var varNoReadNoWrite: Int, // assertNotCovered()
+ var varNoReadNoWrite: Int, // assertPartlyCovered()
var varNoWrite: Int, // assertPartlyCovered()
var varNoRead: Int, // assertPartlyCovered()
var varReadWrite: Int // assertFullyCovered()
diff --git a/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinWhenExpressionTarget.kt b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinWhenExpressionTarget.kt
index 13f7e20d..09572d25 100644
--- a/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinWhenExpressionTarget.kt
+++ b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinWhenExpressionTarget.kt
@@ -30,8 +30,8 @@ object KotlinWhenExpressionTarget {
@Suppress("REDUNDANT_ELSE_IN_WHEN")
private fun whenSealedRedundantElse(p: Sealed): Int = when (p) { // assertFullyCovered()
is Sealed.Sealed1 -> 1 // assertFullyCovered(0, 2)
- is Sealed.Sealed2 -> 2 // assertFullyCovered(1, 1)
- else -> throw NoWhenBranchMatchedException() // assertNotCovered()
+ is Sealed.Sealed2 -> 2 // assertFullyCovered(0, 0)
+ else -> throw NoWhenBranchMatchedException() // assertEmpty()
} // assertFullyCovered()
private enum class Enum {
@@ -44,10 +44,10 @@ object KotlinWhenExpressionTarget {
} // assertFullyCovered()
@Suppress("REDUNDANT_ELSE_IN_WHEN")
- private fun whenEnumRedundantElse(p: Enum): Int = when (p) { // assertFullyCovered(1, 2)
+ private fun whenEnumRedundantElse(p: Enum): Int = when (p) { // assertFullyCovered(0, 2)
Enum.A -> 1 // assertFullyCovered()
Enum.B -> 2 // assertFullyCovered()
- else -> throw NoWhenBranchMatchedException() // assertNotCovered()
+ else -> throw NoWhenBranchMatchedException() // assertEmpty()
} // assertFullyCovered()
private fun whenString(p: String): Int = when (p) { // assertFullyCovered(0, 7)
diff --git a/org.jacoco.core.test.validation/pom.xml b/org.jacoco.core.test.validation/pom.xml
index f8f081f3..d8fe3f36 100644
--- a/org.jacoco.core.test.validation/pom.xml
+++ b/org.jacoco.core.test.validation/pom.xml
@@ -32,7 +32,10 @@
<properties>
<jacoco.skip>true</jacoco.skip>
- <groovy.targetBytecode>${maven.compiler.target}</groovy.targetBytecode>
+
+ <!-- when bytecode.version not specified -->
+ <kotlin.compiler.jvmTarget>1.6</kotlin.compiler.jvmTarget>
+ <groovy.targetBytecode>1.8</groovy.targetBytecode>
</properties>
<profiles>
@@ -64,6 +67,9 @@
<value>6</value>
</property>
</activation>
+ <properties>
+ <kotlin.compiler.jvmTarget>1.6</kotlin.compiler.jvmTarget>
+ </properties>
<modules>
<module>../org.jacoco.core.test.validation.kotlin</module>
</modules>
@@ -90,6 +96,10 @@
<value>7</value>
</property>
</activation>
+ <properties>
+ <!-- Kotlin 1.5.0 doesn't support compilation into 1.7 -->
+ <kotlin.compiler.jvmTarget>1.6</kotlin.compiler.jvmTarget>
+ </properties>
<modules>
<module>../org.jacoco.core.test.validation.kotlin</module>
<module>../org.jacoco.core.test.validation.java7</module>
@@ -111,9 +121,22 @@
</profile>
<profile>
- <id>java8-bytecode</id>
+ <id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
+ </activation>
+ <modules>
+ <module>../org.jacoco.core.test.validation.kotlin</module>
+ <module>../org.jacoco.core.test.validation.java7</module>
+ <module>../org.jacoco.core.test.validation.java8</module>
+ <module>../org.jacoco.core.test.validation.groovy</module>
+ <module>../org.jacoco.core.test.validation.scala</module>
+ </modules>
+ </profile>
+
+ <profile>
+ <id>java8-bytecode</id>
+ <activation>
<property>
<name>bytecode.version</name>
<value>8</value>
@@ -133,6 +156,26 @@
</profile>
<profile>
+ <id>java9-bytecode</id>
+ <activation>
+ <property>
+ <name>bytecode.version</name>
+ <value>9</value>
+ </property>
+ </activation>
+ <properties>
+ <kotlin.compiler.jvmTarget>9</kotlin.compiler.jvmTarget>
+ <groovy.targetBytecode>9</groovy.targetBytecode>
+ </properties>
+ <modules>
+ <module>../org.jacoco.core.test.validation.kotlin</module>
+ <module>../org.jacoco.core.test.validation.java7</module>
+ <module>../org.jacoco.core.test.validation.java8</module>
+ <module>../org.jacoco.core.test.validation.groovy</module>
+ </modules>
+ </profile>
+
+ <profile>
<id>java10-bytecode</id>
<activation>
<property>
@@ -141,7 +184,8 @@
</property>
</activation>
<properties>
- <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
+ <kotlin.compiler.jvmTarget>10</kotlin.compiler.jvmTarget>
+ <groovy.targetBytecode>10</groovy.targetBytecode>
</properties>
<modules>
<module>../org.jacoco.core.test.validation.kotlin</module>
@@ -160,7 +204,8 @@
</property>
</activation>
<properties>
- <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
+ <kotlin.compiler.jvmTarget>11</kotlin.compiler.jvmTarget>
+ <groovy.targetBytecode>11</groovy.targetBytecode>
</properties>
<modules>
<module>../org.jacoco.core.test.validation.kotlin</module>
@@ -180,7 +225,8 @@
</property>
</activation>
<properties>
- <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
+ <kotlin.compiler.jvmTarget>12</kotlin.compiler.jvmTarget>
+ <groovy.targetBytecode>12</groovy.targetBytecode>
</properties>
<modules>
<module>../org.jacoco.core.test.validation.kotlin</module>
@@ -200,6 +246,8 @@
</property>
</activation>
<properties>
+ <kotlin.compiler.jvmTarget>14</kotlin.compiler.jvmTarget>
+ <groovy.targetBytecode>14</groovy.targetBytecode>
<!-- see respective profile in org.jacoco.build about this override -->
<maven.compiler.source>14</maven.compiler.source>
<maven.compiler.target>14</maven.compiler.target>
@@ -223,6 +271,8 @@
</property>
</activation>
<properties>
+ <kotlin.compiler.jvmTarget>15</kotlin.compiler.jvmTarget>
+ <groovy.targetBytecode>15</groovy.targetBytecode>
<!-- see respective profile in org.jacoco.build about this override -->
<maven.compiler.source>15</maven.compiler.source>
<maven.compiler.target>15</maven.compiler.target>
@@ -246,17 +296,14 @@
</property>
</activation>
<properties>
+ <kotlin.compiler.jvmTarget>16</kotlin.compiler.jvmTarget>
+ <groovy.targetBytecode>16</groovy.targetBytecode>
<!-- see respective profile in org.jacoco.build about this override -->
<maven.compiler.source>16</maven.compiler.source>
<maven.compiler.target>16</maven.compiler.target>
</properties>
<modules>
- <!--
- kotlin-maven-plugin versions 1.4.20 and 1.4.21 fail
- due to https://openjdk.java.net/jeps/396
- see https://youtrack.jetbrains.com/issue/KT-43704
<module>../org.jacoco.core.test.validation.kotlin</module>
- -->
<module>../org.jacoco.core.test.validation.java7</module>
<module>../org.jacoco.core.test.validation.java8</module>
<module>../org.jacoco.core.test.validation.java14</module>
@@ -274,17 +321,15 @@
</property>
</activation>
<properties>
+ <!-- Kotlin 1.5.0 doesn't support compilation into 17 -->
+ <kotlin.compiler.jvmTarget>16</kotlin.compiler.jvmTarget>
+ <groovy.targetBytecode>17</groovy.targetBytecode>
<!-- see respective profile in org.jacoco.build about this override -->
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
<modules>
- <!--
- kotlin-maven-plugin versions 1.4.20 and 1.4.21 fail
- due to https://openjdk.java.net/jeps/396
- see https://youtrack.jetbrains.com/issue/KT-43704
<module>../org.jacoco.core.test.validation.kotlin</module>
- -->
<module>../org.jacoco.core.test.validation.java7</module>
<module>../org.jacoco.core.test.validation.java8</module>
<module>../org.jacoco.core.test.validation.java14</module>
diff --git a/org.jacoco.doc/docroot/doc/build.html b/org.jacoco.doc/docroot/doc/build.html
index 938a047b..5cd0aef3 100644
--- a/org.jacoco.doc/docroot/doc/build.html
+++ b/org.jacoco.doc/docroot/doc/build.html
@@ -165,11 +165,11 @@
<td>6</td>
<td>6</td>
<td>6</td>
- <td>7</td>
- <td>7</td>
- <td>7</td>
- <td>7</td>
- <td>7</td>
+ <td>6</td>
+ <td>6</td>
+ <td>6</td>
+ <td>6</td>
+ <td>6</td>
</tr>
<tr>
<td>all other modules</td>