diff options
8 files changed, 188 insertions, 0 deletions
diff --git a/org.jacoco.build/pom.xml b/org.jacoco.build/pom.xml index 8f8156e7..092eb85d 100644 --- a/org.jacoco.build/pom.xml +++ b/org.jacoco.build/pom.xml @@ -265,6 +265,7 @@ <filtering>false</filtering> <excludes> <exclude>**/*.java</exclude> + <exclude>**/*.kt</exclude> <exclude>**/*.properties</exclude> </excludes> </resource> @@ -554,6 +555,7 @@ <configuration> <target> <fileset dir="${basedir}" includes="**/*.java,**/*.xml,**/*.bsh" excludes="target/**,.idea/**,nb-configuration.xml" id="missinglicense.fileset"> + <include name="**/*.kt"/> <not> <and> <contains text="Copyright (c) 2009, 2018 Mountainminds GmbH & Co. KG and Contributors"/> diff --git a/org.jacoco.core.test.validation.kotlin/.classpath b/org.jacoco.core.test.validation.kotlin/.classpath new file mode 100644 index 00000000..80ba0e5a --- /dev/null +++ b/org.jacoco.core.test.validation.kotlin/.classpath @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"> + <attributes> + <attribute name="maven.pomderived" value="true"/> + </attributes> + </classpathentry> + <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> + <attributes> + <attribute name="maven.pomderived" value="true"/> + </attributes> + </classpathentry> + <classpathentry kind="src" output="target/classes" path="src"> + <attributes> + <attribute name="optional" value="true"/> + <attribute name="maven.pomderived" value="true"/> + </attributes> + </classpathentry> + <classpathentry kind="output" path="target/classes"/> +</classpath> diff --git a/org.jacoco.core.test.validation.kotlin/.project b/org.jacoco.core.test.validation.kotlin/.project new file mode 100644 index 00000000..1454c19b --- /dev/null +++ b/org.jacoco.core.test.validation.kotlin/.project @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.jacoco.core.test.validation.kotlin</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.m2e.core.maven2Builder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.m2e.core.maven2Nature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> + <linkedResources> + <link> + <name>.settings</name> + <type>2</type> + <locationURI>PARENT-1-PROJECT_LOC/org.jacoco.core.test/.settings</locationURI> + </link> + </linkedResources> +</projectDescription> diff --git a/org.jacoco.core.test.validation.kotlin/pom.xml b/org.jacoco.core.test.validation.kotlin/pom.xml new file mode 100644 index 00000000..d9e76806 --- /dev/null +++ b/org.jacoco.core.test.validation.kotlin/pom.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (c) 2009, 2018 Mountainminds GmbH & Co. KG and Contributors + All rights reserved. This program and the accompanying materials + are made available under the terms of the Eclipse Public License v1.0 + which accompanies this distribution, and is available at + http://www.eclipse.org/legal/epl-v10.html + + Contributors: + Evgeny Mandrikov - initial API and implementation +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.jacoco</groupId> + <artifactId>org.jacoco.core.test.validation</artifactId> + <version>0.8.2-SNAPSHOT</version> + <relativePath>../org.jacoco.core.test.validation</relativePath> + </parent> + + <artifactId>org.jacoco.core.test.validation.kotlin</artifactId> + + <name>JaCoCo :: Test :: Core :: Validation Kotlin</name> + + <properties> + <bytecode.version>6</bytecode.version> + <kotlin.version>1.2.60</kotlin.version> + </properties> + + <dependencies> + <dependency> + <groupId>${project.groupId}</groupId> + <artifactId>org.jacoco.core.test</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.jetbrains.kotlin</groupId> + <artifactId>kotlin-stdlib</artifactId> + <version>${kotlin.version}</version> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.jetbrains.kotlin</groupId> + <artifactId>kotlin-maven-plugin</artifactId> + <version>${kotlin.version}</version> + <executions> + <execution> + <id>compile</id> + <phase>process-sources</phase> + <goals> + <goal>compile</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/KotlinTopLevelFunctionTest.java b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/KotlinTopLevelFunctionTest.java new file mode 100644 index 00000000..a647be4a --- /dev/null +++ b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/KotlinTopLevelFunctionTest.java @@ -0,0 +1,33 @@ +/******************************************************************************* + * Copyright (c) 2009, 2018 Mountainminds GmbH & Co. KG and Contributors + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Evgeny Mandrikov - initial API and implementation + * + *******************************************************************************/ +package org.jacoco.core.test.validation.kotlin; + +import org.jacoco.core.analysis.ICounter; +import org.jacoco.core.test.validation.ValidationTestBase; +import org.jacoco.core.test.validation.kotlin.targets.KotlinTopLevelFunctionTargetKt; +import org.junit.Test; + +/** + * Test of top level function. + */ +public class KotlinTopLevelFunctionTest extends ValidationTestBase { + + public KotlinTopLevelFunctionTest() { + super(KotlinTopLevelFunctionTargetKt.class); + } + + @Test + public void test() { + assertLine("fun", ICounter.FULLY_COVERED); + } + +} diff --git a/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinTopLevelFunctionTarget.kt b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinTopLevelFunctionTarget.kt new file mode 100644 index 00000000..424e58c0 --- /dev/null +++ b/org.jacoco.core.test.validation.kotlin/src/org/jacoco/core/test/validation/kotlin/targets/KotlinTopLevelFunctionTarget.kt @@ -0,0 +1,18 @@ +/******************************************************************************* + * Copyright (c) 2009, 2018 Mountainminds GmbH & Co. KG and Contributors + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Evgeny Mandrikov - initial API and implementation + * + *******************************************************************************/ +package org.jacoco.core.test.validation.kotlin.targets + +/** + * This test target is top level function. + */ +fun main(args: Array<String>) { +} // $line-fun$ diff --git a/org.jacoco.core.test.validation/pom.xml b/org.jacoco.core.test.validation/pom.xml index 691de9ac..ae677de8 100644 --- a/org.jacoco.core.test.validation/pom.xml +++ b/org.jacoco.core.test.validation/pom.xml @@ -62,6 +62,9 @@ <value>6</value> </property> </activation> + <modules> + <module>../org.jacoco.core.test.validation.kotlin</module> + </modules> </profile> <profile> @@ -72,6 +75,9 @@ <value>6</value> </property> </activation> + <modules> + <module>../org.jacoco.core.test.validation.kotlin</module> + </modules> </profile> <profile> @@ -83,6 +89,7 @@ </property> </activation> <modules> + <module>../org.jacoco.core.test.validation.kotlin</module> <module>../org.jacoco.core.test.validation.java7</module> </modules> </profile> @@ -96,6 +103,7 @@ </property> </activation> <modules> + <module>../org.jacoco.core.test.validation.kotlin</module> <module>../org.jacoco.core.test.validation.java7</module> </modules> </profile> @@ -109,7 +117,11 @@ <value>8</value> </property> </activation> + <properties> + <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget> + </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> </modules> @@ -124,11 +136,13 @@ </property> </activation> <properties> + <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget> <!-- see respective profile in org.jacoco.build about this override --> <maven.compiler.source>10</maven.compiler.source> <maven.compiler.target>10</maven.compiler.target> </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> </modules> @@ -143,11 +157,13 @@ </property> </activation> <properties> + <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget> <!-- see respective profile in org.jacoco.build about this override --> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> </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> </modules> @@ -162,11 +178,13 @@ </property> </activation> <properties> + <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget> <!-- see respective profile in org.jacoco.build about this override --> <maven.compiler.source>12</maven.compiler.source> <maven.compiler.target>12</maven.compiler.target> </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> </modules> diff --git a/org.jacoco.doc/docroot/doc/build.html b/org.jacoco.doc/docroot/doc/build.html index 987fcc69..c3e2abab 100644 --- a/org.jacoco.doc/docroot/doc/build.html +++ b/org.jacoco.doc/docroot/doc/build.html @@ -105,6 +105,11 @@ </thead> <tbody> <tr> + <th>org.jacoco.core.test.validation.kotlin</th> + <td colspan="1">excluded from build</td> + <td colspan="5">compiled into bytecode version 50 (Java 6)</td> + </tr> + <tr> <th>org.jacoco.core.test.validation.java7</th> <td colspan="2">excluded from build</td> <td colspan="4">compiled into bytecode version 51 (Java 7)</td> |