aboutsummaryrefslogtreecommitdiff
path: root/org.jacoco.core.test.validation.groovy/src/org
diff options
context:
space:
mode:
Diffstat (limited to 'org.jacoco.core.test.validation.groovy/src/org')
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyAutoCloneClassTest.java31
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyAutoExternalizeClassTest.java32
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyBindableClassTest.java32
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyBuilderClassTest.java31
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyCanonicalClassTest.java31
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyDataClassTest.java30
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyDelegateClassTest.java31
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyImmutableClassTest.java31
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyIndexPropertyClassTest.java33
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovySortableClassTest.java33
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyVetoableClassTest.java32
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyAutoCloneClassTarget.groovy22
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyAutoExternalizeClassTarget.groovy28
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyBindableClassTarget.groovy29
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyBuilderClassTarget.groovy26
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyCanonicalClassTarget.groovy25
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyDataClassTarget.groovy30
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyDelegateClassTarget.groovy37
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyImmutableClassTarget.groovy26
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyIndexPropertyClassTarget.groovy31
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovySortableClassTarget.groovy28
-rw-r--r--org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyVetoableClassTarget.groovy27
22 files changed, 596 insertions, 60 deletions
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyAutoCloneClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyAutoCloneClassTest.java
new file mode 100644
index 00000000..537c0d51
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyAutoCloneClassTest.java
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Oliver Nautsch - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy;
+
+import org.jacoco.core.test.validation.ValidationTestBase;
+import org.jacoco.core.test.validation.groovy.targets.GroovyAutoCloneClassTarget;
+import org.junit.Test;
+
+/**
+ * Test of class with {@link groovy.transform.AutoClone} annotation.
+ */
+public class GroovyAutoCloneClassTest extends ValidationTestBase {
+ public GroovyAutoCloneClassTest() {
+ super(GroovyAutoCloneClassTarget.class);
+ }
+
+ @Test
+ public void test_method_count() {
+ assertMethodCount(1);
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyAutoExternalizeClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyAutoExternalizeClassTest.java
new file mode 100644
index 00000000..f2e218e2
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyAutoExternalizeClassTest.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Stephan Classen
+ * Vadim Bauer
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy;
+
+import org.jacoco.core.test.validation.ValidationTestBase;
+import org.jacoco.core.test.validation.groovy.targets.GroovyAutoExternalizeClassTarget;
+import org.junit.Test;
+
+/**
+ * Test of class with {@link groovy.transform.AutoExternalize} annotation.
+ */
+public class GroovyAutoExternalizeClassTest extends ValidationTestBase {
+ public GroovyAutoExternalizeClassTest() {
+ super(GroovyAutoExternalizeClassTarget.class);
+ }
+
+ @Test
+ public void test_method_count() {
+ assertMethodCount(1);
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyBindableClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyBindableClassTest.java
new file mode 100644
index 00000000..f70b7f4e
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyBindableClassTest.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Stephan Classen
+ * Vadim Bauer
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy;
+
+import org.jacoco.core.test.validation.ValidationTestBase;
+import org.jacoco.core.test.validation.groovy.targets.GroovyBindableClassTarget;
+import org.junit.Test;
+
+/**
+ * Test of class with {@link groovy.beans.Bindable} annotation.
+ */
+public class GroovyBindableClassTest extends ValidationTestBase {
+ public GroovyBindableClassTest() {
+ super(GroovyBindableClassTarget.class);
+ }
+
+ @Test
+ public void test_method_count() {
+ assertMethodCount(1);
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyBuilderClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyBuilderClassTest.java
new file mode 100644
index 00000000..66972c26
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyBuilderClassTest.java
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Jan Wloka - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy;
+
+import org.jacoco.core.test.validation.ValidationTestBase;
+import org.jacoco.core.test.validation.groovy.targets.GroovyBuilderClassTarget;
+import org.junit.Test;
+
+/**
+ * Test of class with {@link groovy.transform.builder.Builder} annotation.
+ */
+public class GroovyBuilderClassTest extends ValidationTestBase {
+ public GroovyBuilderClassTest() {
+ super(GroovyBuilderClassTarget.class);
+ }
+
+ @Test
+ public void test_method_count() {
+ assertMethodCount(1);
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyCanonicalClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyCanonicalClassTest.java
new file mode 100644
index 00000000..72f36287
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyCanonicalClassTest.java
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Andres Almiray - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy;
+
+import org.jacoco.core.test.validation.ValidationTestBase;
+import org.jacoco.core.test.validation.groovy.targets.GroovyCanonicalClassTarget;
+import org.junit.Test;
+
+/**
+ * Test of class with {@link groovy.transform.Canonical} annotation.
+ */
+public class GroovyCanonicalClassTest extends ValidationTestBase {
+ public GroovyCanonicalClassTest() {
+ super(GroovyCanonicalClassTarget.class);
+ }
+
+ @Test
+ public void test_method_count() {
+ assertMethodCount(1);
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyDataClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyDataClassTest.java
deleted file mode 100644
index f13fc438..00000000
--- a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyDataClassTest.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009, 2019 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:
- * Andres Almiray - initial API and implementation
- *
- *******************************************************************************/
-package org.jacoco.core.test.validation.groovy;
-
-import org.jacoco.core.test.validation.ValidationTestBase;
-import org.jacoco.core.test.validation.groovy.targets.GroovyDataClassTarget;
-import org.junit.Test;
-
-/**
- * Test of <code>data class</code>es.
- */
-public class GroovyDataClassTest extends ValidationTestBase {
- public GroovyDataClassTest() {
- super(GroovyDataClassTarget.class);
- }
-
- @Test
- public void test_method_count() {
- assertMethodCount(1);
- }
-}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyDelegateClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyDelegateClassTest.java
new file mode 100644
index 00000000..1761d0c4
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyDelegateClassTest.java
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Jan Wloka - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy;
+
+import org.jacoco.core.test.validation.ValidationTestBase;
+import org.jacoco.core.test.validation.groovy.targets.GroovyDelegateClassTarget;
+import org.junit.Test;
+
+/**
+ * Test of class with field annotated by {@link groovy.lang.Delegate}.
+ */
+public class GroovyDelegateClassTest extends ValidationTestBase {
+ public GroovyDelegateClassTest() {
+ super(GroovyDelegateClassTarget.class);
+ }
+
+ @Test
+ public void test_method_count() {
+ assertMethodCount(4);
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyImmutableClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyImmutableClassTest.java
new file mode 100644
index 00000000..5efe749d
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyImmutableClassTest.java
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Oliver Nautsch - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy;
+
+import org.jacoco.core.test.validation.ValidationTestBase;
+import org.jacoco.core.test.validation.groovy.targets.GroovyImmutableClassTarget;
+import org.junit.Test;
+
+/**
+ * Test of class with {@link groovy.transform.Immutable} annotation.
+ */
+public class GroovyImmutableClassTest extends ValidationTestBase {
+ public GroovyImmutableClassTest() {
+ super(GroovyImmutableClassTarget.class);
+ }
+
+ @Test
+ public void test_method_count() {
+ assertMethodCount(1);
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyIndexPropertyClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyIndexPropertyClassTest.java
new file mode 100644
index 00000000..32f0e4ea
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyIndexPropertyClassTest.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Stephan Classen
+ * Vadim Bauer
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy;
+
+import org.jacoco.core.test.validation.ValidationTestBase;
+import org.jacoco.core.test.validation.groovy.targets.GroovyIndexPropertyClassTarget;
+import org.junit.Test;
+
+/**
+ * Test of class with fields annotated by
+ * {@link groovy.transform.IndexedProperty} annotation.
+ */
+public class GroovyIndexPropertyClassTest extends ValidationTestBase {
+ public GroovyIndexPropertyClassTest() {
+ super(GroovyIndexPropertyClassTarget.class);
+ }
+
+ @Test
+ public void test_method_count() {
+ assertMethodCount(1);
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovySortableClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovySortableClassTest.java
new file mode 100644
index 00000000..810ed1d5
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovySortableClassTest.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Stephan Classen
+ * Vadim Bauer
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy;
+
+import org.jacoco.core.test.validation.ValidationTestBase;
+import org.jacoco.core.test.validation.groovy.targets.GroovySortableClassTarget;
+import org.junit.Test;
+
+/**
+ * Test of class with {@link groovy.transform.Sortable} annotation.
+ */
+public class GroovySortableClassTest extends ValidationTestBase {
+ public GroovySortableClassTest() {
+ super(GroovySortableClassTarget.class);
+ }
+
+ @Test
+ public void test_method_count() {
+ // main method and static initializer
+ assertMethodCount(2);
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyVetoableClassTest.java b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyVetoableClassTest.java
new file mode 100644
index 00000000..7ad2443d
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/GroovyVetoableClassTest.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Stephan Classen
+ * Vadim Bauer
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy;
+
+import org.jacoco.core.test.validation.ValidationTestBase;
+import org.jacoco.core.test.validation.groovy.targets.GroovyVetoableClassTarget;
+import org.junit.Test;
+
+/**
+ * Test of class with {@link groovy.beans.Vetoable} annotation.
+ */
+public class GroovyVetoableClassTest extends ValidationTestBase {
+ public GroovyVetoableClassTest() {
+ super(GroovyVetoableClassTarget.class);
+ }
+
+ @Test
+ public void test_method_count() {
+ assertMethodCount(1);
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyAutoCloneClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyAutoCloneClassTarget.groovy
new file mode 100644
index 00000000..554921de
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyAutoCloneClassTarget.groovy
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Oliver Nautsch - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy.targets
+
+import groovy.transform.AutoClone
+
+@AutoClone
+class GroovyAutoCloneClassTarget { // assertEmpty()
+ static void main(String[] args) {
+ new GroovyAutoCloneClassTarget() // assertFullyCovered()
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyAutoExternalizeClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyAutoExternalizeClassTarget.groovy
new file mode 100644
index 00000000..62173881
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyAutoExternalizeClassTarget.groovy
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Stephan Classen
+ * Vadim Bauer
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy.targets
+
+import groovy.transform.AutoExternalize
+
+@AutoExternalize
+class GroovyAutoExternalizeClassTarget { // assertEmpty()
+
+ String first // assertEmpty()
+ List favItems // assertEmpty()
+ Date since // assertEmpty()
+
+ static void main(String[] args) {
+ new GroovyAutoExternalizeClassTarget() // assertFullyCovered()
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyBindableClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyBindableClassTarget.groovy
new file mode 100644
index 00000000..af9e8bb2
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyBindableClassTarget.groovy
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Stephan Classen
+ * Vadim Bauer
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy.targets
+
+import groovy.beans.Bindable
+
+class GroovyBindableClassTarget { // assertEmpty()
+
+ @Bindable
+ String firstName // assertEmpty()
+
+ @Bindable
+ def zipCode // assertEmpty()
+
+ static void main(String[] args) {
+ new GroovyBindableClassTarget() // assertFullyCovered()
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyBuilderClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyBuilderClassTarget.groovy
new file mode 100644
index 00000000..36990f68
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyBuilderClassTarget.groovy
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Jan Wloka - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy.targets
+
+import groovy.transform.builder.Builder
+import groovy.transform.builder.SimpleStrategy
+
+@Builder(builderStrategy = SimpleStrategy)
+class GroovyBuilderClassTarget { // assertEmpty()
+
+ String name // assertEmpty()
+
+ static void main(String[] args) {
+ new GroovyBuilderClassTarget() // assertFullyCovered()
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyCanonicalClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyCanonicalClassTarget.groovy
new file mode 100644
index 00000000..bf0da0e2
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyCanonicalClassTarget.groovy
@@ -0,0 +1,25 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Andres Almiray - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy.targets
+
+import groovy.transform.Canonical
+
+@Canonical
+class GroovyCanonicalClassTarget { // assertEmpty()
+
+ int valRead // assertEmpty()
+
+ static void main(String[] args) {
+ new GroovyCanonicalClassTarget() // assertFullyCovered()
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyDataClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyDataClassTarget.groovy
deleted file mode 100644
index c51b1e51..00000000
--- a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyDataClassTarget.groovy
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009, 2019 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:
- * Andres Almiray - initial API and implementation
- *
- *******************************************************************************/
-package org.jacoco.core.test.validation.groovy.targets
-
-/* This annotation generates the following
- * - a constructor that takes an int as argument
- * - a suitable implementation of toString()
- * - a suitable implementation of hashCode()
- * - a suitable implementation of equals(Object)
- * - a public method named canEqual(Object)
- * - a getter & setter for the valRead property
- */
-@groovy.transform.Canonical
-class GroovyDataClassTarget { // assertEmpty()
-
- int valRead // assertEmpty()
-
- static void main(String[] args) {
- new GroovyDataClassTarget() // assertFullyCovered()
- }
-}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyDelegateClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyDelegateClassTarget.groovy
new file mode 100644
index 00000000..6024efdd
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyDelegateClassTarget.groovy
@@ -0,0 +1,37 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Jan Wloka - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy.targets
+
+class GroovyDelegateClassTarget { // assertEmpty()
+
+ static class D {
+ void m1() {
+ } // assertFullyCovered()
+
+ void m2() {
+ } // assertFullyCovered()
+ }
+
+ @Delegate
+ D delegate = new D() // assertEmpty()
+
+ void m2() {
+ delegate.m2() // assertFullyCovered()
+ }
+
+ static void main(String[] args) {
+ new GroovyDelegateClassTarget().m1()
+ new GroovyDelegateClassTarget().m2()
+ }
+
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyImmutableClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyImmutableClassTarget.groovy
new file mode 100644
index 00000000..ebe8e7b7
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyImmutableClassTarget.groovy
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Oliver Nautsch - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy.targets
+
+import groovy.transform.Immutable
+
+@Immutable
+class GroovyImmutableClassTarget { // assertEmpty()
+
+ String name // assertEmpty()
+ int age // assertEmpty()
+
+ static void main(String[] args) {
+ new GroovyImmutableClassTarget() // assertFullyCovered()
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyIndexPropertyClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyIndexPropertyClassTarget.groovy
new file mode 100644
index 00000000..dd9b84ef
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyIndexPropertyClassTarget.groovy
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Stephan Classen
+ * Vadim Bauer
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy.targets
+
+import groovy.io.FileType
+import groovy.transform.IndexedProperty
+
+class GroovyIndexPropertyClassTarget { // assertEmpty()
+
+ @IndexedProperty
+ FileType[] someField // assertEmpty()
+ @IndexedProperty
+ List otherField // assertEmpty()
+ @IndexedProperty
+ List furtherField // assertEmpty()
+
+ static void main(String[] args) {
+ new GroovyIndexPropertyClassTarget() // assertFullyCovered()
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovySortableClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovySortableClassTarget.groovy
new file mode 100644
index 00000000..b3f04f04
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovySortableClassTarget.groovy
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Stephan Classen
+ * Vadim Bauer
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy.targets
+
+import groovy.transform.Sortable
+
+@Sortable
+class GroovySortableClassTarget { // assertEmpty()
+
+ String first // assertEmpty()
+ String last // assertEmpty()
+ Integer born // assertEmpty()
+
+ static void main(String[] args) {
+ new GroovySortableClassTarget() // assertFullyCovered()
+ }
+}
diff --git a/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyVetoableClassTarget.groovy b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyVetoableClassTarget.groovy
new file mode 100644
index 00000000..436079be
--- /dev/null
+++ b/org.jacoco.core.test.validation.groovy/src/org/jacoco/core/test/validation/groovy/targets/GroovyVetoableClassTarget.groovy
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
+ * This program and the accompanying materials are made available under
+ * the terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Stephan Classen
+ * Vadim Bauer
+ *
+ *******************************************************************************/
+package org.jacoco.core.test.validation.groovy.targets
+
+import groovy.beans.Vetoable
+
+@Vetoable
+class GroovyVetoableClassTarget { // assertEmpty()
+
+ String firstName // assertEmpty()
+ def zipCode // assertEmpty()
+
+ static void main(String[] args) {
+ new GroovyVetoableClassTarget() // assertFullyCovered()
+ }
+}