1 /*2 * Copyright 2002-2005 The Apache Software Foundation.3 * 4 * Licensed under the Apache License, Version 2.0 (the "License");5 * you may not use this file except in compliance with the License.6 * You may obtain a copy of the License at7 * 8 * http://www.apache.org/licenses/LICENSE-2.09 * 10 * Unless required by applicable law or agreed to in writing, software11 * distributed under the License is distributed on an "AS IS" BASIS,12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.13 * See the License for the specific language governing permissions and14 * limitations under the License.15 */16 package org.apache.commons.vfs.provider.ftp.test;17 18 import junit.framework.Test;19 import org.apache.commons.vfs.FileObject;20 import org.apache.commons.vfs.FileSystemManager;21 import org.apache.commons.vfs.FileSystemOptions;22 import org.apache.commons.vfs.impl.DefaultFileSystemManager;23 import org.apache.commons.vfs.provider.ftp.FtpFileProvider;24 import org.apache.commons.vfs.provider.ftp.FtpFileSystemConfigBuilder;25 import org.apache.commons.vfs.test.AbstractProviderTestConfig;26 import org.apache.commons.vfs.test.ProviderTestConfig;27 import org.apache.commons.vfs.test.ProviderTestSuite;28 29 /**30 * Tests for FTP file systems.31 *32 * @author <a HREF="mailto:adammurdoch@apache.org">Adam Murdoch</a>33 */34 public class FtpProviderTestCase35 extends AbstractProviderTestConfig36 implements ProviderTestConfig37 {38 /**39 * Creates the test suite for the ftp file system.40 */41 public static Test suite() throws Exception 42 {43 return new ProviderTestSuite(new FtpProviderTestCase());44 }45 46 /**47 * Prepares the file system manager.48 */49 public void prepare(final DefaultFileSystemManager manager) throws Exception 50 {51 manager.addProvider("ftp", new FtpFileProvider());52 }53 54 /**55 * Returns the base folder for tests.56 */57 public FileObject getBaseTestFolder(final FileSystemManager manager) throws Exception 58 {59 final String uri = System.getProperty("test.ftp.uri");60 FileSystemOptions opts = new FileSystemOptions();61 FtpFileSystemConfigBuilder.getInstance().setPassiveMode(opts, true);62 return manager.resolveFile(uri, opts);63 }64 }65