From fe3ebc4726700c1dc72e31cfbeca84fc147d2ecf Mon Sep 17 00:00:00 2001
From: rschoene <rene.schoene@tu-dresden.de>
Date: Fri, 19 Jun 2020 17:55:04 +0200
Subject: [PATCH] Normally run test not requiring a running MQTT broker.

---
 .gitlab-ci.yml                                |  2 +-
 ros2rag.tests/build.gradle                    | 23 ++++++++++++++-----
 .../ros2rag/tests/AbstractMqttTest.java       |  2 ++
 3 files changed, 20 insertions(+), 7 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 64a4f56..4989fda 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -21,7 +21,7 @@ test:
   image: openjdk:8
   stage: test
   script:
-    - ./gradlew test
+    - ./gradlew allTests
   artifacts:
     reports:
       junit: ros2rag.tests/build/test-results/test/TEST-*.xml
diff --git a/ros2rag.tests/build.gradle b/ros2rag.tests/build.gradle
index 20906aa..568f441 100644
--- a/ros2rag.tests/build.gradle
+++ b/ros2rag.tests/build.gradle
@@ -30,11 +30,22 @@ dependencies {
 }
 
 test {
-    useJUnitPlatform()
+    useJUnitPlatform {
+        excludeTags 'mqtt'
+    }
 
     maxHeapSize = '1G'
 }
 
+task allTests(type: Test, dependsOn: testClasses) {
+    description = 'Run every test'
+    group = 'verification'
+
+    useJUnitPlatform {
+        includeTags 'mqtt'
+    }
+}
+
 relastTest {
     compilerLocation = '../libs/relast.jar'
 }
@@ -82,7 +93,7 @@ task compileExampleTest(type: RelastTest) {
             'src/test/02-after-ros2rag/example/ROS2RAG.jadd'
 }
 
-test.dependsOn compileExampleTest
+testClasses.dependsOn compileExampleTest
 compileExampleTest.dependsOn preprocessExampleTest
 
 // --- Test: default-only-read ---
@@ -112,7 +123,7 @@ task compileDefaultOnlyReadTest(type: RelastTest) {
             'src/test/02-after-ros2rag/defaultOnlyRead/ROS2RAG.jadd'
 }
 
-test.dependsOn compileDefaultOnlyReadTest
+testClasses.dependsOn compileDefaultOnlyReadTest
 compileDefaultOnlyReadTest.dependsOn preprocessDefaultOnlyReadTest
 
 // --- Test: default-only-write ---
@@ -143,7 +154,7 @@ task compileDefaultOnlyWriteTest(type: RelastTest) {
             'src/test/02-after-ros2rag/defaultOnlyWrite/ROS2RAG.jadd'
 }
 
-test.dependsOn compileDefaultOnlyWriteTest
+testClasses.dependsOn compileDefaultOnlyWriteTest
 compileDefaultOnlyWriteTest.dependsOn preprocessDefaultOnlyWriteTest
 
 // --- Test: read1write2 ---
@@ -174,7 +185,7 @@ task compileRead1Write2Test(type: RelastTest) {
             'src/test/02-after-ros2rag/read1write2/ROS2RAG.jadd'
 }
 
-test.dependsOn compileRead1Write2Test
+testClasses.dependsOn compileRead1Write2Test
 compileRead1Write2Test.dependsOn preprocessRead1Write2Test
 
 // --- Test: read2write1 ---
@@ -205,7 +216,7 @@ task compileRead2Write1Test(type: RelastTest) {
             'src/test/02-after-ros2rag/read2write1/ROS2RAG.jadd'
 }
 
-test.dependsOn compileRead2Write1Test
+testClasses.dependsOn compileRead2Write1Test
 compileRead2Write1Test.dependsOn preprocessRead2Write1Test
 
 clean {
diff --git a/ros2rag.tests/src/test/java/org/jastadd/ros2rag/tests/AbstractMqttTest.java b/ros2rag.tests/src/test/java/org/jastadd/ros2rag/tests/AbstractMqttTest.java
index 3ca2c2d..6c07780 100644
--- a/ros2rag.tests/src/test/java/org/jastadd/ros2rag/tests/AbstractMqttTest.java
+++ b/ros2rag.tests/src/test/java/org/jastadd/ros2rag/tests/AbstractMqttTest.java
@@ -2,6 +2,7 @@ package org.jastadd.ros2rag.tests;
 
 import defaultOnlyRead.ast.MqttUpdater;
 import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Tag;
 
 import java.io.IOException;
 import java.util.concurrent.TimeUnit;
@@ -11,6 +12,7 @@ import java.util.concurrent.TimeUnit;
  *
  * @author rschoene - Initial contribution
  */
+@Tag("mqtt")
 public abstract class AbstractMqttTest {
   static boolean checkDone = false;
   static Boolean checkResult;
-- 
GitLab