Index: trunk/Nebulous/t/04_server_replicate_object.t
===================================================================
--- trunk/Nebulous/t/04_server_replicate_object.t	(revision 13131)
+++ trunk/Nebulous/t/04_server_replicate_object.t	(revision 13173)
@@ -3,10 +3,10 @@
 # Copryight (C) 2004-2005  Joshua Hoblitt
 #
-# $Id: 04_server_replicate_object.t,v 1.7 2007-04-23 20:42:29 jhoblitt Exp $
+# $Id: 04_server_replicate_object.t,v 1.8 2007-05-03 01:44:24 jhoblitt Exp $
 
 use strict;
 use warnings FATAL => qw( all );
 
-use Test::More tests => 11;
+use Test::More tests => 12;
 
 use lib qw( ./t ./lib );
@@ -72,7 +72,15 @@
 
 eval {
-    $neb->replicate_object("foo");
+    $neb->replicate_object('foo');
 };
-like($@, qr/storage object does not exist/, "storage object does not exist");
+like($@, qr/is valid object key/, 'storage object does not exist');
+
+Test::Nebulous->setup;
+
+eval {
+    $neb->create_object('foo');
+    $neb->replicate_object('foo', 'bar');
+};
+like($@, qr/is valid volume name/, 'storage volume does not exist');
 
 Test::Nebulous->setup;
@@ -81,12 +89,13 @@
     $neb->replicate_object();
 };
-like($@, qr/1 - 2 were expected/, "no params");
+like($@, qr/1 - 2 were expected/, 'no params');
 
 Test::Nebulous->setup;
 
 eval {
-    $neb->replicate_object(1, 2, 3);
+    $neb->create_object('foo');
+    $neb->replicate_object('foo', 'node01', 3);
 };
-like($@, qr/1 - 2 were expected/, "too many params");
+like($@, qr/1 - 2 were expected/, 'too many params');
 
 Test::Nebulous->cleanup;
Index: trunk/Nebulous/t/07_server_find_instances.t
===================================================================
--- trunk/Nebulous/t/07_server_find_instances.t	(revision 13131)
+++ trunk/Nebulous/t/07_server_find_instances.t	(revision 13173)
@@ -3,10 +3,10 @@
 # Copryight (C) 2004-2005  Joshua Hoblitt
 #
-# $Id: 07_server_find_instances.t,v 1.7 2007-03-28 21:48:24 jhoblitt Exp $
+# $Id: 07_server_find_instances.t,v 1.8 2007-05-03 01:44:24 jhoblitt Exp $
 
 use strict;
 use warnings FATAL => qw( all );
 
-use Test::More tests => 13;
+use Test::More tests => 15;
 
 use lib qw( ./t ./lib );
@@ -53,7 +53,7 @@
 {
     # key, volume
-    my $uri = $neb->create_object("foo");
+    my $uri = $neb->create_object('foo', 'node01');
 
-    my $locations = $neb->find_instances("foo", "node01");
+    my $locations = $neb->find_instances('foo', 'node01');
 
     uri_scheme_ok($locations->[0], 'file');
@@ -75,11 +75,30 @@
 }
 
+# object exists but instance is on a different volume
+Test::Nebulous->setup;
+
+eval {
+    # key, volume
+    my $uri = $neb->create_object('foo', 'node01');
+
+    my $locations = $neb->find_instances('foo', 'node02');
+};
+like($@, qr/no instances on storage volume/, 'instances on a different volume');
+
 
 Test::Nebulous->setup;
 
 eval {
-    $neb->find_instances("foo");
+    $neb->find_instances('foo');
 };
-like($@, qr/no instances found/, "storage object does not exist");
+like($@, qr/is valid object key/, "storage object does not exist");
+
+Test::Nebulous->setup;
+
+eval {
+    $neb->create_object('foo');
+    $neb->find_instances('foo', 'bar');
+};
+like($@, qr/is valid volume name/, "storage volume does not exist");
 
 Test::Nebulous->setup;
@@ -93,5 +112,6 @@
 
 eval {
-    $neb->find_instances("foo", 'read', 3);
+    $neb->create_object('foo');
+    $neb->find_instances('foo', 'node01', 3);
 };
 like($@, qr/1 - 2 were expected/, "too many params");
Index: trunk/Nebulous/t/08_server_delete_instance.t
===================================================================
--- trunk/Nebulous/t/08_server_delete_instance.t	(revision 13131)
+++ trunk/Nebulous/t/08_server_delete_instance.t	(revision 13173)
@@ -3,5 +3,5 @@
 # Copryight (C) 2004-2005  Joshua Hoblitt
 #
-# $Id: 08_server_delete_instance.t,v 1.7 2007-03-28 21:50:26 jhoblitt Exp $
+# $Id: 08_server_delete_instance.t,v 1.8 2007-05-03 01:44:24 jhoblitt Exp $
 
 use strict;
@@ -47,5 +47,5 @@
         $neb->find_instances("foo");
     };
-    like($@, qr/no instances found/, "storage object was deleted");
+    like($@, qr/is valid object key/, "storage object was deleted");
 }
 
Index: trunk/Nebulous/t/11_server_is_valid_object_key.t
===================================================================
--- trunk/Nebulous/t/11_server_is_valid_object_key.t	(revision 13173)
+++ trunk/Nebulous/t/11_server_is_valid_object_key.t	(revision 13173)
@@ -0,0 +1,38 @@
+#!/usr/bin/perl
+
+# Copryight (C) 2004-2005  Joshua Hoblitt
+#
+# $Id: 11_server_is_valid_object_key.t,v 1.1 2007-05-03 01:44:24 jhoblitt Exp $
+
+use strict;
+use warnings FATAL => qw( all );
+
+use Test::More tests => 2;
+
+use lib qw( ./t ./lib );
+
+use Nebulous::Server;
+use Nebulous::Util qw( :standard );
+use Test::Nebulous;
+
+my $neb = Nebulous::Server->new(
+    dsn         => "DBI:mysql:database=test:host=localhost",
+    dbuser      => "test",
+    dbpasswd    => "",
+);
+
+Test::Nebulous->setup;
+
+{
+    $neb->create_object('foo');
+
+    ok($neb->_is_valid_object_key('foo'), "valid object key");
+}
+
+Test::Nebulous->setup;
+
+{
+    ok(!$neb->_is_valid_object_key('foo'), "invalid object key");
+}
+
+Test::Nebulous->cleanup;
Index: trunk/Nebulous/t/53_client_cull.t
===================================================================
--- trunk/Nebulous/t/53_client_cull.t	(revision 13131)
+++ trunk/Nebulous/t/53_client_cull.t	(revision 13173)
@@ -3,5 +3,5 @@
 # Copryight (C) 2004-2005  Joshua Hoblitt
 #
-# $Id: 53_client_cull.t,v 1.2 2007-04-27 21:36:20 jhoblitt Exp $
+# $Id: 53_client_cull.t,v 1.3 2007-05-03 01:44:24 jhoblitt Exp $
 
 use strict;
@@ -14,5 +14,5 @@
 use lib qw( ./t ./lib );
 
-use Nebulous::Client;
+use Nebulous::Client trace => 'debug';
 use Nebulous::Util qw( :standard );
 use Test::Nebulous;
@@ -96,4 +96,5 @@
 }
 
+die;
 Test::Nebulous->setup;
 
