Index: /trunk/Nebulous/t/Test/Nebulous.pm
===================================================================
--- /trunk/Nebulous/t/Test/Nebulous.pm	(revision 4892)
+++ /trunk/Nebulous/t/Test/Nebulous.pm	(revision 4893)
@@ -1,5 +1,5 @@
 # Copyright (C) 2004  Joshua Hoblitt
 #
-# $Id: Nebulous.pm,v 1.5 2005-08-25 23:42:33 jhoblitt Exp $
+# $Id: Nebulous.pm,v 1.6 2005-08-27 03:39:06 jhoblitt Exp $
 
 package Test::Nebulous;
@@ -10,4 +10,5 @@
 use File::Path qw( mkpath rmtree );
 use File::Temp qw( tempdir );
+use Nebulous::Server::SQL;
 
 my $dsn     = "DBI:mysql:database=test:host=localhost";
@@ -16,4 +17,5 @@
 
 my $dbh = DBI->connect( $dsn, $user, $passwd );
+my $sql = Nebulous::Server::SQL->new;
 
 # suppress uninitalized warnings
@@ -30,14 +32,7 @@
     $dir2 = tempdir( CLEANUP => 0 );
 
-    local $/ = ';';
-
-    my $pos = tell DATA;
-
-    foreach my $statement (<DATA>) {
-        last unless ( $statement =~ /\S+/ );
+    foreach my $statement (@{ $sql->get_db_schema }) {
         $dbh->do( $statement );
     }
-
-    seek DATA, $pos, 0;
 
     # FIXME
@@ -47,9 +42,7 @@
 
 sub cleanup {
-    $dbh->do( "DROP TABLE IF EXISTS storage_object" );
-    $dbh->do( "DROP TABLE IF EXISTS instance" );
-    $dbh->do( "DROP TABLE IF EXISTS lock_record" );
-    $dbh->do( "DROP TABLE IF EXISTS volume" );
-    $dbh->do( "DROP TABLE IF EXISTS class" );
+    foreach my $statement (@{ $sql->get_db_clear }) {
+        $dbh->do( $statement );
+    }
 
     # on the first call to setup the $dir[12] will be ""
@@ -60,66 +53,3 @@
 1;
 
-__DATA__
-DROP TABLE IF EXISTS storage_object;
-CREATE TABLE storage_object (
-    so_id BIGINT NOT NULL AUTO_INCREMENT,
-    ext_id VARCHAR(255) BINARY NOT NULL UNIQUE,
-    class_id TINYINT NOT NULL,
-    comment VARCHAR(255),
-    read_lock TINYINT DEFAULT 0 NOT NULL,
-    write_lock ENUM( 'write' ),
-    epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-    mtime TIMESTAMP,
-    PRIMARY KEY(so_id),
-    KEY(ext_id(64)),
-    KEY(class_id)
-) ENGINE=innodb;
-
-DROP TABLE IF EXISTS instance;
-CREATE TABLE instance (
-    ins_id BIGINT NOT NULL AUTO_INCREMENT,
-    so_id BIGINT NOT NULL,
-    uri VARCHAR(255) BINARY NOT NULL,
-    sha1sum CHAR(40) ASCII,
-    assigned_location BOOL,
-    epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-    mtime TIMESTAMP,
-    PRIMARY KEY(ins_id),
-    KEY(so_id),
-    KEY(uri(64))
-) ENGINE=innodb;
-
-DROP TABLE IF EXISTS lock_record;
-CREATE TABLE lock_record (
-        so_id BIGINT NOT NULL,
-        type ENUM( 'read', 'write' ) NOT NULL,
-        epoch TIMESTAMP,
-        KEY(so_ID)
-    ) ENGINE=innodb;
-
-DROP TABLE IF EXISTS volume;
-CREATE TABLE volume (
-        vol_id INT NOT NULL AUTO_INCREMENT,
-        name VARCHAR(255) UNIQUE BINARY NOT NULL,
-        uri VARCHAR(255) BINARY NOT NULL,
-        key(vol_id)
-    ) ENGINE=innodb;
-
-DROP TABLE IF EXISTS class;
-CREATE TABLE class (
-        class_id TINYINT NOT NULL AUTO_INCREMENT,
-        instance TINYINT NOT NULL,
-        priority TINYINT,
-        comment VARCHAR(255),
-        key(class_id)
-    ) ENGINE=innodb;
-
-DROP TABLE IF EXISTS log;
-CREATE TABLE log (
-    timestamp TIMESTAMP,
-    hostname VARCHAR(255),
-    level VARCHAR(255),
-    sub VARCHAR(255),
-    message VARCHAR(2048) NOT NULL,
-    PRIMARY KEY(timestamp)
-) ENGINE=innodb;
+__END__
