war.as(ZipExporter.class).exportTo(new File("target", war.getName()), true);
@Test public void shouldCreateArchiveWithCorrectExtensionForWebArchive() throws Exception { WebArchive webArchive = ShrinkWrap.create(WebArchive.class); String archiveExtension = webArchive.getName().substring(webArchive.getName().lastIndexOf(".")); Assert.assertEquals("WebArchive should have proper extension", ".war", archiveExtension); }
@Test public void shouldCreateWebArchiveWithGivenName() throws Exception { String archiveName = "testArchive"; WebArchive webArchive = ShrinkWrap.create(WebArchive.class, archiveName); Assert.assertEquals("WebArchive should have given name", archiveName, webArchive.getName()); }
/** * Create standard WAR archive for deployment testing * * @param archiveName Name of archive * @param content Context of page.html file * @return Return created {@link File} instance */ public static File createWarArchive(String archiveName, String content) { WebArchive war = ShrinkWrap.create(WebArchive.class, archiveName); war.addAsWebResource(new StringAsset(content), "page.html"); final String tempDir = TestSuiteEnvironment.getTmpDir(); File file = new File(tempDir, war.getName()); new ZipExporterImpl(war).exportTo(file, true); return file; }
@After public void ls() { System.out.println("test@jboss:/$ ls -l " + archive.getName()); System.out.println(archive.toString(true)); }
@Deployment public static Archive<?> createTestArchive() throws IllegalArgumentException, IOException { WebArchive war = ShrinkWrap .create( WebArchive.class, "ModuleMemberRegistrationEarArchiveWithJbossDeploymentIT.war" ) .addAsWebInfResource( webXml(), "web.xml" ); JavaArchive ejb = ShrinkWrap .create( JavaArchive.class, "ModuleMemberRegistrationEarArchiveWithJbossDeploymentIT.jar" ) .addClasses( ModuleMemberRegistrationEarArchiveWithJbossDeploymentIT.class, Member.class, MemberRegistration.class, Resources.class ) .addAsManifestResource( persistenceXml(), "persistence.xml" ) .addAsManifestResource( EmptyAsset.INSTANCE, "beans.xml" ); String applicationXml = Descriptors.create( ApplicationDescriptor.class ) .createModule() .ejb( ejb.getName() ).up() .createModule() .getOrCreateWeb() .webUri( war.getName() ).up().up() .exportAsString(); EnterpriseArchive ear = ShrinkWrap .create( EnterpriseArchive.class, ModuleMemberRegistrationEarArchiveWithJbossDeploymentIT.class.getSimpleName() + ".ear" ) .addAsModules( ejb ) .addAsModule( war ) .addAsResource( "jboss-deployment-structure-hcann.xml", "/jboss-deployment-structure.xml" ) .setApplicationXML( new StringAsset( applicationXml ) ); return ear; }