]> source.dussan.org Git - sonarqube.git/commitdiff
use testFixtures instead of test configuration of ce-task
authorSébastien Lesaint <sebastien.lesaint@sonarsource.com>
Thu, 29 Aug 2019 13:01:10 +0000 (15:01 +0200)
committerSonarTech <sonartech@sonarsource.com>
Mon, 2 Sep 2019 18:21:05 +0000 (20:21 +0200)
server/sonar-ce-task-projectanalysis/build.gradle
server/sonar-ce-task/build.gradle
server/sonar-ce-task/src/test/java/org/sonar/ce/task/ChangeLogLevel.java [deleted file]
server/sonar-ce-task/src/test/java/org/sonar/ce/task/step/TestComputationStepContext.java [deleted file]
server/sonar-ce-task/src/testFixtures/java/org/sonar/ce/task/ChangeLogLevel.java [new file with mode: 0644]
server/sonar-ce-task/src/testFixtures/java/org/sonar/ce/task/step/TestComputationStepContext.java [new file with mode: 0644]

index e9eca578474cc29ed9674855068c843ecaab6bac..99971d84553c7631851dc1ca5610068eb27e3cd0 100644 (file)
@@ -57,7 +57,7 @@ dependencies {
   testCompile 'org.mockito:mockito-core'
   testCompile 'org.reflections:reflections'
   testCompile project(':sonar-testing-harness')
-  testCompile project(path: ":server:sonar-ce-task", configuration: "tests")
+  testCompile testFixtures(project(':server:sonar-ce-task'))
   testCompile testFixtures(project(':server:sonar-server-common'))
 }
 
index 7509cd5dbb532cfd40d9408bfc7d71490b21a452..6a18c0ce3294a49c74c95b1bbd321aa84aa6f17c 100644 (file)
@@ -24,8 +24,8 @@ dependencies {
 
   compile project(':server:sonar-server-common')
   compile project(':sonar-core')
-  compileOnly project(path: ':sonar-plugin-api', configuration: 'shadow')
 
+  compileOnly project(path: ':sonar-plugin-api', configuration: 'shadow')
   compileOnly 'com.google.code.findbugs:jsr305'
 
   testCompile 'ch.qos.logback:logback-access'
@@ -36,22 +36,13 @@ dependencies {
   testCompile 'junit:junit'
   testCompile 'org.apache.logging.log4j:log4j-api'
   testCompile 'org.apache.logging.log4j:log4j-core'
-  testCompile 'org.assertj:assertj-core'
   testCompile 'org.assertj:assertj-guava'
   testCompile 'org.mockito:mockito-core'
   testCompile 'org.reflections:reflections'
   testCompile testFixtures(project(':server:sonar-db-dao'))
-}
 
-task testJar(type: Jar) {
-  classifier = 'tests'
-  from sourceSets.test.output
-}
-
-configurations {
-  tests
-}
+  testFixturesApi 'org.assertj:assertj-core'
+  testFixturesApi project(path: ':sonar-plugin-api', configuration: 'shadow')
 
-artifacts {
- tests testJar
+  testFixturesCompileOnly 'com.google.code.findbugs:jsr305'
 }
diff --git a/server/sonar-ce-task/src/test/java/org/sonar/ce/task/ChangeLogLevel.java b/server/sonar-ce-task/src/test/java/org/sonar/ce/task/ChangeLogLevel.java
deleted file mode 100644 (file)
index e9135a0..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * SonarQube
- * Copyright (C) 2009-2019 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- */
-package org.sonar.ce.task;
-
-import org.sonar.api.utils.log.Logger;
-import org.sonar.api.utils.log.LoggerLevel;
-import org.sonar.api.utils.log.Loggers;
-
-public final class ChangeLogLevel implements AutoCloseable {
-  private final Logger logger;
-  private final LoggerLevel previous;
-
-  public ChangeLogLevel(Class<?> clazz, LoggerLevel newLevel) {
-    this.logger = Loggers.get(clazz);
-    this.previous = logger.getLevel();
-    logger.setLevel(newLevel);
-  }
-
-  @Override
-  public void close() {
-    logger.setLevel(previous);
-  }
-}
diff --git a/server/sonar-ce-task/src/test/java/org/sonar/ce/task/step/TestComputationStepContext.java b/server/sonar-ce-task/src/test/java/org/sonar/ce/task/step/TestComputationStepContext.java
deleted file mode 100644 (file)
index 8e984b0..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * SonarQube
- * Copyright (C) 2009-2019 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- */
-package org.sonar.ce.task.step;
-
-import java.util.HashMap;
-import java.util.Map;
-import javax.annotation.Nullable;
-
-import static com.google.common.base.Preconditions.checkArgument;
-import static java.util.Objects.requireNonNull;
-import static org.assertj.core.api.Assertions.assertThat;
-
-/**
- * Implementation of {@link ComputationStep.Context} for unit tests.
- */
-public class TestComputationStepContext implements ComputationStep.Context {
-
-  private final TestStatistics statistics = new TestStatistics();
-
-  @Override
-  public TestStatistics getStatistics() {
-    return statistics;
-  }
-
-  public static class TestStatistics implements ComputationStep.Statistics {
-    private final Map<String, Object> map = new HashMap<>();
-
-    @Override
-    public ComputationStep.Statistics add(String key, Object value) {
-      requireNonNull(key, "Statistic has null key");
-      requireNonNull(value, () -> String.format("Statistic with key [%s] has null value", key));
-      checkArgument(!key.equalsIgnoreCase("time"), "Statistic with key [time] is not accepted");
-      checkArgument(!map.containsKey(key), "Statistic with key [%s] is already present", key);
-      map.put(key, value);
-      return this;
-    }
-
-    public Map<String, Object> getAll() {
-      return map;
-    }
-
-    public Object get(String key) {
-      return requireNonNull(map.get(key));
-    }
-
-    public TestStatistics assertValue(String key, @Nullable Object expectedValue) {
-      if (expectedValue == null) {
-        assertThat(map.get(key)).as(key).isNull();
-      } else {
-        assertThat(map.get(key)).as(key).isEqualTo(expectedValue);
-      }
-      return this;
-    }
-  }
-}
diff --git a/server/sonar-ce-task/src/testFixtures/java/org/sonar/ce/task/ChangeLogLevel.java b/server/sonar-ce-task/src/testFixtures/java/org/sonar/ce/task/ChangeLogLevel.java
new file mode 100644 (file)
index 0000000..e9135a0
--- /dev/null
@@ -0,0 +1,40 @@
+/*
+ * SonarQube
+ * Copyright (C) 2009-2019 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ */
+package org.sonar.ce.task;
+
+import org.sonar.api.utils.log.Logger;
+import org.sonar.api.utils.log.LoggerLevel;
+import org.sonar.api.utils.log.Loggers;
+
+public final class ChangeLogLevel implements AutoCloseable {
+  private final Logger logger;
+  private final LoggerLevel previous;
+
+  public ChangeLogLevel(Class<?> clazz, LoggerLevel newLevel) {
+    this.logger = Loggers.get(clazz);
+    this.previous = logger.getLevel();
+    logger.setLevel(newLevel);
+  }
+
+  @Override
+  public void close() {
+    logger.setLevel(previous);
+  }
+}
diff --git a/server/sonar-ce-task/src/testFixtures/java/org/sonar/ce/task/step/TestComputationStepContext.java b/server/sonar-ce-task/src/testFixtures/java/org/sonar/ce/task/step/TestComputationStepContext.java
new file mode 100644 (file)
index 0000000..8e984b0
--- /dev/null
@@ -0,0 +1,72 @@
+/*
+ * SonarQube
+ * Copyright (C) 2009-2019 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ */
+package org.sonar.ce.task.step;
+
+import java.util.HashMap;
+import java.util.Map;
+import javax.annotation.Nullable;
+
+import static com.google.common.base.Preconditions.checkArgument;
+import static java.util.Objects.requireNonNull;
+import static org.assertj.core.api.Assertions.assertThat;
+
+/**
+ * Implementation of {@link ComputationStep.Context} for unit tests.
+ */
+public class TestComputationStepContext implements ComputationStep.Context {
+
+  private final TestStatistics statistics = new TestStatistics();
+
+  @Override
+  public TestStatistics getStatistics() {
+    return statistics;
+  }
+
+  public static class TestStatistics implements ComputationStep.Statistics {
+    private final Map<String, Object> map = new HashMap<>();
+
+    @Override
+    public ComputationStep.Statistics add(String key, Object value) {
+      requireNonNull(key, "Statistic has null key");
+      requireNonNull(value, () -> String.format("Statistic with key [%s] has null value", key));
+      checkArgument(!key.equalsIgnoreCase("time"), "Statistic with key [time] is not accepted");
+      checkArgument(!map.containsKey(key), "Statistic with key [%s] is already present", key);
+      map.put(key, value);
+      return this;
+    }
+
+    public Map<String, Object> getAll() {
+      return map;
+    }
+
+    public Object get(String key) {
+      return requireNonNull(map.get(key));
+    }
+
+    public TestStatistics assertValue(String key, @Nullable Object expectedValue) {
+      if (expectedValue == null) {
+        assertThat(map.get(key)).as(key).isNull();
+      } else {
+        assertThat(map.get(key)).as(key).isEqualTo(expectedValue);
+      }
+      return this;
+    }
+  }
+}