--- /dev/null
+--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
--- /dev/null
+--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
--- /dev/null
+--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
--- /dev/null
+--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
--- /dev/null
+<?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
--- /dev/null
+--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