package org.codehaus.mojo.fileutils;
import org.apache.maven.plugin.testing.AbstractMojoTestCase;
import org.codehaus.plexus.util.FileUtils;
import java.io.File;
/**
* @author John Tolentino <jtolentino@gmail.com>
*/
public class FileUtilsMojoDeleteTest
extends AbstractMojoTestCase
{
FileUtilsMojo mojo;
private static File deleteFilePom =
new File( getBasedir(), "target/test-classes/unit/basic-test/deletefile-config.xml" );
private static File deleteDirPom =
new File( getBasedir(), "target/test-classes/unit/basic-test/deletedir-config.xml" );
protected void setUp()
throws Exception
{
super.setUp();
}
/**
* tests the delete file script
*
* @throws Exception
*/
public void testDeleteFiles()
throws Exception
{
mojo = (FileUtilsMojo) lookupMojo( "fileutils", FileUtilsMojoDeleteTest.deleteFilePom );
assertNotNull( mojo );
assertTrue( "can't find target/test-classes/unit/basic-test/test-files/sample1.txt",
checkExists( "target/test-classes/unit/basic-test/test-files/sample1.txt" ) );
assertTrue( "can't find target/test-classes/unit/basic-test/test-files/sample2.txt",
checkExists( "target/test-classes/unit/basic-test/test-files/sample2.txt" ) );
FileUtils.copyDirectory( new File( getBasedir(), "target/test-classes/unit/basic-test/test-files" ),
new File( getBasedir(), "target/test" ) );
assertTrue( "can't find target/test/sample1.txt", checkExists( "target/test/sample1.txt" ) );
assertTrue( "can't find target/test/sample2.txt", checkExists( "target/test/sample2.txt" ) );
mojo.execute();
assertFalse( "can't delete target/test/sample1.txt", checkExists( "target/test/sample1.txt" ) );
assertFalse( "can't delete target/test/sample2.txt", checkExists( "target/test/sample2.txt" ) );
}
/**
* tests the delete directory script
*
* @throws Exception
*/
public void testDeleteDirectoryFiles()
throws Exception
{
mojo = (FileUtilsMojo) lookupMojo( "fileutils", FileUtilsMojoDeleteTest.deleteDirPom );
assertNotNull( mojo );
assertTrue( "can't find target/test-classes/unit/basic-test/test-files/sample1.txt",
checkExists( "target/test-classes/unit/basic-test/test-files/sample1.txt" ) );
assertTrue( "can't find target/test-classes/unit/basic-test/test-files/sample2.txt",
checkExists( "target/test-classes/unit/basic-test/test-files/sample2.txt" ) );
FileUtils.copyDirectory( new File( getBasedir(), "target/test-classes/unit/basic-test/test-files" ),
new File( getBasedir(), "target/test" ) );
assertTrue( "can't find target/test/sample1.txt", checkExists( "target/test/sample1.txt" ) );
assertTrue( "can't find target/test/sample2.txt", checkExists( "target/test/sample2.txt" ) );
mojo.execute();
assertFalse( "can't delete target/test", checkExists( "target/test" ) );
}
private boolean checkExists( String target )
{
return ( new File( getBasedir(), target ).exists() );
}
}