X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Flib%2Ft%2Fregression%2F01ticket_link_searching.t;h=a402c7376e5233c1a0b44f372c1537b82d72784c;hp=6d10221c119530b13ed1eee1f7da0c50b4eb2d06;hb=ef20b2b6b1feb47ad02b5ff7525f1a0fd11d0fa4;hpb=d4d0590bef31071e8809ec046717444b95b3f30a diff --git a/rt/lib/t/regression/01ticket_link_searching.t b/rt/lib/t/regression/01ticket_link_searching.t index 6d10221c1..a402c7376 100644 --- a/rt/lib/t/regression/01ticket_link_searching.t +++ b/rt/lib/t/regression/01ticket_link_searching.t @@ -1,6 +1,6 @@ #!/usr/bin/perl -w -use Test::More tests => 25; +use Test::More tests => 30; use strict; use RT; @@ -17,54 +17,46 @@ my $queue = new RT::Queue($CurrentUser); $queue->Load('General') || Abort(loc("Queue could not be loaded.")); my $child_ticket = new RT::Ticket( $CurrentUser ); - -my ( $childid ) = $child_ticket->Create - ( Subject => 'test child', - Queue => $queue->Id); - -ok($childid != 0); +my ($childid) = $child_ticket->Create( + Subject => 'test child', + Queue => $queue->Id, +); +ok($childid, "We created a child ticket"); my $parent_ticket = new RT::Ticket( $CurrentUser ); +my ($parentid) = $parent_ticket->Create( + Subject => 'test parent', + Children => [ $childid ], + Queue => $queue->Id, +); +ok($parentid, "We created a parent ticket"); -my ( $parentid ) = $parent_ticket->Create - ( Subject => 'test parent', - Children => [$childid], - Queue => $queue->Id); - -ok($parentid != 0, "We created a parent ticket"); my $Collection = RT::Tickets->new($CurrentUser); -$Collection->LimitMemberOf ($parentid); - -ok ($Collection->First); -is ($Collection->First->id, $childid, "We found the collection of all children of $parentid with Limit"); +$Collection->LimitMemberOf( $parentid ); is($Collection->Count,1, "We found only one result"); +ok($Collection->First); +is($Collection->First->id, $childid, "We found the collection of all children of $parentid with Limit"); $Collection = RT::Tickets->new($CurrentUser); -$Collection->FromSQL( "MemberOf = $parentid"); -is ($Collection->First->id, $childid, "We found the collection of all children of $parentid with TicketSQL"); -is($Collection->Count,1, "We found only one result"); - - - +$Collection->FromSQL("MemberOf = $parentid"); +is($Collection->Count, 1, "We found only one result"); +ok($Collection->First); +is($Collection->First->id, $childid, "We found the collection of all children of $parentid with TicketSQL"); $Collection = RT::Tickets->new($CurrentUser); $Collection->LimitHasMember ($childid); - -ok ($Collection->First); -is ($Collection->First->id, $parentid, "We found the collection of all parents of $childid with Limit"); is($Collection->Count,1, "We found only one result"); - +ok($Collection->First); +is($Collection->First->id, $parentid, "We found the collection of all parents of $childid with Limit"); $Collection = RT::Tickets->new($CurrentUser); $Collection->FromSQL("HasMember = $childid"); - -ok ($Collection->First); -is ($Collection->First->id, $parentid, "We found the collection of all parents of $childid with TicketSQL"); is($Collection->Count,1, "We found only one result"); - +ok($Collection->First); +is($Collection->First->id, $parentid, "We found the collection of all parents of $childid with TicketSQL"); # Now we find a collection of all the tickets which have no members. they should have no children. @@ -75,12 +67,10 @@ my %has; while (my $t = $Collection->Next) { ++$has{$t->id}; } -ok ($has{$childid} , "The collection has our child - $childid"); +ok( $has{$childid}, "The collection has our child - $childid"); ok( !$has{$parentid}, "The collection doesn't have our parent - $parentid"); - - # Now we find a collection of all the tickets which are not members of anything. they should have no parents. $Collection = RT::Tickets->new($CurrentUser); $Collection->LimitMemberOf(''); @@ -102,28 +92,27 @@ ok( !$has{$childid}, "The collection doesn't have our child - $childid"); $Collection = RT::Tickets->new($CurrentUser); $Collection->FromSQL ("HasMember IS NULL"); # must contain parent; must not contain child - %has = (); +%has = (); while (my $t = $Collection->Next) { ++$has{$t->id}; } -ok (!$has{$parentid} , "The collection doesn't have our parent - $parentid"); +ok( !$has{$parentid}, "The collection doesn't have our parent - $parentid"); ok( $has{$childid}, "The collection has our child - $childid"); # Now we find a collection of all the tickets which have no members. they should have no children. # Alternate syntax $Collection = RT::Tickets->new($CurrentUser); -$Collection->FromSQL ("HasMember = ''"); +$Collection->FromSQL("HasMember = ''"); # must contain parent; must not contain child - %has = (); +%has = (); while (my $t = $Collection->Next) { ++$has{$t->id}; } -ok (!$has{$parentid} , "The collection doesn't have our parent - $parentid"); +ok( !$has{$parentid}, "The collection doesn't have our parent - $parentid"); ok( $has{$childid}, "The collection has our child - $childid"); - # Now we find a collection of all the tickets which are not members of anything. they should have no parents. $Collection = RT::Tickets->new($CurrentUser); $Collection->FromSQL("MemberOf IS NULL"); @@ -132,8 +121,8 @@ $Collection->FromSQL("MemberOf IS NULL"); while (my $t = $Collection->Next) { ++$has{$t->id}; } -ok ($has{$parentid} , "The collection has our parent - $parentid"); -ok(!$has{$childid}, "The collection doesn't have our child - $childid"); +ok( $has{$parentid}, "The collection has our parent - $parentid"); +ok( !$has{$childid}, "The collection doesn't have our child - $childid"); # Now we find a collection of all the tickets which are not members of anything. they should have no parents. @@ -144,12 +133,27 @@ $Collection->FromSQL("MemberOf = ''"); while (my $t = $Collection->Next) { ++$has{$t->id}; } -ok ($has{$parentid} , "The collection has our parent - $parentid"); -ok(!$has{$childid}, "The collection doesn't have our child - $childid"); +ok( $has{$parentid}, "The collection has our parent - $parentid"); +ok( !$has{$childid}, "The collection doesn't have our child - $childid"); +# Now we find a collection of all the tickets which are not members of the parent ticket +$Collection = RT::Tickets->new($CurrentUser); +$Collection->FromSQL("MemberOf != $parentid"); +%has = (); +while (my $t = $Collection->Next) { + ++$has{$t->id}; +} +ok( $has{$parentid}, "The collection has our parent - $parentid"); +ok( !$has{$childid}, "The collection doesn't have our child - $childid"); +$Collection = RT::Tickets->new($CurrentUser); +$Collection->LimitMemberOf($parentid, OPERATOR => '!='); +%has = (); +while (my $t = $Collection->Next) { + ++$has{$t->id}; +} +ok( $has{$parentid}, "The collection has our parent - $parentid"); +ok( !$has{$childid}, "The collection doesn't have our child - $childid"); 1; - -