X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Ft%2Fshredder%2F02user.t;h=620c2c58757fe16a1f5a64a30d76a9215e02a5a8;hb=603d84b691c7496bb2ec1cddc549fcc7b80e3e38;hp=03abd6c6992214982472db6a047c3bf6d4285635;hpb=63a268637b2d51a8766412617724b9436439deb6;p=freeside.git diff --git a/rt/t/shredder/02user.t b/rt/t/shredder/02user.t index 03abd6c69..620c2c587 100644 --- a/rt/t/shredder/02user.t +++ b/rt/t/shredder/02user.t @@ -1,62 +1,55 @@ -#!/usr/bin/perl -w use strict; use warnings; use Test::Deep; -use File::Spec; -use Test::More tests => 8; -use RT::Test (); -BEGIN { - my $shredder_utils = RT::Test::get_relocatable_file('utils.pl', - File::Spec->curdir()); - require $shredder_utils; -} -init_db(); - +use RT::Test::Shredder tests => 10; +my $test = "RT::Test::Shredder"; -create_savepoint('clean'); +$test->create_savepoint('clean'); -my $queue = RT::Queue->new( $RT::SystemUser ); +my $queue = RT::Queue->new( RT->SystemUser ); my ($qid) = $queue->Load( 'General' ); ok( $qid, "loaded queue" ); -my $ticket = RT::Ticket->new( $RT::SystemUser ); +my $ticket = RT::Ticket->new( RT->SystemUser ); my ($tid) = $ticket->Create( Queue => $qid, Subject => 'test' ); ok( $tid, "ticket created" ); -create_savepoint('bucreate'); # berfore user create -my $user = RT::User->new( $RT::SystemUser ); +$test->create_savepoint('bucreate'); # berfore user create +my $user = RT::User->new( RT->SystemUser ); my ($uid, $msg) = $user->Create( Name => 'new user', Privileged => 1, Disabled => 0 ); ok( $uid, "created new user" ) or diag "error: $msg"; is( $user->id, $uid, "id is correct" ); # HACK: set ticket props to enable VARIABLE dependencies $ticket->__Set( Field => 'LastUpdatedBy', Value => $uid ); -create_savepoint('aucreate'); # after user create +$test->create_savepoint('aucreate'); # after user create { my $resolver = sub { my %args = (@_); - my $t = $args{'TargetObject'}; - my $resolver_uid = $RT::SystemUser->id; + my $t = $args{'TargetObject'}; + my $resolver_uid = RT->SystemUser->id; foreach my $method ( qw(Creator LastUpdatedBy) ) { next unless $t->_Accessible( $method => 'read' ); $t->__Set( Field => $method, Value => $resolver_uid ); } }; - my $shredder = shredder_new(); + my $shredder = $test->shredder_new(); $shredder->PutResolver( BaseClass => 'RT::User', Code => $resolver ); $shredder->Wipeout( Object => $user ); - cmp_deeply( dump_current_and_savepoint('bucreate'), "current DB equal to savepoint"); + $test->db_is_valid; + cmp_deeply( $test->dump_current_and_savepoint('bucreate'), "current DB equal to savepoint"); } { - restore_savepoint('aucreate'); - my $user = RT::User->new( $RT::SystemUser ); + $test->restore_savepoint('aucreate'); + my $user = RT::User->new( RT->SystemUser ); $user->Load($uid); ok($user->id, "loaded user after restore"); - my $shredder = shredder_new(); + my $shredder = $test->shredder_new(); eval { $shredder->Wipeout( Object => $user ) }; ok($@, "wipeout throw exception if no resolvers"); - cmp_deeply( dump_current_and_savepoint('aucreate'), "current DB equal to savepoint"); + $test->db_is_valid; + cmp_deeply( $test->dump_current_and_savepoint('aucreate'), "current DB equal to savepoint"); }