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 });
}
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" });
}
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 });
}
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"));
}
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
}
}
Aggregations