This is an automated email from the ASF dual-hosted git repository. jamesfredley pushed a commit to branch add-missing-directories in repository https://gitbox.apache.org/repos/asf/grails-forge.git
commit 1724d537a6ec22fc69913b068a65dad76fdbd4b9 Author: James Fredley <[email protected]> AuthorDate: Fri May 23 11:55:55 2025 -0400 add missing grails-app directories and update tests --- .../grails/forge/feature/grails/GrailsBase.java | 7 +++++ .../forge/feature/grails/GrailsBaseSpec.groovy | 31 ++++++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/grails-forge-core/src/main/java/org/grails/forge/feature/grails/GrailsBase.java b/grails-forge-core/src/main/java/org/grails/forge/feature/grails/GrailsBase.java index d8097f3..bc00357 100644 --- a/grails-forge-core/src/main/java/org/grails/forge/feature/grails/GrailsBase.java +++ b/grails-forge-core/src/main/java/org/grails/forge/feature/grails/GrailsBase.java @@ -84,5 +84,12 @@ public class GrailsBase implements DefaultFeature { generatorContext.addTemplate("src/main/groovy", new URLTemplate("src/main/groovy/.gitkeep", classLoader.getResource(".gitkeep"))); generatorContext.addTemplate("src/test/groovy", new URLTemplate("src/test/groovy/.gitkeep", classLoader.getResource(".gitkeep"))); generatorContext.addTemplate("src/integration-test/groovy", new URLTemplate("src/integration-test/groovy/.gitkeep", classLoader.getResource(".gitkeep"))); + + generatorContext.addTemplate("grails-app/services", new URLTemplate("grails-app/services/.gitkeep", classLoader.getResource(".gitkeep"))); + generatorContext.addTemplate("grails-app/domain", new URLTemplate("grails-app/domain/.gitkeep", classLoader.getResource(".gitkeep"))); + + if(generatorContext.getApplicationType() != ApplicationType.REST_API) { + generatorContext.addTemplate("grails-app/taglib", new URLTemplate("grails-app/taglib/.gitkeep", classLoader.getResource(".gitkeep"))); + } } } diff --git a/grails-forge-core/src/test/groovy/org/grails/forge/feature/grails/GrailsBaseSpec.groovy b/grails-forge-core/src/test/groovy/org/grails/forge/feature/grails/GrailsBaseSpec.groovy index 90dee08..630568c 100644 --- a/grails-forge-core/src/test/groovy/org/grails/forge/feature/grails/GrailsBaseSpec.groovy +++ b/grails-forge-core/src/test/groovy/org/grails/forge/feature/grails/GrailsBaseSpec.groovy @@ -25,6 +25,7 @@ import org.grails.forge.fixture.CommandOutputFixture import org.grails.forge.options.JdkVersion import org.grails.forge.options.Options import org.grails.forge.options.TestFramework +import spock.lang.Unroll class GrailsBaseSpec extends BeanContextSpec implements CommandOutputFixture { @@ -49,4 +50,34 @@ class GrailsBaseSpec extends BeanContextSpec implements CommandOutputFixture { output.containsKey("src/test/groovy/.gitkeep") output.containsKey("src/integration-test/groovy/.gitkeep") } + + @Unroll + void "test domain, services and taglib directories are present for ApplicationTypes other than REST_API"() { + when: + final def output = generate(applicationType, new Options(TestFramework.SPOCK)) + + then: + + output.containsKey("grails-app/services/.gitkeep") + output.containsKey("grails-app/domain/.gitkeep") + output.containsKey("grails-app/taglib/.gitkeep") + + where: + applicationType << ApplicationType.values() - ApplicationType.REST_API + } + + @Unroll + void "test domain and services directories are present for ApplicationType.REST_API"() { + when: + final def output = generate(applicationType, new Options(TestFramework.SPOCK)) + + then: + + output.containsKey("grails-app/services/.gitkeep") + output.containsKey("grails-app/domain/.gitkeep") + !output.containsKey("grails-app/taglib/.gitkeep") + + where: + applicationType << [ApplicationType.REST_API] + } } \ No newline at end of file
