From fdc7b27d69b22e0ffa151d56c8f3812dcd229555 Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Sun, 22 Nov 2015 00:50:45 +0000 Subject: some more work on coverage and some cleanup - get packages for integ tests right - introduce common AbstractFregeIntegrationSpec - first stab of unit test coverage for FregeCompile - minor cleanup on FregeCompile - configure fregePath as part as part of base plugin convention --- .../groovy/frege/gradle/FregeBasePluginTest.groovy | 31 ----------------- .../groovy/frege/gradle/FregePluginTest.groovy | 32 ------------------ .../gradle/plugins/FregeBasePluginTest.groovy | 30 +++++++++++++++++ .../frege/gradle/plugins/FregePluginTest.groovy | 30 +++++++++++++++++ .../frege/gradle/tasks/FregeCompileTest.groovy | 39 ++++++++++++++++++++++ 5 files changed, 99 insertions(+), 63 deletions(-) delete mode 100644 src/test/groovy/frege/gradle/FregeBasePluginTest.groovy delete mode 100644 src/test/groovy/frege/gradle/FregePluginTest.groovy create mode 100644 src/test/groovy/frege/gradle/plugins/FregeBasePluginTest.groovy create mode 100644 src/test/groovy/frege/gradle/plugins/FregePluginTest.groovy create mode 100644 src/test/groovy/frege/gradle/tasks/FregeCompileTest.groovy (limited to 'src/test/groovy/frege') diff --git a/src/test/groovy/frege/gradle/FregeBasePluginTest.groovy b/src/test/groovy/frege/gradle/FregeBasePluginTest.groovy deleted file mode 100644 index 3ca1bb2..0000000 --- a/src/test/groovy/frege/gradle/FregeBasePluginTest.groovy +++ /dev/null @@ -1,31 +0,0 @@ -package frege.gradle - -import frege.gradle.plugins.FregeBasePlugin -import org.gradle.api.Project -import org.gradle.testfixtures.ProjectBuilder -import spock.lang.Specification - -public class FregeBasePluginTest extends Specification { - - Project project = ProjectBuilder.builder().build() - - def setup(){ - when: - project.plugins.apply(FregeBasePlugin) - } - - def "adds frege extension"(){ - expect: - project.getExtensions().getByName(FregeBasePlugin.EXTENSION_NAME) != null - } - - def "applies java base plugin"(){ - expect: - project.pluginManager.hasPlugin("java-base") - } - - def "can be identified by id"(){ - expect: - project.pluginManager.hasPlugin("org.frege-lang.base") - } -} \ No newline at end of file diff --git a/src/test/groovy/frege/gradle/FregePluginTest.groovy b/src/test/groovy/frege/gradle/FregePluginTest.groovy deleted file mode 100644 index 2fc6d86..0000000 --- a/src/test/groovy/frege/gradle/FregePluginTest.groovy +++ /dev/null @@ -1,32 +0,0 @@ -package frege.gradle - -import frege.gradle.plugins.FregeBasePlugin -import frege.gradle.plugins.FregePlugin -import org.gradle.api.Project -import org.gradle.testfixtures.ProjectBuilder -import spock.lang.Specification - -class FregePluginTest extends Specification { - - Project project = ProjectBuilder.builder().build() - - def setup(){ - when: - project.plugins.apply(FregePlugin) - } - - def "adds frege extension"(){ - expect: - project.getExtensions().getByName(FregeBasePlugin.EXTENSION_NAME) != null - } - - def "applies frege base plugin"() { - expect: - project.pluginManager.findPlugin("org.frege-lang.base") != null - } - - def "can be identified by id"(){ - expect: - project.pluginManager.hasPlugin("org.frege-lang") - } -} diff --git a/src/test/groovy/frege/gradle/plugins/FregeBasePluginTest.groovy b/src/test/groovy/frege/gradle/plugins/FregeBasePluginTest.groovy new file mode 100644 index 0000000..04b5587 --- /dev/null +++ b/src/test/groovy/frege/gradle/plugins/FregeBasePluginTest.groovy @@ -0,0 +1,30 @@ +package frege.gradle.plugins + +import org.gradle.api.Project +import org.gradle.testfixtures.ProjectBuilder +import spock.lang.Specification + +public class FregeBasePluginTest extends Specification { + + Project project = ProjectBuilder.builder().build() + + def setup(){ + when: + project.plugins.apply(FregeBasePlugin) + } + + def "adds frege extension"(){ + expect: + project.getExtensions().getByName(FregeBasePlugin.EXTENSION_NAME) != null + } + + def "applies java base plugin"(){ + expect: + project.pluginManager.hasPlugin("java-base") + } + + def "can be identified by id"(){ + expect: + project.pluginManager.hasPlugin("org.frege-lang.base") + } +} \ No newline at end of file diff --git a/src/test/groovy/frege/gradle/plugins/FregePluginTest.groovy b/src/test/groovy/frege/gradle/plugins/FregePluginTest.groovy new file mode 100644 index 0000000..1867c88 --- /dev/null +++ b/src/test/groovy/frege/gradle/plugins/FregePluginTest.groovy @@ -0,0 +1,30 @@ +package frege.gradle.plugins + +import org.gradle.api.Project +import org.gradle.testfixtures.ProjectBuilder +import spock.lang.Specification + +class FregePluginTest extends Specification { + + Project project = ProjectBuilder.builder().build() + + def setup(){ + when: + project.plugins.apply(FregePlugin) + } + + def "adds frege extension"(){ + expect: + project.getExtensions().getByName(FregeBasePlugin.EXTENSION_NAME) != null + } + + def "applies frege base plugin"() { + expect: + project.pluginManager.findPlugin("org.frege-lang.base") != null + } + + def "can be identified by id"(){ + expect: + project.pluginManager.hasPlugin("org.frege-lang") + } +} diff --git a/src/test/groovy/frege/gradle/tasks/FregeCompileTest.groovy b/src/test/groovy/frege/gradle/tasks/FregeCompileTest.groovy new file mode 100644 index 0000000..c9224ea --- /dev/null +++ b/src/test/groovy/frege/gradle/tasks/FregeCompileTest.groovy @@ -0,0 +1,39 @@ +package frege.gradle.tasks + +import org.gradle.api.Project +import org.gradle.testfixtures.ProjectBuilder +import spock.lang.Specification + +class FregeCompileTest extends Specification { + Project project = ProjectBuilder.builder().build() + FregeCompile compile + + def setup() { + when: + compile = project.tasks.create("fregeCompile", FregeCompile) + } + + + def "configured sourcePaths tracked"() { + when: + compile.source("someFolder") + then: + compile.sourcePaths == [project.file("someFolder")] + } + + + def "default assembleArguments"() { + given: + compile.destinationDir = project.file("testoutput") + expect: + compile.assembleArguments() == ["-inline", "-make", "-d", project.file("testoutput").absolutePath] + } + + def "with prefix"() { + given: + compile.destinationDir = project.file("testoutput") + compile.prefix = "somePrefix" + expect: + compile.assembleArguments() == ["-inline", "-make", "-prefix", "somePrefix", "-d", project.file("testoutput").absolutePath] + } +} -- cgit