]> granicus.if.org Git - php/commitdiff
- New test
authorFelipe Pena <felipe@php.net>
Sat, 17 Jan 2009 17:34:45 +0000 (17:34 +0000)
committerFelipe Pena <felipe@php.net>
Sat, 17 Jan 2009 17:34:45 +0000 (17:34 +0000)
ext/dbase/tests/bug46282.phpt [new file with mode: 0644]

diff --git a/ext/dbase/tests/bug46282.phpt b/ext/dbase/tests/bug46282.phpt
new file mode 100644 (file)
index 0000000..194b2b5
--- /dev/null
@@ -0,0 +1,100 @@
+--TEST--
+Bug #46282 (Corrupt DBF When Using DATE)
+--FILE--
+<?php
+
+date_default_timezone_set("UTC");
+
+$def = array(
+       array("date",     "D"),
+       array("name",     "C",  50),
+       array("email",    "C", 128),
+       array("ismember", "L")
+);
+
+$file = dirname(__FILE__) .'/bug46282test.dbf';
+
+// creation
+if (!dbase_create($file, $def)) {
+       echo "Error, can't create the database\n";
+}
+
+// open in read-write mode
+$db = dbase_open('test.dbf', 2);
+
+if ($db) {
+       for ($i = 0; $i < 5; $i++) {
+               dbase_add_record($db, array(
+                       date('Ymd'),
+                       'Name #'. $i,
+                       'Email #'. $i,
+                       'T'));
+               var_dump(dbase_get_record($db, $i+1));
+       }
+}
+dbase_close($db);
+
+@unlink($file);
+
+?>
+--EXPECTF--
+array(5) {
+  [0]=>
+  string(8) "20090117"
+  [1]=>
+  string(50) "Name #0                                           "
+  [2]=>
+  string(128) "Email #0                                                                                                                        "
+  [3]=>
+  int(1)
+  ["deleted"]=>
+  int(0)
+}
+array(5) {
+  [0]=>
+  string(8) "20090117"
+  [1]=>
+  string(50) "Name #1                                           "
+  [2]=>
+  string(128) "Email #1                                                                                                                        "
+  [3]=>
+  int(1)
+  ["deleted"]=>
+  int(0)
+}
+array(5) {
+  [0]=>
+  string(8) "20090117"
+  [1]=>
+  string(50) "Name #2                                           "
+  [2]=>
+  string(128) "Email #2                                                                                                                        "
+  [3]=>
+  int(1)
+  ["deleted"]=>
+  int(0)
+}
+array(5) {
+  [0]=>
+  string(8) "20090117"
+  [1]=>
+  string(50) "Name #3                                           "
+  [2]=>
+  string(128) "Email #3                                                                                                                        "
+  [3]=>
+  int(1)
+  ["deleted"]=>
+  int(0)
+}
+array(5) {
+  [0]=>
+  string(8) "20090117"
+  [1]=>
+  string(50) "Name #4                                           "
+  [2]=>
+  string(128) "Email #4                                                                                                                        "
+  [3]=>
+  int(1)
+  ["deleted"]=>
+  int(0)
+}