1*876b9d75SXin LiMockFtpServer version ${project.version} 2*876b9d75SXin Li------------------------------------------------------------------------------- 3*876b9d75SXin Li${project.url} 4*876b9d75SXin Li 5*876b9d75SXin LiThe MockFtpServer project provides mock/dummy FTP server implementations for testing FTP client 6*876b9d75SXin Licode. Two FTP Server implementations are provided, each at a different level of abstraction. 7*876b9d75SXin Li 8*876b9d75SXin LiFakeFtpServer provides a higher-level abstraction. You define a virtual file system, including 9*876b9d75SXin Lidirectories and files, as well as a set of valid user accounts and credentials. The FakeFtpServer 10*876b9d75SXin Lithen responds with appropriate replies and reply codes based on that configuration. 11*876b9d75SXin Li 12*876b9d75SXin LiStubFtpServer, on the other hand, is a lower-level "stub" implementation. You configure the 13*876b9d75SXin Liindividual FTP server commands to return custom data or reply codes, allowing simulation of 14*876b9d75SXin Lieither success or failure scenarios. You can also verify expected command invocations. 15*876b9d75SXin Li 16*876b9d75SXin LiMockFtpServer is written in Java, and is ideally suited to testing Java code. But because 17*876b9d75SXin Licommunication with the FTP server is across sockets and TCP/IP, it can be used to test FTP client 18*876b9d75SXin Licode written in any language. 19*876b9d75SXin Li 20*876b9d75SXin LiSee the online documentation for more information. 21*876b9d75SXin Li 22*876b9d75SXin LiSee the FTP Protocol Spec (http://www.ietf.org/rfc/rfc0959.txt) for information about 23*876b9d75SXin LiFTP, commands, reply codes, etc.. 24*876b9d75SXin Li 25*876b9d75SXin LiDEPENDENCIES 26*876b9d75SXin Li 27*876b9d75SXin LiMockFtpServer requires 28*876b9d75SXin Li - Java (JDK) version 1.4 or later 29