From 92832bbb4e7d32258448bd76cb320a7190456ae2 Mon Sep 17 00:00:00 2001 From: Jon Marius Venstad Date: Fri, 16 Aug 2019 15:51:00 +0200 Subject: Rename integration test categories and simplify pom.xml setup --- .../main/java/ai/vespa/hosted/cd/EmptyGroup.java | 9 -------- .../java/ai/vespa/hosted/cd/IntegrationTest.java | 27 ++++++++++++++++++++++ .../java/ai/vespa/hosted/cd/ProductionTest.java | 3 ++- .../main/java/ai/vespa/hosted/cd/StagingTest.java | 3 ++- .../main/java/ai/vespa/hosted/cd/SystemTest.java | 3 ++- 5 files changed, 33 insertions(+), 12 deletions(-) delete mode 100644 tenant-cd/src/main/java/ai/vespa/hosted/cd/EmptyGroup.java create mode 100644 tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java (limited to 'tenant-cd') diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/EmptyGroup.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/EmptyGroup.java deleted file mode 100644 index 8deca3cfb11..00000000000 --- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/EmptyGroup.java +++ /dev/null @@ -1,9 +0,0 @@ -package ai.vespa.hosted.cd; - -/** - * The Surefire configuration element <excludedGroups> requires a non-empty argument to reset another. - * This class serves that purpose. Without it, no tests run in the various integration test profiles. - * - * @author jonmv - */ -public interface EmptyGroup { } diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java new file mode 100644 index 00000000000..a8c8d958cc1 --- /dev/null +++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java @@ -0,0 +1,27 @@ +// Copyright 2018 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package ai.vespa.hosted.cd; + +import org.junit.jupiter.api.Tag; +import org.junit.jupiter.api.Test; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import static java.lang.annotation.ElementType.ANNOTATION_TYPE; +import static java.lang.annotation.ElementType.TYPE; +import static java.lang.annotation.RetentionPolicy.RUNTIME; + +/** + * Tests which run against a fully operational Vespa deployment to verify its behaviour. + * + * Examples of integration test types are {@link SystemTest}, {@link StagingTest} and {@link ProductionTest}. + * + * @author jonmv + */ +@Target({TYPE, ANNOTATION_TYPE}) +@Retention(RUNTIME) +@Tag("integration") +public @interface IntegrationTest { } + diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java index e9a2be1fb1f..a60a8ea0e14 100644 --- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java +++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java @@ -26,7 +26,8 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; */ @Target({TYPE, ANNOTATION_TYPE}) @Retention(RUNTIME) -@Tag("ai.vespa.hosted.cd.ProductionTest") +@IntegrationTest +@Tag("production") public @interface ProductionTest { // Want to verify metrics (Vespa). diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java index b0325efa8d3..93a5780da25 100644 --- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java +++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java @@ -28,7 +28,8 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; */ @Target({TYPE, ANNOTATION_TYPE}) @Retention(RUNTIME) -@Tag("ai.vespa.hosted.cd.StagingTest") +@IntegrationTest +@Tag("staging") public @interface StagingTest { // Want to verify documents are not damaged by upgrade. diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java index f27fa01072c..ccaf0765768 100644 --- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java +++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java @@ -28,7 +28,8 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; */ @Target({TYPE, ANNOTATION_TYPE}) @Retention(RUNTIME) -@Tag("ai.vespa.hosted.cd.SystemTest") +@IntegrationTest +@Tag("system") public @interface SystemTest { // Want to feed some documents. -- cgit v1.2.3