Search in sources :

Example 1 with MavenProject4CopyConstructor

use of org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor in project maven-plugins by apache.

the class WarMojoTest method testAttachClassesWithCustomClassifier.

public void testAttachClassesWithCustomClassifier() throws Exception {
    String testId = "AttachClassesCustomClassifier";
    MavenProject4CopyConstructor project = new MavenProject4CopyConstructor();
    String outputDir = getTestDirectory().getAbsolutePath() + "/" + testId + "-output";
    File webAppDirectory = new File(getTestDirectory(), testId);
    WarArtifact4CCStub warArtifact = new WarArtifact4CCStub(getBasedir());
    String warName = "simple";
    File webAppSource = createWebAppSource(testId);
    File classesDir = createClassesDir(testId, false);
    File xmlSource = createXMLConfigDir(testId, new String[] { "web.xml" });
    project.setArtifact(warArtifact);
    this.configureMojo(mojo, new LinkedList<String>(), classesDir, webAppSource, webAppDirectory, project);
    setVariableValueToObject(mojo, "outputDirectory", outputDir);
    setVariableValueToObject(mojo, "warName", warName);
    mojo.setWebXml(new File(xmlSource, "web.xml"));
    mojo.setAttachClasses(true);
    mojo.setClassesClassifier("mystuff");
    mojo.execute();
    // validate jar file
    File expectedJarFile = new File(outputDir, "simple-mystuff.jar");
    assertJarContent(expectedJarFile, new String[] { "META-INF/MANIFEST.MF", "sample-servlet.class" }, new String[] { null, null });
}
Also used : MavenProject4CopyConstructor(org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor) WarArtifact4CCStub(org.apache.maven.plugins.war.stub.WarArtifact4CCStub) JarFile(java.util.jar.JarFile) File(java.io.File)

Example 2 with MavenProject4CopyConstructor

use of org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor in project maven-plugins by apache.

the class WarMojoTest method testSimpleWarPackagingExcludeWithIncludesRegEx.

public void testSimpleWarPackagingExcludeWithIncludesRegEx() throws Exception {
    String testId = "SimpleWarPackagingExcludeWithIncludesRegEx";
    MavenProject4CopyConstructor project = new MavenProject4CopyConstructor();
    String outputDir = getTestDirectory().getAbsolutePath() + "/" + testId + "-output";
    File webAppDirectory = new File(getTestDirectory(), testId);
    WarArtifact4CCStub warArtifact = new WarArtifact4CCStub(getBasedir());
    String warName = "simple";
    File webAppSource = createWebAppSource(testId);
    File classesDir = createClassesDir(testId, true);
    File xmlSource = createXMLConfigDir(testId, new String[] { "web.xml" });
    project.setArtifact(warArtifact);
    this.configureMojo(mojo, new LinkedList<String>(), classesDir, webAppSource, webAppDirectory, project);
    setVariableValueToObject(mojo, "outputDirectory", outputDir);
    setVariableValueToObject(mojo, "warName", warName);
    mojo.setWebXml(new File(xmlSource, "web.xml"));
    setVariableValueToObject(mojo, "packagingIncludes", "%regex[(.(?!exile))+]");
    mojo.execute();
    // validate jar file
    File expectedJarFile = new File(outputDir, "simple.war");
    assertJarContent(expectedJarFile, new String[] { "META-INF/MANIFEST.MF", "WEB-INF/web.xml", "pansit.jsp", "META-INF/maven/org.apache.maven.plugin.test/maven-war-plugin-test/pom.xml", "META-INF/maven/org.apache.maven.plugin.test/maven-war-plugin-test/pom.properties" }, new String[] { null, mojo.getWebXml().toString(), null, null, null }, new String[] { "org/web/app/last-exile.jsp" });
}
Also used : MavenProject4CopyConstructor(org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor) WarArtifact4CCStub(org.apache.maven.plugins.war.stub.WarArtifact4CCStub) JarFile(java.util.jar.JarFile) File(java.io.File)

Example 3 with MavenProject4CopyConstructor

use of org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor in project maven-plugins by apache.

the class WarMojoTest method testPrimaryArtifact.

public void testPrimaryArtifact() throws Exception {
    String testId = "PrimaryArtifact";
    MavenProject4CopyConstructor project = new MavenProject4CopyConstructor();
    String outputDir = getTestDirectory().getAbsolutePath() + "/" + testId + "-output";
    File webAppDirectory = new File(getTestDirectory(), testId);
    WarArtifact4CCStub warArtifact = new WarArtifact4CCStub(getBasedir());
    ProjectHelperStub projectHelper = new ProjectHelperStub();
    String warName = "simple";
    File webAppSource = createWebAppSource(testId);
    File classesDir = createClassesDir(testId, true);
    File xmlSource = createXMLConfigDir(testId, new String[] { "web.xml" });
    warArtifact.setFile(new File("error.war"));
    project.setArtifact(warArtifact);
    this.configureMojo(mojo, new LinkedList<String>(), classesDir, webAppSource, webAppDirectory, project);
    setVariableValueToObject(mojo, "projectHelper", projectHelper);
    setVariableValueToObject(mojo, "outputDirectory", outputDir);
    setVariableValueToObject(mojo, "warName", warName);
    mojo.setWebXml(new File(xmlSource, "web.xml"));
    mojo.execute();
    // validate jar file
    File expectedJarFile = new File(outputDir, "simple.war");
    assertJarContent(expectedJarFile, new String[] { "META-INF/MANIFEST.MF", "WEB-INF/web.xml", "pansit.jsp", "org/web/app/last-exile.jsp", "META-INF/maven/org.apache.maven.plugin.test/maven-war-plugin-test/pom.xml", "META-INF/maven/org.apache.maven.plugin.test/maven-war-plugin-test/pom.properties" }, new String[] { null, mojo.getWebXml().toString(), null, null, null, null });
}
Also used : ProjectHelperStub(org.apache.maven.plugins.war.stub.ProjectHelperStub) MavenProject4CopyConstructor(org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor) WarArtifact4CCStub(org.apache.maven.plugins.war.stub.WarArtifact4CCStub) JarFile(java.util.jar.JarFile) File(java.io.File)

Example 4 with MavenProject4CopyConstructor

use of org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor in project maven-plugins by apache.

the class WarMojoTest method testFailOnMissingWebXmlFalse.

public void testFailOnMissingWebXmlFalse() throws Exception {
    String testId = "SimpleWarMissingWebXmlFalse";
    MavenProject4CopyConstructor project = new MavenProject4CopyConstructor();
    String outputDir = getTestDirectory().getAbsolutePath() + "/" + testId + "-output";
    File webAppDirectory = new File(getTestDirectory(), testId);
    WarArtifact4CCStub warArtifact = new WarArtifact4CCStub(getBasedir());
    String warName = "simple";
    File webAppSource = createWebAppSource(testId);
    File classesDir = createClassesDir(testId, true);
    project.setArtifact(warArtifact);
    this.configureMojo(mojo, new LinkedList<String>(), classesDir, webAppSource, webAppDirectory, project);
    setVariableValueToObject(mojo, "outputDirectory", outputDir);
    setVariableValueToObject(mojo, "warName", warName);
    mojo.setFailOnMissingWebXml(false);
    mojo.execute();
    // validate jar file
    File expectedJarFile = new File(outputDir, "simple.war");
    final Map<String, JarEntry> jarContent = assertJarContent(expectedJarFile, new String[] { "META-INF/MANIFEST.MF", "pansit.jsp", "org/web/app/last-exile.jsp", "META-INF/maven/org.apache.maven.plugin.test/maven-war-plugin-test/pom.xml", "META-INF/maven/org.apache.maven.plugin.test/maven-war-plugin-test/pom.properties" }, new String[] { null, null, null, null, null });
    assertFalse("web.xml should be missing", jarContent.containsKey("WEB-INF/web.xml"));
}
Also used : MavenProject4CopyConstructor(org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor) WarArtifact4CCStub(org.apache.maven.plugins.war.stub.WarArtifact4CCStub) JarEntry(java.util.jar.JarEntry) JarFile(java.util.jar.JarFile) File(java.io.File)

Example 5 with MavenProject4CopyConstructor

use of org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor in project maven-plugins by apache.

the class WarMojoTest method testFailOnMissingWebXmlTrue.

public void testFailOnMissingWebXmlTrue() throws Exception {
    String testId = "SimpleWarMissingWebXmlTrue";
    MavenProject4CopyConstructor project = new MavenProject4CopyConstructor();
    String outputDir = getTestDirectory().getAbsolutePath() + "/" + testId + "-output";
    File webAppDirectory = new File(getTestDirectory(), testId);
    WarArtifact4CCStub warArtifact = new WarArtifact4CCStub(getBasedir());
    String warName = "simple";
    File webAppSource = createWebAppSource(testId);
    File classesDir = createClassesDir(testId, true);
    project.setArtifact(warArtifact);
    this.configureMojo(mojo, new LinkedList<String>(), classesDir, webAppSource, webAppDirectory, project);
    setVariableValueToObject(mojo, "outputDirectory", outputDir);
    setVariableValueToObject(mojo, "warName", warName);
    mojo.setFailOnMissingWebXml(true);
    try {
        mojo.execute();
        fail("Building of the war isn't possible because web.xml is missing");
    } catch (MojoExecutionException e) {
    // expected behaviour
    }
}
Also used : MojoExecutionException(org.apache.maven.plugin.MojoExecutionException) MavenProject4CopyConstructor(org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor) WarArtifact4CCStub(org.apache.maven.plugins.war.stub.WarArtifact4CCStub) JarFile(java.util.jar.JarFile) File(java.io.File)

Aggregations

File (java.io.File)11 JarFile (java.util.jar.JarFile)11 MavenProject4CopyConstructor (org.apache.maven.plugins.war.stub.MavenProject4CopyConstructor)11 WarArtifact4CCStub (org.apache.maven.plugins.war.stub.WarArtifact4CCStub)11 ProjectHelperStub (org.apache.maven.plugins.war.stub.ProjectHelperStub)3 JarEntry (java.util.jar.JarEntry)1 MojoExecutionException (org.apache.maven.plugin.MojoExecutionException)1