1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.vfs.provider.ftp.test;
18
19 import junit.framework.Test;
20 import org.apache.commons.vfs.FileObject;
21 import org.apache.commons.vfs.FileSystemManager;
22 import org.apache.commons.vfs.FileSystemOptions;
23 import org.apache.commons.vfs.impl.DefaultFileSystemManager;
24 import org.apache.commons.vfs.provider.ftp.FtpFileProvider;
25 import org.apache.commons.vfs.provider.ftp.FtpFileSystemConfigBuilder;
26 import org.apache.commons.vfs.test.AbstractProviderTestConfig;
27 import org.apache.commons.vfs.test.ProviderTestConfig;
28 import org.apache.commons.vfs.test.ProviderTestSuite;
29
30 /***
31 * Tests for FTP file systems.
32 *
33 * @author <a href="mailto:adammurdoch@apache.org">Adam Murdoch</a>
34 */
35 public class FtpProviderTestCase
36 extends AbstractProviderTestConfig
37 implements ProviderTestConfig
38 {
39 /***
40 * Creates the test suite for the ftp file system.
41 */
42 public static Test suite() throws Exception
43 {
44 return new ProviderTestSuite(new FtpProviderTestCase());
45 }
46
47 /***
48 * Prepares the file system manager.
49 */
50 public void prepare(final DefaultFileSystemManager manager) throws Exception
51 {
52 manager.addProvider("ftp", new FtpFileProvider());
53 }
54
55 /***
56 * Returns the base folder for tests.
57 */
58 public FileObject getBaseTestFolder(final FileSystemManager manager) throws Exception
59 {
60 final String uri = System.getProperty("test.ftp.uri");
61 FileSystemOptions opts = new FileSystemOptions();
62 FtpFileSystemConfigBuilder.getInstance().setPassiveMode(opts, true);
63 return manager.resolveFile(uri, opts);
64 }
65 }