[Rt-commit] rt branch, 3.8-trunk, updated. rt-3.8.6-54-g18796b3
sunnavy at bestpractical.com
sunnavy at bestpractical.com
Thu Oct 29 03:39:14 EDT 2009
The branch, 3.8-trunk has been updated
via 18796b3e76e740f8dda27efd4d181bed4faa9ef1 (commit)
from d71fab11096ab703d966eda863e03ea4d56b379b (commit)
Summary of changes:
t/web/search_bulk_update_links.t | 147 ++++++++++++++++++++++++++++++++++++++
1 files changed, 147 insertions(+), 0 deletions(-)
create mode 100644 t/web/search_bulk_update_links.t
- Log -----------------------------------------------------------------
commit 18796b3e76e740f8dda27efd4d181bed4faa9ef1
Author: sunnavy <sunnavy at bestpractical.com>
Date: Thu Oct 29 15:39:06 2009 +0800
added t/web/search_bulk_update_links.t
diff --git a/t/web/search_bulk_update_links.t b/t/web/search_bulk_update_links.t
new file mode 100644
index 0000000..d6bfdfd
--- /dev/null
+++ b/t/web/search_bulk_update_links.t
@@ -0,0 +1,147 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+
+use RT::Test tests => 28;
+my ( $url, $m ) = RT::Test->started_ok;
+ok( $m->login, 'logged in' );
+
+my $rtname = RT->Config->Get('rtname');
+
+# create tickets
+use RT::Ticket;
+
+my ( @link_tickets, @search_tickets );
+for ( 1 .. 3 ) {
+ my $link_ticket = RT::Ticket->new($RT::SystemUser);
+ my ( $ret, $msg ) = $link_ticket->Create(
+ Subject => "link ticket $_",
+ Queue => 'general',
+ Owner => 'root',
+ Requestor => 'root at localhost',
+ );
+ ok( $ret, "link ticket created: $msg" );
+ push @link_tickets, $ret;
+}
+
+for ( 1 .. 3 ) {
+ my $ticket = RT::Ticket->new($RT::SystemUser);
+ my ( $ret, $msg ) = $ticket->Create(
+ Subject => "search ticket $_",
+ Queue => 'general',
+ Owner => 'root',
+ Requestor => 'root at localhost',
+ );
+ ok( $ret, "search ticket created: $msg" );
+ push @search_tickets, $ret;
+}
+
+# let's add link to 1 search ticket first
+$m->get_ok( $url . "/Search/Bulk.html?Query=id=$search_tickets[0]&Rows=10" );
+$m->content_contains( 'Current Links', 'has current links part' );
+$m->content_lacks( 'DeleteLink--', 'no delete link stuff' );
+$m->submit_form(
+ form_number => 3,
+ fields => {
+ 'Ticket-DependsOn' => $link_tickets[0],
+ 'Ticket-MemberOf' => $link_tickets[1],
+ 'Ticket-RefersTo' => $link_tickets[2],
+ },
+);
+$m->content_contains(
+ "Ticket $search_tickets[0] depends on Ticket $link_tickets[0]",
+ 'depends on msg',
+);
+$m->content_contains(
+ "Ticket $search_tickets[0] member of Ticket $link_tickets[1]",
+ 'member of msg',
+);
+$m->content_contains(
+ "Ticket $search_tickets[0] refers to Ticket $link_tickets[2]",
+ 'refers to msg',
+);
+
+$m->content_contains(
+ "DeleteLink--DependsOn-fsck.com-rt://$rtname/ticket/$link_tickets[0]",
+ 'found depends on link' );
+$m->content_contains(
+ "DeleteLink--MemberOf-fsck.com-rt://$rtname/ticket/$link_tickets[1]",
+ 'found member of link' );
+$m->content_contains(
+ "DeleteLink--RefersTo-fsck.com-rt://$rtname/ticket/$link_tickets[2]",
+ 'found refers to link' );
+
+# here we check the *real* bulk update
+my $query = join ' OR ', map { "id=$_" } @search_tickets;
+$m->get_ok( $url . "/Search/Bulk.html?Query=$query&Rows=10" );
+$m->content_contains( 'Current Links', 'has current links part' );
+$m->content_lacks( 'DeleteLink--', 'no delete link stuff' );
+
+# test DependsOn, MemberOf and RefersTo
+$m->submit_form(
+ form_number => 3,
+ fields => {
+ 'Ticket-DependsOn' => $link_tickets[0],
+ 'Ticket-MemberOf' => $link_tickets[1],
+ 'Ticket-RefersTo' => $link_tickets[2],
+ },
+);
+
+$m->content_contains(
+ "DeleteLink--DependsOn-fsck.com-rt://$rtname/ticket/$link_tickets[0]",
+ 'found depends on link' );
+$m->content_contains(
+ "DeleteLink--MemberOf-fsck.com-rt://$rtname/ticket/$link_tickets[1]",
+ 'found member of link' );
+$m->content_contains(
+ "DeleteLink--RefersTo-fsck.com-rt://$rtname/ticket/$link_tickets[2]",
+ 'found refers to link' );
+
+$m->submit_form(
+ form_number => 3,
+ fields => {
+ "DeleteLink--DependsOn-fsck.com-rt://$rtname/ticket/$link_tickets[0]" =>
+ 1,
+ "DeleteLink--MemberOf-fsck.com-rt://$rtname/ticket/$link_tickets[1]" =>
+ 1,
+ "DeleteLink--RefersTo-fsck.com-rt://$rtname/ticket/$link_tickets[2]" =>
+ 1,
+ },
+);
+
+$m->content_lacks( 'DeleteLink--', 'links are all deleted' );
+
+# test DependedOnBy, Members and ReferredToBy
+
+$m->submit_form(
+ form_number => 3,
+ fields => {
+ 'DependsOn-Ticket' => $link_tickets[0],
+ 'MemberOf-Ticket' => $link_tickets[1],
+ 'RefersTo-Ticket' => $link_tickets[2],
+ },
+);
+
+$m->content_contains(
+ "DeleteLink-fsck.com-rt://$rtname/ticket/$link_tickets[0]-DependsOn-",
+ 'found depended on link' );
+$m->content_contains(
+ "DeleteLink-fsck.com-rt://$rtname/ticket/$link_tickets[1]-MemberOf-",
+ 'found members link' );
+$m->content_contains(
+ "DeleteLink-fsck.com-rt://$rtname/ticket/$link_tickets[2]-RefersTo-",
+ 'found referrd to link' );
+
+$m->submit_form(
+ form_number => 3,
+ fields => {
+ "DeleteLink-fsck.com-rt://$rtname/ticket/$link_tickets[0]-DependsOn-" =>
+ 1,
+ "DeleteLink-fsck.com-rt://$rtname/ticket/$link_tickets[1]-MemberOf-" =>
+ 1,
+ "DeleteLink-fsck.com-rt://$rtname/ticket/$link_tickets[2]-RefersTo-" =>
+ 1,
+ },
+);
+$m->content_lacks( 'DeleteLink--', 'links are all deleted' );
+
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list