[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