]> granicus.if.org Git - php/commitdiff
- MFH: different parser message on windows
authorPierre Joye <pajoye@php.net>
Thu, 21 Aug 2008 13:05:10 +0000 (13:05 +0000)
committerPierre Joye <pajoye@php.net>
Thu, 21 Aug 2008 13:05:10 +0000 (13:05 +0000)
ext/standard/tests/general_functions/parse_ini_file-win32.phpt [new file with mode: 0644]
ext/standard/tests/general_functions/parse_ini_file.phpt

diff --git a/ext/standard/tests/general_functions/parse_ini_file-win32.phpt b/ext/standard/tests/general_functions/parse_ini_file-win32.phpt
new file mode 100644 (file)
index 0000000..cd7d9f8
--- /dev/null
@@ -0,0 +1,204 @@
+--TEST--
+parse_ini_file() multiple calls
+--SKIPIF--
+<?php if( substr(PHP_OS, 0, 3) != 'WIN' ) die("skip non Windows systems have different error message");?>
+--FILE--
+<?php
+
+$filename = dirname(__FILE__)."/parse_ini_file.dat";
+@unlink($filename); /* Make sure the file really does not exist! */
+
+var_dump(parse_ini_file());
+var_dump(parse_ini_file(1,1,1,1));
+var_dump(parse_ini_file($filename));
+var_dump(parse_ini_file($filename, true));
+
+$ini = "
+test =
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename));
+$ini = "
+test==
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename));
+
+$ini = "
+test=test=
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename));
+
+$ini = "
+test= \"new
+line\"
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename));
+
+define("TEST_CONST", "test const value");
+$ini = "
+test=TEST_CONST
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename));
+
+$ini = "
+[section]
+test=hello
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename, true));
+
+$ini = "
+[section]
+test=hello
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename, false));
+
+$ini = "
+section.test=hello
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename, true));
+
+$ini = "
+[section]
+section.test=hello
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename, true));
+
+$ini = "
+[section]
+1=2
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename, true));
+
+$ini = "
+1=2
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename, true));
+$ini = "
+test=test2
+test=test3
+test=test4
+";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename, true));
+
+/* From bug #44574 */
+$ini = "[section1]\nname = value";
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename, true));
+
+/* #44842, labels starting with underscore */
+$ini = <<<'INI'
+foo=bar1
+_foo=bar2
+foo_=bar3
+INI;
+file_put_contents($filename, $ini);
+var_dump(parse_ini_file($filename, true));
+
+@unlink($filename);
+echo "Done\n";
+?>
+--EXPECTF--    
+Warning: parse_ini_file() expects at least 1 parameter, 0 given in %s on line 6
+bool(false)
+
+Warning: parse_ini_file() expects at most 3 parameters, 4 given in %s on line 7
+bool(false)
+
+Warning: parse_ini_file(%sparse_ini_file.dat): failed to open stream: No such file or directory in %s.php on line 8
+array(0) {
+}
+
+Warning: parse_ini_file(%sparse_ini_file.dat): failed to open stream: No such file or directory in %s.php on line 9
+array(0) {
+}
+array(1) {
+  ["test"]=>
+  string(0) ""
+}
+
+Warning: parse error in %s on line %d
+ in %s on line 20
+array(1) {
+  ["test"]=>
+  string(0) ""
+}
+
+Warning: parse error in %s on line %d
+ in %s on line 26
+array(1) {
+  ["test"]=>
+  string(4) "test"
+}
+array(1) {
+  ["test"]=>
+  string(8) "new
+line"
+}
+array(1) {
+  ["test"]=>
+  string(16) "test const value"
+}
+array(1) {
+  ["section"]=>
+  array(1) {
+    ["test"]=>
+    string(5) "hello"
+  }
+}
+array(1) {
+  ["test"]=>
+  string(5) "hello"
+}
+array(1) {
+  ["section.test"]=>
+  string(5) "hello"
+}
+array(1) {
+  ["section"]=>
+  array(1) {
+    ["section.test"]=>
+    string(5) "hello"
+  }
+}
+array(1) {
+  ["section"]=>
+  array(1) {
+    [1]=>
+    string(1) "2"
+  }
+}
+array(1) {
+  [1]=>
+  string(1) "2"
+}
+array(1) {
+  ["test"]=>
+  string(5) "test4"
+}
+array(1) {
+  ["section1"]=>
+  array(1) {
+    ["name"]=>
+    string(5) "value"
+  }
+}
+array(3) {
+  ["foo"]=>
+  string(4) "bar1"
+  ["_foo"]=>
+  string(4) "bar2"
+  ["foo_"]=>
+  string(4) "bar3"
+}
+Done
index e7b9e898c20761554676026e03232f0f074b0a2e..9aa30f9e69bd54eb41892fab09de5faecc5df229 100644 (file)
@@ -1,5 +1,7 @@
 --TEST--
 parse_ini_file() multiple calls
+--SKIPIF--
+<?php if( substr(PHP_OS, 0, 3) == 'WIN' ) die("skip Windows has different error message");?>
 --FILE--
 <?php