provide basic defaults for admin group creation
authorTony Cook <tony@develop-help.com>
Tue, 11 Sep 2012 07:11:33 +0000 (17:11 +1000)
committerTony Cook <tony@develop-help.com>
Tue, 11 Sep 2012 07:11:33 +0000 (17:11 +1000)
and test it

MANIFEST
site/cgi-bin/modules/BSE/TB/AdminGroup.pm
site/cgi-bin/modules/Squirrel/Row.pm
t/050-local/060-admin-group.t [new file with mode: 0644]

index 13f9dc4..9ff108f 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -861,6 +861,7 @@ t/050-local/020-article.t
 t/050-local/030-tags.t
 t/050-local/040-catalog.t
 t/050-local/050-dyncat.t
+t/050-local/060-admin-group.t
 t/060-generate/010-generate.t
 t/060-generate/020-catalog.t
 t/060-generate/030-thumb.t
index 8d97e55..f561990 100644 (file)
@@ -2,7 +2,7 @@ package BSE::TB::AdminGroup;
 use strict;
 use base qw(BSE::TB::AdminBase);
 
-our $VERSION = "1.000";
+our $VERSION = "1.001";
 
 sub columns {
   return ($_[0]->SUPER::columns,
@@ -13,6 +13,16 @@ sub bases {
   return { base_id=>{ class=>'BSE::TB::AdminBase' } };
 }
 
+sub defaults {
+  return
+    (
+     type => "g",
+     description => "",
+     perm_map => "",
+     template_set => "",
+    );
+}
+
 sub remove {
   my ($self) = @_;
 
index f8a4ca4..65d09ac 100644 (file)
@@ -2,7 +2,7 @@ package Squirrel::Row;
 require 5.005;
 use strict;
 
-our $VERSION = "1.002";
+our $VERSION = "1.003";
 
 use Carp;
 use BSE::DB;
@@ -197,6 +197,8 @@ sub remove {
     $sth->execute(@primary)
       or confess "Cannot delete ", ref $self, ":", $sth->errstr;
   }
+
+  1;
 }
 
 sub set {
diff --git a/t/050-local/060-admin-group.t b/t/050-local/060-admin-group.t
new file mode 100644 (file)
index 0000000..7578c36
--- /dev/null
@@ -0,0 +1,31 @@
+#!perl -w
+use strict;
+use BSE::Test qw();
+use File::Spec;
+use Test::More tests => 3;
+
+BEGIN {
+  unshift @INC, File::Spec->catdir(BSE::Test::base_dir(), "cgi-bin", "modules");
+}
+
+use BSE::API qw(:all);
+
+my $base_cgi = File::Spec->catdir(BSE::Test::base_dir(), "cgi-bin");
+ok(bse_init($base_cgi),   "initialize api")
+  or print "# failed to bse_init in $base_cgi\n";
+
+require BSE::TB::AdminGroups;
+my $name = "060-admin-group test " . time;
+my $group = BSE::TB::AdminGroups->make
+   (
+    name => $name,
+   );
+
+ok($group, "make a group with only a name");
+
+ok($group->remove, "remove the group");
+undef $group;
+
+END {
+  $group->remove if $group;
+}