mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-08 16:58:47 +02:00
82 lines
1.7 KiB
ObjectPascal
82 lines
1.7 KiB
ObjectPascal
unit ftplistertest;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, ftplister,
|
|
fpcunit, testregistry;
|
|
|
|
{ TFtpListerTestcase }
|
|
type
|
|
TFtpListerTestcase= class(TTestCase)
|
|
private
|
|
function GetFiles: TStrings;
|
|
property Files : TStrings read GetFiles;
|
|
published
|
|
procedure TestHookUp;
|
|
procedure TestFtpFile;
|
|
procedure TestOldFtpFile;
|
|
end;
|
|
|
|
implementation
|
|
|
|
var
|
|
FileList: TStrings;
|
|
|
|
function TFtpListerTestcase.GetFiles: TStrings;
|
|
var
|
|
FtpLister : TFTPLister;
|
|
begin
|
|
if FileList=nil then begin
|
|
FTPLister := TFTPLister.Create;
|
|
FileList := FTPLister.GetList('ftp.hu.freepascal.org', '/pub/lazarus');
|
|
FTPLister.Free;
|
|
end;
|
|
Result := FileList;
|
|
end;
|
|
|
|
procedure TFtpListerTestcase.TestHookUp;
|
|
begin
|
|
AssertTrue('No files retrieved', Files.Count>0);
|
|
end;
|
|
|
|
procedure TFtpListerTestcase.TestFtpFile;
|
|
var
|
|
FtpFile : TFtpFile;
|
|
const
|
|
FtpLine = '-rw-r--r-- 1 1003 100 43560307 Oct 22 14:34 Lazarus-0.9.19-fpc-2.0.4-20061022-win32.exe';
|
|
begin
|
|
FtpFile := TFtpFile.Create(FtpLine);
|
|
try
|
|
AssertEquals('Wrong file name:', 'Lazarus-0.9.19-fpc-2.0.4-20061022-win32.exe', FtpFile.FileName);
|
|
AssertEquals('Wrong file date', '22-10-2011 14:34:00', DateTimeToStr(FtpFile.FileDate));
|
|
finally
|
|
FtpFile.Free;
|
|
end;
|
|
end;
|
|
|
|
procedure TFtpListerTestcase.TestOldFtpFile;
|
|
var
|
|
FtpFile : TFtpFile;
|
|
const
|
|
FtpLine = '-rw-r--r-- 1 1003 100 52533164 Jul 07 2006 lazarus-arm-wince-20060707.7z';
|
|
begin
|
|
FtpFile := TFtpFile.Create(FtpLine);
|
|
try
|
|
AssertEquals('Wrong file date', '07-07-2006', DateTimeToStr(FtpFile.FileDate));
|
|
finally
|
|
FtpFile.Free;
|
|
end;
|
|
end;
|
|
|
|
initialization
|
|
RegisterTest(TFtpListerTestcase);
|
|
|
|
finalization
|
|
FileList.Free;
|
|
|
|
end.
|
|
|