Commits

David Carr committed b30131a

build: add support for integration tests

  • Participants
  • Parent commits dd91f9e

Comments (0)

Files changed (4)

 apply from: 'gradle/convention.gradle'
 apply from: 'gradle/maven.gradle'
 apply from: 'gradle/license.gradle'
+apply from: 'gradle/integrationTest.gradle'
 
 dependencies {
     compile gradleApi()

gradle/integrationTest.gradle

+import org.gradle.plugins.ide.idea.IdeaPlugin
+
+sourceSets {
+    integrationTest {
+        compileClasspath = sourceSets.main.output + configurations.testRuntime
+        runtimeClasspath = output + sourceSets.main.output + configurations.testRuntime
+    }
+}
+
+task integrationTest(type: Test, group: JavaBasePlugin.VERIFICATION_GROUP, description: 'Runs the integration tests.') {
+    testClassesDir = sourceSets.integrationTest.output.classesDir
+    classpath = sourceSets.integrationTest.runtimeClasspath
+    testSrcDirs = sourceSets.integrationTest.allSource.srcDirs as List
+}
+
+check.dependsOn integrationTest
+
+plugins.withType(IdeaPlugin) {
+    idea {
+        module {
+            testSourceDirs += sourceSets.integrationTest.allSource.srcDirs
+        }
+    }
+}

src/integrationTest/groovy/us/carrclan/david/gradle/jaynesite/JavadocPreTagTestSuite.groovy

+/*
+ * Copyright 2013 David M. Carr
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in
+ * compliance with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License is
+ * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and limitations under the License.
+ */
+
+package us.carrclan.david.gradle.jaynesite
+
+import junit.framework.Test
+import junit.framework.TestCase
+import junit.framework.TestSuite
+
+class JavadocPreTagTestSuite extends TestCase {
+    public static Test suite() {
+        new TestSuite().with { suite ->
+            suite.addTest(JavadocAssertionTestSuite.suite('src/main'))
+            suite
+        }
+    }
+}

src/test/groovy/us/carrclan/david/gradle/JavadocPreTagTestSuite.groovy

-/*
- * Copyright 2013 David M. Carr
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in
- * compliance with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License is
- * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and limitations under the License.
- */
-
-package us.carrclan.david.gradle
-
-import junit.framework.Test
-import junit.framework.TestCase
-import junit.framework.TestSuite
-
-class JavadocPreTagTestSuite extends TestCase {
-    public static Test suite() {
-        new TestSuite().with { suite ->
-            suite.addTest(JavadocAssertionTestSuite.suite('src/main'))
-            suite
-        }
-    }
-}