/plugin-module-codegen-engine/src/test/java/com/atlassian/plugins/codegen/ProjectHelper.java

https://bitbucket.org/mmeinhold/amps · Java · 61 lines · 52 code · 9 blank · 0 comment · 0 complexity · d6cf40de22d5b76dc6f0c04a315791cb MD5 · raw file

  1. package com.atlassian.plugins.codegen;
  2. import java.io.File;
  3. import java.io.InputStream;
  4. import java.io.OutputStream;
  5. import java.util.UUID;
  6. import com.atlassian.plugins.codegen.modules.PluginModuleLocation;
  7. import org.apache.commons.io.FileUtils;
  8. import org.apache.commons.io.IOUtils;
  9. import static org.apache.commons.io.FileUtils.deleteDirectory;
  10. public class ProjectHelper
  11. {
  12. public static final String GROUP_ID = "myGroupId";
  13. public static final String ARTIFACT_ID = "myArtifactId";
  14. public static final String PLUGIN_KEY = "myGroupId.myArtifactId";
  15. public PluginModuleLocation location;
  16. public File pluginXml;
  17. public File tempDir;
  18. public File srcDir;
  19. public File testDir;
  20. public File resourcesDir;
  21. public ProjectHelper() throws Exception
  22. {
  23. final File buildRoot = new File("target");
  24. String dirName = UUID.randomUUID().toString();
  25. tempDir = new File(buildRoot, dirName);
  26. srcDir = new File(tempDir, "src");
  27. testDir = new File(tempDir, "test");
  28. resourcesDir = new File(tempDir, "resources");
  29. pluginXml = new File(resourcesDir, "atlassian-plugin.xml");
  30. tempDir.mkdirs();
  31. srcDir.mkdirs();
  32. testDir.mkdirs();
  33. resourcesDir.mkdirs();
  34. location = new PluginModuleLocation.Builder(srcDir)
  35. .testDirectory(testDir)
  36. .resourcesDirectory(resourcesDir)
  37. .groupAndArtifactId(GROUP_ID, ARTIFACT_ID)
  38. .build();
  39. }
  40. public void usePluginXml(String path) throws Exception
  41. {
  42. InputStream is = this.getClass().getClassLoader().getResourceAsStream(path);
  43. OutputStream os = FileUtils.openOutputStream(pluginXml);
  44. IOUtils.copy(is, os);
  45. is.close();
  46. os.close();
  47. }
  48. public void destroy() throws Exception
  49. {
  50. deleteDirectory(tempDir);
  51. }
  52. }