/* * Copyright (C) 2010. All rights reserved. */ package ro.isdc.wro.maven.plugin; import java.io.File; import java.net.URL; import java.util.Date; import org.apache.commons.io.FileUtils; import org.apache.maven.model.Build; import org.apache.maven.model.Model; import org.apache.maven.plugin.testing.AbstractMojoTestCase; import org.apache.maven.project.MavenProject; import org.mockito.Mockito; /** * Integration test for wro4j mojo. * * @author Alex Objelean */ public class Wro4jRunMojoIT extends AbstractMojoTestCase { private File destinationFolder; private Wro4jMojo mojo; /** * {@inheritDoc} */ @Override protected void setUp() throws Exception { super.setUp(); final File testPom = new File(getBasedir(), "/src/test/resources/unit/1/pom.xml"); mojo = (Wro4jMojo) lookupMojo("run", testPom); mojo.setIgnoreMissingResources(Boolean.FALSE.toString()); mojo.setMinimize(true); mojo.setBuildDirectory(new File(getBasedir())); } /** * @throws Exception */ public void testMojoGoal() throws Exception { destinationFolder = new File("target/wroTemp-" + new Date().getTime()); mojo.setDestinationFolder(destinationFolder); MavenProject mockMavenProject = Mockito.mock(MavenProject.class); Model mockMavenModel = Mockito.mock(Model.class); Build mockBuild = Mockito.mock(Build.class); Mockito.when(mockMavenProject.getModel()).thenReturn(mockMavenModel); Mockito.when(mockMavenModel.getBuild()).thenReturn(mockBuild); Mockito.when(mockBuild.getDirectory()).thenReturn(FileUtils.getTempDirectoryPath()); mojo.setMavenProject(mockMavenProject); final URL url = getClass().getClassLoader().getResource("unit/1/src/main/webapp/WEB-INF/wro.xml"); final File wroFile = new File(url.toURI()); mojo.setWroFile(wroFile); mojo.setContextFolder(wroFile.getParentFile().getParentFile().getPath()); mojo.execute(); assertNotNull(mojo); } /** * {@inheritDoc} */ @Override protected void tearDown() throws Exception { super.tearDown(); FileUtils.deleteDirectory(destinationFolder); } }