Browse Source

FTP test from Nathaniel McHugh

experimental/first_unicode_implementation
Zoe Slattery 17 years ago
parent
commit
77c8e8ea2d
  1. 50
      ext/ftp/tests/ftp_mdtm_basic.phpt
  2. 21
      ext/ftp/tests/server.inc

50
ext/ftp/tests/ftp_mdtm_basic.phpt

@ -0,0 +1,50 @@
--TEST--
Test the File Modification Time as described in http://tools.ietf.org/html/rfc3659#section-3.1
--XFAIL--
Fails because of missing Unicode implemetation in PHP6
--CREDITS--
Nathaniel McHugh
--SKIPIF--
<?php
require 'skipif.inc';
?>
--FILE--
<?php
require 'server.inc';
$ftp = ftp_connect('127.0.0.1', $port);
if (!$ftp) die("Couldn't connect to the server");
var_dump(ftp_login($ftp, 'user', 'pass'));
date_default_timezone_set('UTC');
$time = ftp_mdtm($ftp, "A");
echo date("F d Y H:i:s u",$time), PHP_EOL;
$time = ftp_mdtm($ftp, "B");
echo date("F d Y H:i:s u",$time), PHP_EOL;
$time = ftp_mdtm($ftp, "C");
echo date("F d Y H:i:s u",$time), PHP_EOL;
$time = ftp_mdtm($ftp, "D");
var_dump($time);
$time = ftp_mdtm($ftp, "19990929043300 File6");
echo date("F d Y H:i:s u",$time), PHP_EOL;
$time = ftp_mdtm($ftp, "MdTm 19990929043300 file6");
var_dump($time);
?>
--EXPECTF--
bool(true)
June 15 1998 10:00:45 000000
June 15 1998 10:00:45 000000
July 05 1998 13:23:16 000000
int(-1)
October 05 1999 21:31:02 000000
int(-1)

21
ext/ftp/tests/server.inc

@ -244,7 +244,26 @@ while($buf = fread($s, 4098)) {
} elseif (preg_match('/^USER /', $buf)) {
user_auth($buf);
} else {
} elseif (preg_match('/^MDTM ([\w\h]+)/', $buf, $matches)) {
switch ($matches [1]){
case "A":
fputs($s, "213 19980615100045.014\r\n");
break;
case "B":
fputs($s, "213 19980615100045.014\r\n");
break;
case "C":
fputs($s, "213 19980705132316\r\n");
break;
case "19990929043300 File6":
fputs($s, "213 19991005213102\r\n");
break;
default :
fputs($s, "550 No file named \"{$matches [1]}\"\r\n");
break;
}
}
else {
fputs($s, "500 Syntax error, command unrecognized.\r\n");
dump_and_exit($buf);
}

Loading…
Cancel
Save