diff --git a/impl-projects/src/main/java/org/jboss/forge/addon/gradle/projects/GradleFacetImpl.java b/impl-projects/src/main/java/org/jboss/forge/addon/gradle/projects/GradleFacetImpl.java index 1b60c02..38cd678 100644 --- a/impl-projects/src/main/java/org/jboss/forge/addon/gradle/projects/GradleFacetImpl.java +++ b/impl-projects/src/main/java/org/jboss/forge/addon/gradle/projects/GradleFacetImpl.java @@ -13,7 +13,7 @@ import javax.inject.Inject; import org.jboss.forge.addon.facets.AbstractFacet; -import org.jboss.forge.addon.gradle.parser.GradleUtil; +import org.jboss.forge.addon.gradle.parser.GradleSourceUtil; import org.jboss.forge.addon.gradle.projects.model.GradleModel; import org.jboss.forge.addon.gradle.projects.model.GradleModelLoader; import org.jboss.forge.addon.projects.Project; @@ -94,10 +94,10 @@ private GradleModel loadModel(String buildScriptPath) throws IOException { String directory = new File(buildScriptPath).getParent(); - manager.runGradleBuild(directory, GradleUtil.FORGE_OUTPUT_TASK, ""); + manager.runGradleBuild(directory, GradleSourceUtil.FORGE_OUTPUT_TASK, ""); FileResource forgeOutputfile = (FileResource) resourceFactory.create(new File(directory, - GradleUtil.FORGE_OUTPUT_XML)); + GradleSourceUtil.FORGE_OUTPUT_XML)); String forgeOutput = Streams.toString(forgeOutputfile.getResourceInputStream()); forgeOutputfile.delete(); @@ -115,7 +115,7 @@ private void checkIfIsForgeLibraryInstalled(String buildScriptPath) throws IOExc InputStream scriptInputStream = scriptResource.getResourceInputStream(); String script = Streams.toString(scriptInputStream); Streams.closeQuietly(scriptInputStream); - String newScript = GradleUtil.checkForIncludeForgeLibraryAndInsert(script); + String newScript = GradleSourceUtil.checkForIncludeForgeLibraryAndInsert(script); // If Forge library is not included if (!script.equals(newScript)) @@ -124,11 +124,11 @@ private void checkIfIsForgeLibraryInstalled(String buildScriptPath) throws IOExc } FileResource forgeLib = (FileResource) resourceFactory - .create(new File(directory, GradleUtil.FORGE_LIBRARY)); + .create(new File(directory, GradleSourceUtil.FORGE_LIBRARY)); // TODO check existing forge library version and replace with newer if necessary if (!forgeLib.exists()) { - forgeLib.setContents(getClass().getResourceAsStream(GradleUtil.FORGE_LIBRARY_RESOURCE)); + forgeLib.setContents(getClass().getResourceAsStream(GradleSourceUtil.FORGE_LIBRARY_RESOURCE)); } } diff --git a/impl/src/main/java/org/jboss/forge/addon/gradle/parser/GradleUtil.java b/impl/src/main/java/org/jboss/forge/addon/gradle/parser/GradleSourceUtil.java similarity index 99% rename from impl/src/main/java/org/jboss/forge/addon/gradle/parser/GradleUtil.java rename to impl/src/main/java/org/jboss/forge/addon/gradle/parser/GradleSourceUtil.java index db4477e..b6f0c1b 100644 --- a/impl/src/main/java/org/jboss/forge/addon/gradle/parser/GradleUtil.java +++ b/impl/src/main/java/org/jboss/forge/addon/gradle/parser/GradleSourceUtil.java @@ -18,7 +18,7 @@ /** * @author Adam Wyłuda */ -public class GradleUtil +public class GradleSourceUtil { public static final String FORGE_LIBRARY = "forge.gradle"; public static final String FORGE_LIBRARY_RESOURCE = "/forge.gradle"; diff --git a/impl/src/main/java/org/jboss/forge/addon/gradle/projects/model/GradleModelImpl.java b/impl/src/main/java/org/jboss/forge/addon/gradle/projects/model/GradleModelImpl.java index e54709a..ebd4633 100644 --- a/impl/src/main/java/org/jboss/forge/addon/gradle/projects/model/GradleModelImpl.java +++ b/impl/src/main/java/org/jboss/forge/addon/gradle/projects/model/GradleModelImpl.java @@ -8,7 +8,7 @@ import java.util.List; -import org.jboss.forge.addon.gradle.parser.GradleUtil; +import org.jboss.forge.addon.gradle.parser.GradleSourceUtil; import org.jboss.forge.addon.gradle.projects.exceptions.UnremovableElementException; import org.jboss.forge.addon.resource.FileResource; @@ -246,7 +246,7 @@ public void createTask(GradleTaskBuilder builder) @Override public void createDependency(GradleDependencyBuilder builder) { - script = GradleUtil.insertDependency(script, builder.getGroup(), builder.getName(), builder.getVersion(), + script = GradleSourceUtil.insertDependency(script, builder.getGroup(), builder.getName(), builder.getVersion(), builder.getConfiguration()); } diff --git a/impl/src/test/java/org/jboss/forge/addon/gradle/parser/GradleUtilTest.java b/impl/src/test/java/org/jboss/forge/addon/gradle/parser/GradleSourceUtilTest.java similarity index 82% rename from impl/src/test/java/org/jboss/forge/addon/gradle/parser/GradleUtilTest.java rename to impl/src/test/java/org/jboss/forge/addon/gradle/parser/GradleSourceUtilTest.java index 9fca491..21ac4a5 100644 --- a/impl/src/test/java/org/jboss/forge/addon/gradle/parser/GradleUtilTest.java +++ b/impl/src/test/java/org/jboss/forge/addon/gradle/parser/GradleSourceUtilTest.java @@ -1,332 +1,332 @@ -/* - * Copyright 2013 Red Hat, Inc. and/or its affiliates. - * - * Licensed under the Eclipse Public License version 1.0, available at - * http://www.eclipse.org/legal/epl-v10.html - */ -package org.jboss.forge.addon.gradle.parser; - -import static org.junit.Assert.assertEquals; - -import org.gradle.jarjar.com.google.common.collect.Lists; -import org.jboss.forge.addon.gradle.projects.exceptions.UnremovableElementException; -import org.junit.Ignore; -import org.junit.Test; - -/** - * @author Adam Wyłuda - */ -public class GradleUtilTest -{ - @Test - public void testInsertDependency() - { - String source = "" + - "dependencies {\n" + - " compile 'a:b:1.0'\n" + - "}"; - String expected = "" + - "dependencies {\n" + - " compile 'a:b:1.0'\n" + - " testRuntime 'x:y:3.0'\n" + - "}"; - String result = GradleUtil.insertDependency(source, "x", "y", "3.0", "testRuntime"); - assertEquals(expected, result); - } - - @Test - public void testRemoveDependencyDefinedByString() throws UnremovableElementException - { - String source = "" + - "dependencies {\n" + - " testRuntime 'x:z:4.0'\n" + - " compile 'a:b:1.0'\n" + - "}"; - String expected = "" + - "dependencies {\n" + - " testRuntime 'x:z:4.0'\n" + - "}"; - String result = GradleUtil.removeDependency(source, "a", "b", "1.0", "compile"); - assertEquals(expected, result); - } - - @Test - public void testRemoveDependencyDefinedByMap() throws UnremovableElementException - { - String source = "" + - "dependencies {\n" + - " testRuntime 'x:z:4.0'\n" + - " compile name: 'b', version: '1.0', group: 'a'\n" + - "}"; - String expected = "" + - "dependencies {\n" + - " testRuntime 'x:z:4.0'\n" + - "}"; - String result = GradleUtil.removeDependency(source, "a", "b", "1.0", "compile"); - assertEquals(expected, result); - } - - @Test(expected = UnremovableElementException.class) - public void testRemoveDependencyForException() throws UnremovableElementException - { - String source = "" + - "dependencies {\n" + - " def alias = compile" + - " alias 'a:b:1.0'\n" + - "}"; - GradleUtil.removeDependency(source, "a", "b", "1.0", "compile"); - } - - @Test - public void testInsertManagedDependency() - { - String source = "" + - "dependencies {\n" + - " compile 'a:b:1.0'\n" + - "}\n" + - "allprojects {\n" + - " dependencies {\n" + - " }\n" + - "}\n"; - String expected = "" + - "dependencies {\n" + - " compile 'a:b:1.0'\n" + - "}\n" + - "allprojects {\n" + - " dependencies {\n" + - " managed config: 'compile', group: 'xx', name: 'yy', version: 'vv'\n" + - " }\n" + - "}\n"; - String result = GradleUtil.insertManagedDependency(source, "xx", "yy", "vv", "compile"); - assertEquals(expected, result); - } - - @Test - public void testRemoveManagedDependency() throws UnremovableElementException - { - String source = "" + - "dependencies {\n" + - " compile 'a:b:1.0'\n" + - "}\n" + - "allprojects {\n" + - " dependencies {\n" + - " managed config: 'compile', group: 'xx', name: 'yy', version: 'vv'\n" + - " }\n" + - "}\n"; - String expected = "" + - "dependencies {\n" + - " compile 'a:b:1.0'\n" + - "}\n" + - "allprojects {\n" + - " dependencies {\n" + - " }\n" + - "}\n"; - String result = GradleUtil.removeManagedDependency(source, "xx", "yy", "vv", "compile"); - assertEquals(expected, result); - } - - @Test - public void testInsertPlugin() - { - String source = "" + - "version = '4.0'\n" + - "\n" + - "apply plugin: 'java'\n" + - "\n" + - "repositories {}\n"; - String expected = "" + - "version = '4.0'\n" + - "\n" + - "apply plugin: 'java'\n" + - "apply plugin: 'groovy'\n" + - "\n" + - "repositories {}\n"; - String result = GradleUtil.insertPlugin(source, "groovy"); - assertEquals(expected, result); - } - - @Test - public void testRemovePluginDefinedByApply() throws UnremovableElementException - { - String source = "" + - "version = '4.0'\n" + - "\n" + - "apply plugin: 'java'\n" + - "\n" + - "repositories {}\n"; - String expected = "" + - "version = '4.0'\n" + - "repositories {}\n"; - String result = GradleUtil.removePlugin(source, "java"); - assertEquals(expected, result); - } - - @Test - public void testRemovePluginDefinedByProjectApply() throws UnremovableElementException - { - String source = "" + - "version = '4.0'\n" + - "\n" + - "project.apply plugin: 'java'\n" + - "\n" + - "repositories {}\n"; - String expected = "" + - "version = '4.0'\n" + - "repositories {}\n"; - String result = GradleUtil.removePlugin(source, "java"); - assertEquals(expected, result); - } - - @Test(expected = UnremovableElementException.class) - public void testRemovePluginForException() throws UnremovableElementException - { - String source = "" + - "version = '4.0'\n" + - "\n" + - "\n" + - "repositories {}\n"; - GradleUtil.removePlugin(source, "scala"); - } - - @Test - public void testInsertRepository() - { - String source = "" + - "repositories {\n" + - "}"; - String expected = "" + - "repositories {\n" + - " maven {\n" + - " url 'http://repo.com'\n" + - " }\n" + - "}"; - String result = GradleUtil.insertRepository(source, "", "http://repo.com"); - assertEquals(expected, result); - } - - @Test - public void testRemoveRepository() throws UnremovableElementException - { - String source = "" + - "repositories {\n" + - " maven {\n" + - " url 'http://repo.com'\n" + - " }\n" + - "}"; - String expected = "" + - "repositories {\n" + - " maven {\n" + - " }\n" + - "}"; - String result = GradleUtil.removeRepository(source, "", "http://repo.com"); - assertEquals(expected, result); - } - - @Test(expected = UnremovableElementException.class) - public void testRemoveRepositoryForException() throws UnremovableElementException - { - String source = "" + - "repositories {\n" + - "}"; - GradleUtil.removeRepository(source, "", "http://repo.com"); - } - - @Test - public void testInsertTask() - { - String source = "" + - "task abcd << {\n" + - " println 'ABCD!!'\n" + - "}\n"; - String expected = "" + - "task abcd << {\n" + - " println 'ABCD!!'\n" + - "}\n" + - "\n" + - "task efgh << {\n" + - " def variable = 10\n" + - " println variable\n" + - "}\n"; - String result = GradleUtil.insertTask(source, "efgh", Lists. newArrayList(), "", "" + - " def variable = 10\n" + - " println variable"); - assertEquals(expected, result); - } - - @Test - public void testInsertTaskWithDependenciesAndType() - { - String source = "" + - "task abcd << {\n" + - " println 'ABCD!!'\n" + - "}\n"; - String expected = "" + - "task abcd << {\n" + - " println 'ABCD!!'\n" + - "}\n" + - "\n" + - "task (name: 'efgh', dependsOn: ['x', 'y', 'z'], type: Copy) << {\n" + - " def variable = 10\n" + - " println variable\n" + - "}\n"; - String result = GradleUtil.insertTask(source, "efgh", Lists. newArrayList("x", "y", "z"), "Copy", "" + - " def variable = 10\n" + - " println variable"); - assertEquals(expected, result); - } - - @Test - public void testInsertTaskWithOneDependency() - { - String source = "" + - "task abcd << {\n" + - " println 'ABCD!!'\n" + - "}\n"; - String expected = "" + - "task abcd << {\n" + - " println 'ABCD!!'\n" + - "}\n" + - "\n" + - "task (name: 'efgh', dependsOn: 'x', type: Copy) << {\n" + - " def variable = 10\n" + - " println variable\n" + - "}\n"; - String result = GradleUtil.insertTask(source, "efgh", Lists. newArrayList("x"), "Copy", "" + - " def variable = 10\n" + - " println variable"); - assertEquals(expected, result); - } - - @Test - public void testCheckForIncludeForgeLibraryAndInsert() - { - String source = "" + - "task abcd << {\n" + - " println 'ABCD!!'\n" + - "}\n"; - String expected = "" + - "apply from: 'forge.gradle'\n" + - "task abcd << {\n" + - " println 'ABCD!!'\n" + - "}\n"; - String result = GradleUtil.checkForIncludeForgeLibraryAndInsert(source); - assertEquals(expected, result); - } - - @Test - public void testCheckForIncludeForgeLibraryAndInsertExisting() - { - String source = "" + - "apply from: 'forge.gradle'\n" + - "task abcd << {\n" + - " println 'ABCD!!'\n" + - "}\n"; - String expected = "" + - "apply from: 'forge.gradle'\n" + - "task abcd << {\n" + - " println 'ABCD!!'\n" + - "}\n"; - String result = GradleUtil.checkForIncludeForgeLibraryAndInsert(source); - assertEquals(expected, result); - } -} +/* + * Copyright 2013 Red Hat, Inc. and/or its affiliates. + * + * Licensed under the Eclipse Public License version 1.0, available at + * http://www.eclipse.org/legal/epl-v10.html + */ +package org.jboss.forge.addon.gradle.parser; + +import static org.junit.Assert.assertEquals; + +import org.gradle.jarjar.com.google.common.collect.Lists; +import org.jboss.forge.addon.gradle.projects.exceptions.UnremovableElementException; +import org.junit.Ignore; +import org.junit.Test; + +/** + * @author Adam Wyłuda + */ +public class GradleSourceUtilTest +{ + @Test + public void testInsertDependency() + { + String source = "" + + "dependencies {\n" + + " compile 'a:b:1.0'\n" + + "}"; + String expected = "" + + "dependencies {\n" + + " compile 'a:b:1.0'\n" + + " testRuntime 'x:y:3.0'\n" + + "}"; + String result = GradleSourceUtil.insertDependency(source, "x", "y", "3.0", "testRuntime"); + assertEquals(expected, result); + } + + @Test + public void testRemoveDependencyDefinedByString() throws UnremovableElementException + { + String source = "" + + "dependencies {\n" + + " testRuntime 'x:z:4.0'\n" + + " compile 'a:b:1.0'\n" + + "}"; + String expected = "" + + "dependencies {\n" + + " testRuntime 'x:z:4.0'\n" + + "}"; + String result = GradleSourceUtil.removeDependency(source, "a", "b", "1.0", "compile"); + assertEquals(expected, result); + } + + @Test + public void testRemoveDependencyDefinedByMap() throws UnremovableElementException + { + String source = "" + + "dependencies {\n" + + " testRuntime 'x:z:4.0'\n" + + " compile name: 'b', version: '1.0', group: 'a'\n" + + "}"; + String expected = "" + + "dependencies {\n" + + " testRuntime 'x:z:4.0'\n" + + "}"; + String result = GradleSourceUtil.removeDependency(source, "a", "b", "1.0", "compile"); + assertEquals(expected, result); + } + + @Test(expected = UnremovableElementException.class) + public void testRemoveDependencyForException() throws UnremovableElementException + { + String source = "" + + "dependencies {\n" + + " def alias = compile" + + " alias 'a:b:1.0'\n" + + "}"; + GradleSourceUtil.removeDependency(source, "a", "b", "1.0", "compile"); + } + + @Test + public void testInsertManagedDependency() + { + String source = "" + + "dependencies {\n" + + " compile 'a:b:1.0'\n" + + "}\n" + + "allprojects {\n" + + " dependencies {\n" + + " }\n" + + "}\n"; + String expected = "" + + "dependencies {\n" + + " compile 'a:b:1.0'\n" + + "}\n" + + "allprojects {\n" + + " dependencies {\n" + + " managed config: 'compile', group: 'xx', name: 'yy', version: 'vv'\n" + + " }\n" + + "}\n"; + String result = GradleSourceUtil.insertManagedDependency(source, "xx", "yy", "vv", "compile"); + assertEquals(expected, result); + } + + @Test + public void testRemoveManagedDependency() throws UnremovableElementException + { + String source = "" + + "dependencies {\n" + + " compile 'a:b:1.0'\n" + + "}\n" + + "allprojects {\n" + + " dependencies {\n" + + " managed config: 'compile', group: 'xx', name: 'yy', version: 'vv'\n" + + " }\n" + + "}\n"; + String expected = "" + + "dependencies {\n" + + " compile 'a:b:1.0'\n" + + "}\n" + + "allprojects {\n" + + " dependencies {\n" + + " }\n" + + "}\n"; + String result = GradleSourceUtil.removeManagedDependency(source, "xx", "yy", "vv", "compile"); + assertEquals(expected, result); + } + + @Test + public void testInsertPlugin() + { + String source = "" + + "version = '4.0'\n" + + "\n" + + "apply plugin: 'java'\n" + + "\n" + + "repositories {}\n"; + String expected = "" + + "version = '4.0'\n" + + "\n" + + "apply plugin: 'java'\n" + + "apply plugin: 'groovy'\n" + + "\n" + + "repositories {}\n"; + String result = GradleSourceUtil.insertPlugin(source, "groovy"); + assertEquals(expected, result); + } + + @Test + public void testRemovePluginDefinedByApply() throws UnremovableElementException + { + String source = "" + + "version = '4.0'\n" + + "\n" + + "apply plugin: 'java'\n" + + "\n" + + "repositories {}\n"; + String expected = "" + + "version = '4.0'\n" + + "repositories {}\n"; + String result = GradleSourceUtil.removePlugin(source, "java"); + assertEquals(expected, result); + } + + @Test + public void testRemovePluginDefinedByProjectApply() throws UnremovableElementException + { + String source = "" + + "version = '4.0'\n" + + "\n" + + "project.apply plugin: 'java'\n" + + "\n" + + "repositories {}\n"; + String expected = "" + + "version = '4.0'\n" + + "repositories {}\n"; + String result = GradleSourceUtil.removePlugin(source, "java"); + assertEquals(expected, result); + } + + @Test(expected = UnremovableElementException.class) + public void testRemovePluginForException() throws UnremovableElementException + { + String source = "" + + "version = '4.0'\n" + + "\n" + + "\n" + + "repositories {}\n"; + GradleSourceUtil.removePlugin(source, "scala"); + } + + @Test + public void testInsertRepository() + { + String source = "" + + "repositories {\n" + + "}"; + String expected = "" + + "repositories {\n" + + " maven {\n" + + " url 'http://repo.com'\n" + + " }\n" + + "}"; + String result = GradleSourceUtil.insertRepository(source, "", "http://repo.com"); + assertEquals(expected, result); + } + + @Test + public void testRemoveRepository() throws UnremovableElementException + { + String source = "" + + "repositories {\n" + + " maven {\n" + + " url 'http://repo.com'\n" + + " }\n" + + "}"; + String expected = "" + + "repositories {\n" + + " maven {\n" + + " }\n" + + "}"; + String result = GradleSourceUtil.removeRepository(source, "", "http://repo.com"); + assertEquals(expected, result); + } + + @Test(expected = UnremovableElementException.class) + public void testRemoveRepositoryForException() throws UnremovableElementException + { + String source = "" + + "repositories {\n" + + "}"; + GradleSourceUtil.removeRepository(source, "", "http://repo.com"); + } + + @Test + public void testInsertTask() + { + String source = "" + + "task abcd << {\n" + + " println 'ABCD!!'\n" + + "}\n"; + String expected = "" + + "task abcd << {\n" + + " println 'ABCD!!'\n" + + "}\n" + + "\n" + + "task efgh << {\n" + + " def variable = 10\n" + + " println variable\n" + + "}\n"; + String result = GradleSourceUtil.insertTask(source, "efgh", Lists. newArrayList(), "", "" + + " def variable = 10\n" + + " println variable"); + assertEquals(expected, result); + } + + @Test + public void testInsertTaskWithDependenciesAndType() + { + String source = "" + + "task abcd << {\n" + + " println 'ABCD!!'\n" + + "}\n"; + String expected = "" + + "task abcd << {\n" + + " println 'ABCD!!'\n" + + "}\n" + + "\n" + + "task (name: 'efgh', dependsOn: ['x', 'y', 'z'], type: Copy) << {\n" + + " def variable = 10\n" + + " println variable\n" + + "}\n"; + String result = GradleSourceUtil.insertTask(source, "efgh", Lists. newArrayList("x", "y", "z"), "Copy", "" + + " def variable = 10\n" + + " println variable"); + assertEquals(expected, result); + } + + @Test + public void testInsertTaskWithOneDependency() + { + String source = "" + + "task abcd << {\n" + + " println 'ABCD!!'\n" + + "}\n"; + String expected = "" + + "task abcd << {\n" + + " println 'ABCD!!'\n" + + "}\n" + + "\n" + + "task (name: 'efgh', dependsOn: 'x', type: Copy) << {\n" + + " def variable = 10\n" + + " println variable\n" + + "}\n"; + String result = GradleSourceUtil.insertTask(source, "efgh", Lists. newArrayList("x"), "Copy", "" + + " def variable = 10\n" + + " println variable"); + assertEquals(expected, result); + } + + @Test + public void testCheckForIncludeForgeLibraryAndInsert() + { + String source = "" + + "task abcd << {\n" + + " println 'ABCD!!'\n" + + "}\n"; + String expected = "" + + "apply from: 'forge.gradle'\n" + + "task abcd << {\n" + + " println 'ABCD!!'\n" + + "}\n"; + String result = GradleSourceUtil.checkForIncludeForgeLibraryAndInsert(source); + assertEquals(expected, result); + } + + @Test + public void testCheckForIncludeForgeLibraryAndInsertExisting() + { + String source = "" + + "apply from: 'forge.gradle'\n" + + "task abcd << {\n" + + " println 'ABCD!!'\n" + + "}\n"; + String expected = "" + + "apply from: 'forge.gradle'\n" + + "task abcd << {\n" + + " println 'ABCD!!'\n" + + "}\n"; + String result = GradleSourceUtil.checkForIncludeForgeLibraryAndInsert(source); + assertEquals(expected, result); + } +}