test007.phpt 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. --TEST--
  2. dirname test
  3. --FILE--
  4. <?php
  5. // Allow for either Win32 or Unix.
  6. $s = dirname("/foo");
  7. // $s should be either / (Unix) or \ (Win32)
  8. function check_dirname($path) {
  9. global $s;
  10. $path1 = str_replace("%",$s,$path);
  11. $path2 = dirname($path1);
  12. $path3 = str_replace($s,"%",$path2);
  13. print "dirname($path) == $path3\n";
  14. }
  15. check_dirname("%foo%");
  16. check_dirname("%foo");
  17. check_dirname("%foo%bar");
  18. check_dirname("%");
  19. check_dirname("...%foo");
  20. check_dirname(".%foo");
  21. check_dirname("foobar%%%");
  22. check_dirname("%\0%\0%\0.%\0.");
  23. function same($a,$b) {
  24. if ($a == $b) {
  25. print "OK\n";
  26. } else {
  27. print "FAIL $a == $b\n";
  28. }
  29. }
  30. if ('/' == $s) {
  31. same(".",dirname("d:\\foo\\bar.inc"));
  32. same(".",dirname("c:\\foo"));
  33. same(".",dirname("c:\\"));
  34. same(".",dirname("c:"));
  35. } else {
  36. same("d:\\foo",dirname("d:\\foo\\bar.inc"));
  37. same("c:\\",dirname("c:\\foo"));
  38. same("c:\\",dirname("c:\\"));
  39. same("c:",dirname("c:"));
  40. }
  41. ?>
  42. --EXPECT--
  43. dirname(%foo%) == %
  44. dirname(%foo) == %
  45. dirname(%foo%bar) == %foo
  46. dirname(%) == %
  47. dirname(...%foo) == ...
  48. dirname(.%foo) == .
  49. dirname(foobar%%%) == .
  50. dirname(%�%�%�.%�.) == %�%�%�.
  51. OK
  52. OK
  53. OK
  54. OK