@Test public void checkCreateDirectory() { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final String userBasedPath = System.getProperty( "user.dir" ) + "/temp"; final Path path = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userBasedPath, false ); path.toFile().delete(); assertThat( path.toFile().exists() ).isFalse(); fsProvider.createDirectory( path ); assertThat( path.toFile().exists() ).isTrue(); path.toFile().delete(); assertThat( path.toFile().exists() ).isFalse(); }
@Test public void checkCopyDir() { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final String userSourcePath = System.getProperty( "user.dir" ) + "/temp"; final String userDestPath = System.getProperty( "user.dir" ) + "/temp2"; final Path source = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userSourcePath, false ); final Path dest = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userDestPath, false ); fsProvider.createDirectory( source ); fsProvider.copy( source, dest ); assertThat( dest.toFile().exists() ).isTrue(); assertThat( source.toFile().exists() ).isTrue(); source.toFile().delete(); dest.toFile().delete(); }
@Test public void checkCopyFile() throws IOException { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final String userSourcePath = System.getProperty( "user.dir" ) + "/temp.txt"; final String userDestPath = System.getProperty( "user.dir" ) + "/temp2.txt"; final Path source = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userSourcePath, false ); final Path dest = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userDestPath, false ); final OutputStream stream = fsProvider.newOutputStream( source ); stream.write( 'a' ); stream.close(); fsProvider.copy( source, dest ); assertThat( dest.toFile().exists() ).isTrue(); assertThat( source.toFile().exists() ).isTrue(); assertThat( dest.toFile().length() ).isEqualTo( source.toFile().length() ); source.toFile().delete(); dest.toFile().delete(); }
@Test public void checkMoveFile() throws IOException { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final String userSourcePath = System.getProperty( "user.dir" ) + "/temp.txt"; final String userDestPath = System.getProperty( "user.dir" ) + "/temp2.txt"; final Path source = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userSourcePath, false ); final Path dest = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userDestPath, false ); final OutputStream stream = fsProvider.newOutputStream( source ); stream.write( 'a' ); stream.close(); long lenght = source.toFile().length(); fsProvider.move( source, dest ); assertThat( dest.toFile().exists() ).isTrue(); assertThat( source.toFile().exists() ).isFalse(); assertThat( dest.toFile().length() ).isEqualTo( lenght ); dest.toFile().delete(); }
@Test public void checkNewByteChannelToCreateFile() throws IOException { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final String userBasedPath = System.getProperty( "user.dir" ) + "/byte_some_file_here.txt"; final Path path = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userBasedPath, false ); assertThat( path.toFile().exists() ).isFalse(); final SeekableByteChannel channel = fsProvider.newByteChannel( path, null ); assertThat( channel ).isNotNull(); assertThat( path.toFile().exists() ).isTrue(); path.toFile().delete(); assertThat( path.toFile().exists() ).isFalse(); }
@Test public void checkMoveDir() { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final String userSourcePath = System.getProperty( "user.dir" ) + "/temp"; final String userDestPath = System.getProperty( "user.dir" ) + "/temp2"; final Path source = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userSourcePath, false ); final Path dest = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userDestPath, false ); fsProvider.createDirectory( source ); fsProvider.move( source, dest ); assertThat( source.toFile().exists() ).isFalse(); assertThat( dest.toFile().exists() ).isTrue(); dest.toFile().delete(); }
@Test public void checkDelete() throws IOException { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final File tempFile = File.createTempFile( "foo", "bar" ); final Path path = GeneralPathImpl.newFromFile( fsProvider.getFileSystem( URI.create( "file:///" ) ), tempFile ); assertThat( path.toFile().exists() ).isTrue(); fsProvider.delete( path ); assertThat( path.toFile().exists() ).isFalse(); }
@Test(expected = FileAlreadyExistsException.class) public void newByteChannelFileAlreadyExists() throws IOException { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final File tempFile = File.createTempFile( "foo", "bar" ); final Path path = GeneralPathImpl.newFromFile( fsProvider.getFileSystem( URI.create( "file:///" ) ), tempFile ); assertThat( path.toFile().exists() ).isTrue(); assertThat( path.toFile() ).isEqualTo( tempFile ); fsProvider.newByteChannel( path, null ); }
@Test(expected = FileAlreadyExistsException.class) public void checkCreateDirectoryAlreadyExists() { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final String userBasedPath = System.getProperty( "user.dir" ) + "/temp"; final Path path = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userBasedPath, false ); assertThat( path.toFile().exists() ).isFalse(); fsProvider.createDirectory( path ); assertThat( path.toFile().exists() ).isTrue(); fsProvider.createDirectory( path ); }
@Test public void checkDeleteIfExists() throws IOException { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final File tempFile = File.createTempFile( "foo", "bar" ); final Path path = GeneralPathImpl.newFromFile( fsProvider.getFileSystem( URI.create( "file:///" ) ), tempFile ); assertThat( path.toFile().exists() ).isTrue(); assertThat( fsProvider.deleteIfExists( path ) ).isTrue(); assertThat( path.toFile().exists() ).isFalse(); }
@Test(expected = org.kie.commons.java.nio.IOException.class) public void newByteChannelInvalidPath() throws IOException { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final String userBasedPath = System.getProperty( "user.dir" ) + "path/to/some_file_here.txt"; final Path path = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userBasedPath, false ); assertThat( path.toFile().exists() ).isFalse(); fsProvider.newByteChannel( path, null ); }
@Test public void checkDeleteIfExistsNonExistent() throws IOException { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final Path path = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), "/path/to/file.txt", false ); assertThat( path.toFile().exists() ).isFalse(); assertThat( fsProvider.deleteIfExists( path ) ).isFalse(); assertThat( path.toFile().exists() ).isFalse(); }
@Test public void checkDeleteNonEmptyDir() throws IOException { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final String userSourcePath = System.getProperty( "user.dir" ) + "/temp"; final Path dir = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), userSourcePath, false ); FileUtils.deleteDirectory( dir.toFile() ); fsProvider.createDirectory( dir ); File.createTempFile( "foo", "bar", dir.toFile() ); File.createTempFile( "bar", "foo", dir.toFile() ); File.createTempFile( "bar", "foo", dir.toFile() ); fsProvider.createDirectory( dir.resolve( "other_dir" ) ); final DirectoryStream<Path> stream5 = fsProvider.newDirectoryStream( dir, new DirectoryStream.Filter<Path>() { @Override public boolean accept( final Path entry ) throws org.kie.commons.java.nio.IOException { return true; } } ); assertThat( stream5 ).hasSize( 4 ).contains( dir.resolve( "other_dir" ) ); try { fsProvider.delete( dir ); fail( "must throw error" ); } catch ( final DirectoryNotEmptyException expection ) { } fsProvider.delete( dir, NON_EMPTY_DIRECTORIES ); assertThat( dir.toFile().exists() ).isEqualTo( false ); }
@Test(expected = NoSuchFileException.class) public void checkDeleteNonExistent() throws IOException { final SimpleFileSystemProvider fsProvider = new SimpleFileSystemProvider(); final Path path = GeneralPathImpl.create( fsProvider.getFileSystem( URI.create( "file:///" ) ), "/path/to/file.txt", false ); assertThat( path.toFile().exists() ).isFalse(); fsProvider.delete( path ); }
FileUtils.deleteDirectory( dir.toFile() ); fsProvider.createDirectory( dir ); final File tempFile = File.createTempFile( "foo", "bar", dir.toFile() ); final Path path = GeneralPathImpl.newFromFile( fsProvider.getFileSystem( URI.create( "file:///" ) ), tempFile ); final File tempFile2 = File.createTempFile( "bar", "foo", dir.toFile() ); final Path path2 = GeneralPathImpl.newFromFile( fsProvider.getFileSystem( URI.create( "file:///" ) ), tempFile2 ); FileUtils.deleteDirectory( dir.toFile() );
assertThat( fs.getPath( "file.txt" ).toFile() ).isNotNull().exists();