]> granicus.if.org Git - php/commitdiff
Add testcase for every single handler
authorMarcus Boerger <helly@php.net>
Fri, 1 Nov 2002 14:23:23 +0000 (14:23 +0000)
committerMarcus Boerger <helly@php.net>
Fri, 1 Nov 2002 14:23:23 +0000 (14:23 +0000)
# db2 fails for me with SIGSEGV

ext/dba/tests/dba_cdb.phpt [new file with mode: 0644]
ext/dba/tests/dba_db2.phpt [new file with mode: 0644]
ext/dba/tests/dba_db3.phpt [new file with mode: 0644]
ext/dba/tests/dba_gdbm.phpt [new file with mode: 0644]
ext/dba/tests/dba_handler.inc [new file with mode: 0644]
ext/dba/tests/dba_ndbm.phpt [new file with mode: 0644]

diff --git a/ext/dba/tests/dba_cdb.phpt b/ext/dba/tests/dba_cdb.phpt
new file mode 100644 (file)
index 0000000..88873e9
--- /dev/null
@@ -0,0 +1,18 @@
+--TEST--
+DBA CDB handler test
+--SKIPIF--
+<?php 
+       require_once('skipif.inc');
+       if (!in_array('cdb', dba_handlers())) die('skip CDB handler not available');
+?>
+--FILE--
+<?php
+       require_once('test.inc');
+       $handler = 'cdb';
+       require_once('dba_handler.inc');
+?>
+--EXPECT--
+database handler: cdb
+3NYNYY
+Content String 2
+Content 2 replaced
diff --git a/ext/dba/tests/dba_db2.phpt b/ext/dba/tests/dba_db2.phpt
new file mode 100644 (file)
index 0000000..cfbdb7e
--- /dev/null
@@ -0,0 +1,18 @@
+--TEST--
+DBA DB2 handler test
+--SKIPIF--
+<?php 
+       require_once('skipif.inc');
+       if (!in_array('db2', dba_handlers())) die('skip DB2 handler not available');
+?>
+--FILE--
+<?php
+       require_once('test.inc');
+       $handler = 'db2';
+       require_once('dba_handler.inc');
+?>
+--EXPECT--
+database handler: db2
+3NYNYY
+Content String 2
+Content 2 replaced
diff --git a/ext/dba/tests/dba_db3.phpt b/ext/dba/tests/dba_db3.phpt
new file mode 100644 (file)
index 0000000..82a08c8
--- /dev/null
@@ -0,0 +1,18 @@
+--TEST--
+DBA DB3 handler test
+--SKIPIF--
+<?php 
+       require_once('skipif.inc');
+       if (!in_array('db3', dba_handlers())) die('skip DB3 handler not available');
+?>
+--FILE--
+<?php
+       require_once('test.inc');
+       $handler = 'db3';
+       require_once('dba_handler.inc');
+?>
+--EXPECT--
+database handler: db3
+3NYNYY
+Content String 2
+Content 2 replaced
diff --git a/ext/dba/tests/dba_gdbm.phpt b/ext/dba/tests/dba_gdbm.phpt
new file mode 100644 (file)
index 0000000..a45c107
--- /dev/null
@@ -0,0 +1,18 @@
+--TEST--
+DBA GDBM handler test
+--SKIPIF--
+<?php 
+       require_once('skipif.inc');
+       if (!in_array('gdbm', dba_handlers())) die('skip GDBM handler not available');
+?>
+--FILE--
+<?php
+       require_once('test.inc');
+       $handler = 'gdbm';
+       require_once('dba_handler.inc');
+?>
+--EXPECT--
+database handler: gdbm
+3NYNYY
+Content String 2
+Content 2 replaced
diff --git a/ext/dba/tests/dba_handler.inc b/ext/dba/tests/dba_handler.inc
new file mode 100644 (file)
index 0000000..393ffef
--- /dev/null
@@ -0,0 +1,29 @@
+<?php
+       echo "database handler: $handler\n";
+       if (($db_file=dba_open($db_file, "n", $handler))!==FALSE) {
+               dba_insert("key1", "Content String 1", $db_file);
+               dba_insert("key2", "Content String 2", $db_file);
+               dba_insert("key3", "Third Content String", $db_file);
+               dba_insert("key4", "Another Content String", $db_file);
+               dba_insert("key5", "The last content string", $db_file);
+               dba_delete("key3", $db_file);
+               dba_delete("key1", $db_file);
+               $a = dba_firstkey($db_file);
+               $i=0;
+               while($a) {
+                       $a = dba_nextkey($db_file);
+                       $i++;
+               }
+               echo $i;
+               for ($i=1; $i<6; $i++) {
+                       echo dba_exists("key$i", $db_file) ? "Y" : "N";
+               }
+               echo "\n";
+               echo dba_fetch("key2", $db_file)."\n";
+               dba_replace("key2", "Content 2 replaced", $db_file);
+               echo dba_fetch("key2", $db_file)."\n";
+               dba_close($db_file);
+       } else {
+               echo "Error creating database\n";
+       }
+?>
\ No newline at end of file
diff --git a/ext/dba/tests/dba_ndbm.phpt b/ext/dba/tests/dba_ndbm.phpt
new file mode 100644 (file)
index 0000000..8fb9404
--- /dev/null
@@ -0,0 +1,18 @@
+--TEST--
+DBA NDBM handler test
+--SKIPIF--
+<?php 
+       require_once('skipif.inc');
+       if (!in_array('ndbm', dba_handlers())) die('skip NDBM handler not available');
+?>
+--FILE--
+<?php
+       require_once('test.inc');
+       $handler = 'ndbm';
+       require_once('dba_handler.inc');
+?>
+--EXPECT--
+database handler: ndbm
+3NYNYY
+Content String 2
+Content 2 replaced