Add mute support to perl lib
   
    
             n = snprintf(buf, 21, "%llu", mark);
         XPUSHs(sv_2mortal(newSVpv(buf, n)));
 
+int _set_mute(struct blerg *ptr, int v)
+    CODE:
+        RETVAL = blerg_set_mute(ptr, v);
+    OUTPUT:
+        RETVAL
+
+int _get_mute(struct blerg *ptr)
+    CODE:
+        RETVAL = blerg_get_mute(ptr);
+    OUTPUT:
+        RETVAL
+
 void _tag_list(const char *tag, const char *str_offset, int direction)
     INIT:
         HV * tmp;
    
   
    
     use strict;
 use warnings;
 
-use Test::More tests => 18;
+use Test::More tests => 25;
 BEGIN { use_ok('Blerg::Database') };
 
 #########################
     chdir '../../..';
 remove_tree "data/$test_user";
 remove_tree "hash_tags/data";
+my ($ptr, @list, $n);
+$n = 0;
 
 ### C interfaces
 # Open a database
-my $ptr = Blerg::Database::_open($test_user);
+$ptr = Blerg::Database::_open($test_user);
 ok( ref $ptr eq 'struct blergPtr' );
 
 # Store
 my $data = "Hello!";
 my $t0 = time;
-ok( Blerg::Database::_store($ptr, $data) >= 0 );
+ok( Blerg::Database::_store($ptr, $data) == $n );
 
 # Check internal database
 open DATA, "data/$test_user/data0";
     ok( $check_data eq $data );
 
 # Fetch
-ok( Blerg::Database::_fetch($ptr, 0) eq $data );
-ok( not defined Blerg::Database::_fetch($ptr, 1) );
+ok( Blerg::Database::_fetch($ptr, $n) eq $data );
+ok( not defined Blerg::Database::_fetch($ptr, $n + 1) );
 
 # Get time
-my $t = Blerg::Database::_get_timestamp($ptr, 0);
+my $t = Blerg::Database::_get_timestamp($ptr, $n);
 ok( $t0 - $t <= 1.0 );
 
-# Count
-my $count = Blerg::Database::_get_record_count($ptr);
-ok( $count == 1 );
-
 # Will have to test subscription bits after the Subscription module is
 # made
 
     Blerg::Database::_store($ptr, "This is data A #data");
 Blerg::Database::_store($ptr, "This is data B #data");
 Blerg::Database::_store($ptr, "This is data C #data");
+$n += 3;
 
-my @list = Blerg::Database::_tag_list('#data', 0, 1);
+@list = Blerg::Database::_tag_list('#data', 0, 1);
 ok( @list == 3 );
 ok( $list[0]->{author} eq $test_user );
-ok( $list[0]->{record} == 3 );
+ok( $list[0]->{record} == $n );
+
+# Test mute
+ok( Blerg::Database::_set_mute($ptr, 1) );
+ok( Blerg::Database::_get_mute($ptr) == 1 );
+Blerg::Database::_store($ptr, "Testing more #data");
+@list = Blerg::Database::_tag_list('#data', 0, 1);
+ok( @list == 3 );
+ok( Blerg::Database::_set_mute($ptr, 0) );
+ok( Blerg::Database::_get_mute($ptr) == 0 );
+Blerg::Database::_store($ptr, "Testing more #data");
+@list = Blerg::Database::_tag_list('#data', 0, 1);
+ok( @list == 4 );
+$n += 2;
+
+# Count
+my $count = Blerg::Database::_get_record_count($ptr);
+ok( $count == $n + 1 );
 
 # Close database
 ok( Blerg::Database::_close($ptr) );
     # Test existence
 ok( Blerg::Database::exists($test_user) );
 
+
 # Perl OO interface
 my $blerg = Blerg::Database->open_existing('nonexistent');
 ok( not defined $blerg );
 $blerg = Blerg::Database->open($test_user);
 ok( defined $blerg );
+ok( ref $blerg->{ptr} eq 'struct blergPtr');
 ok( $blerg->fetch(0) eq $data );
-ok( $blerg->store($data) == 4 );
-ok( $blerg->fetch(4) eq $data );
+ok( $blerg->store($data) == $n + 1 );
+$n++;
+ok( $blerg->fetch($n) eq $data );