X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Ft%2Fapi%2Ftickets.t;fp=rt%2Ft%2Fapi%2Ftickets.t;h=50d08f756be2c47d76ee8ea89d2686d5c9e5ba75;hb=33beebf4cb42eba3e1dd868ad5e0af102de961da;hp=9148a8899cc0ecc25437691cd5c41ae13f3ed9bb;hpb=7ac86daf67b0a95153b736d5811f9050363f6553;p=freeside.git diff --git a/rt/t/api/tickets.t b/rt/t/api/tickets.t index 9148a8899..50d08f756 100644 --- a/rt/t/api/tickets.t +++ b/rt/t/api/tickets.t @@ -2,13 +2,13 @@ use strict; use warnings; use RT; -use RT::Test tests => 16; +use RT::Test tests => 18; { ok (require RT::Tickets); -ok( my $testtickets = RT::Tickets->new( $RT::SystemUser ) ); +ok( my $testtickets = RT::Tickets->new( RT->SystemUser ) ); ok( $testtickets->LimitStatus( VALUE => 'deleted' ) ); # Should be zero until 'allow_deleted_search' is( $testtickets->Count , 0 ); @@ -22,45 +22,45 @@ is( $testtickets->Count , 0 ); # by requestor name. my ($id,$msg); -my $u1 = RT::User->new($RT::SystemUser); +my $u1 = RT::User->new(RT->SystemUser); ($id, $msg) = $u1->Create( Name => 'RequestorTestOne', EmailAddress => 'rqtest1@example.com'); ok ($id,$msg); -my $u2 = RT::User->new($RT::SystemUser); +my $u2 = RT::User->new(RT->SystemUser); ($id, $msg) = $u2->Create( Name => 'RequestorTestTwo', EmailAddress => 'rqtest2@example.com'); ok ($id,$msg); -my $t1 = RT::Ticket->new($RT::SystemUser); +my $t1 = RT::Ticket->new(RT->SystemUser); my ($trans); ($id,$trans,$msg) =$t1->Create (Queue => 'general', Subject => 'Requestor test one', Requestor => [$u1->EmailAddress]); ok ($id, $msg); -my $t2 = RT::Ticket->new($RT::SystemUser); +my $t2 = RT::Ticket->new(RT->SystemUser); ($id,$trans,$msg) =$t2->Create (Queue => 'general', Subject => 'Requestor test one', Requestor => [$u2->EmailAddress]); ok ($id, $msg); -my $t3 = RT::Ticket->new($RT::SystemUser); +my $t3 = RT::Ticket->new(RT->SystemUser); ($id,$trans,$msg) =$t3->Create (Queue => 'general', Subject => 'Requestor test one', Requestor => [$u2->EmailAddress, $u1->EmailAddress]); ok ($id, $msg); -my $tix1 = RT::Tickets->new($RT::SystemUser); +my $tix1 = RT::Tickets->new(RT->SystemUser); $tix1->FromSQL('Requestor.EmailAddress LIKE "rqtest1" OR Requestor.EmailAddress LIKE "rqtest2"'); is ($tix1->Count, 3); -my $tix2 = RT::Tickets->new($RT::SystemUser); +my $tix2 = RT::Tickets->new(RT->SystemUser); $tix2->FromSQL('Requestor.Name LIKE "TestOne" OR Requestor.Name LIKE "TestTwo"'); is ($tix2->Count, 3); -my $tix3 = RT::Tickets->new($RT::SystemUser); +my $tix3 = RT::Tickets->new(RT->SystemUser); $tix3->FromSQL('Requestor.EmailAddress LIKE "rqtest1"'); is ($tix3->Count, 2); -my $tix4 = RT::Tickets->new($RT::SystemUser); +my $tix4 = RT::Tickets->new(RT->SystemUser); $tix4->FromSQL('Requestor.Name LIKE "TestOne" '); is ($tix4->Count, 2); @@ -69,12 +69,12 @@ is ($tix4->Count, 2); # There's no way to differentiate "one requestor name that matches foo and bar" # and "two requestors, one matching foo and one matching bar" -# my $tix5 = RT::Tickets->new($RT::SystemUser); +# my $tix5 = RT::Tickets->new(RT->SystemUser); # $tix5->FromSQL('Requestor.Name LIKE "TestOne" AND Requestor.Name LIKE "TestTwo"'); # # is ($tix5->Count, 1); # -# my $tix6 = RT::Tickets->new($RT::SystemUser); +# my $tix6 = RT::Tickets->new(RT->SystemUser); # $tix6->FromSQL('Requestor.EmailAddress LIKE "rqtest1" AND Requestor.EmailAddress LIKE "rqtest2"'); # # is ($tix6->Count, 1); @@ -85,7 +85,7 @@ is ($tix4->Count, 2); { -my $t1 = RT::Ticket->new($RT::SystemUser); +my $t1 = RT::Ticket->new(RT->SystemUser); $t1->Create(Queue => 'general', Subject => "LimitWatchers test", Requestors => \['requestor1@example.com']); @@ -94,11 +94,23 @@ $t1->Create(Queue => 'general', Subject => "LimitWatchers test", Requestors => \ { # We assume that we've got some tickets hanging around from before. -ok( my $unlimittickets = RT::Tickets->new( $RT::SystemUser ) ); +ok( my $unlimittickets = RT::Tickets->new( RT->SystemUser ) ); ok( $unlimittickets->UnLimit ); ok( $unlimittickets->Count > 0, "UnLimited tickets object should return tickets" ); } -1; + +{ + my $tickets = RT::Tickets->new( RT->SystemUser ); + $tickets->Limit( FIELD => 'id', OPERATOR => '>', VALUE => 0 ); + my $count = $tickets->Count(); + ok $count > 1, "found more than one ticket"; + undef $count; + + $tickets->Limit( FIELD => 'id', OPERATOR => '=', VALUE => 1, ENTRYAGGREGATOR => 'none' ); + $count = $tickets->Count(); + ok $count == 1, "found one ticket"; +} +