[Rt-commit] r6918 -
rt/branches/3.7-EXPERIMENTAL-RTIR-2.2/lib/t/regression/shredder
ruz at bestpractical.com
ruz at bestpractical.com
Fri Feb 2 23:14:39 EST 2007
Author: ruz
Date: Fri Feb 2 23:14:39 2007
New Revision: 6918
Modified:
rt/branches/3.7-EXPERIMENTAL-RTIR-2.2/lib/t/regression/shredder/02queue.t
Log:
* add tests for queues' shredding
Modified: rt/branches/3.7-EXPERIMENTAL-RTIR-2.2/lib/t/regression/shredder/02queue.t
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL-RTIR-2.2/lib/t/regression/shredder/02queue.t (original)
+++ rt/branches/3.7-EXPERIMENTAL-RTIR-2.2/lib/t/regression/shredder/02queue.t Fri Feb 2 23:14:39 2007
@@ -8,7 +8,7 @@
BEGIN { require "lib/t/regression/shredder/utils.pl"; }
init_db();
-plan tests => 8;
+plan tests => 16;
diag 'simple queue' if $ENV{'TEST_VERBOSE'};
{
@@ -67,6 +67,58 @@
cmp_deeply( dump_current_and_savepoint('clean'), "current DB equal to savepoint");
}
+diag 'queue with a right granted' if $ENV{'TEST_VERBOSE'};
+{
+ create_savepoint('clean');
+ my $queue = RT::Queue->new( $RT::SystemUser );
+ my ($id, $msg) = $queue->Create( Name => 'my queue' );
+ ok($id, 'created queue') or diag "error: $msg";
+
+ my $group = RT::Group->new( $RT::SystemUser );
+ $group->LoadSystemInternalGroup('Everyone');
+ ok($group->id, 'loaded group');
+
+ ($id, $msg) = $group->PrincipalObj->GrantRight(
+ Right => 'CreateTicket',
+ Object => $queue,
+ );
+ ok($id, 'granted right') or diag "error: $msg";
+
+ my $shredder = shredder_new();
+ $shredder->PutObjects( Objects => $queue );
+ $shredder->WipeoutAll;
+ cmp_deeply( dump_current_and_savepoint('clean'), "current DB equal to savepoint");
+}
+
+diag 'queue with a watcher' if $ENV{'TEST_VERBOSE'};
+{
+# XXX, FIXME: if uncomment these lines then we'll get 'Bizarre...'
+# create_savepoint('clean');
+ my $group = RT::Group->new( $RT::SystemUser );
+ my ($id, $msg) = $group->CreateUserDefinedGroup('my group');
+ ok($id, 'created group') or diag "error: $msg";
+
+ create_savepoint('bqcreate');
+ my $queue = RT::Queue->new( $RT::SystemUser );
+ ($id, $msg) = $queue->Create( Name => 'my queue' );
+ ok($id, 'created queue') or diag "error: $msg";
+
+ ($id, $msg) = $queue->AddWatcher(
+ Type => 'Cc',
+ PrincipalId => $group->id,
+ );
+ ok($id, 'added watcher') or diag "error: $msg";
+
+ my $shredder = shredder_new();
+ $shredder->PutObjects( Objects => $queue );
+ $shredder->WipeoutAll;
+ cmp_deeply( dump_current_and_savepoint('bqcreate'), "current DB equal to savepoint");
+
+# $shredder->PutObjects( Objects => $group );
+# $shredder->WipeoutAll;
+# cmp_deeply( dump_current_and_savepoint('clean'), "current DB equal to savepoint");
+}
+
if( is_all_successful() ) {
cleanup_tmp();
} else {
More information about the Rt-commit
mailing list