[Rt-commit] r18108 - in rt/3.999/branches/merge_to_3.8.2: etc lib lib/RT lib/RT/Approval lib/RT/Approval/Rule lib/RT/ScripAction t/approval t/web
clkao at bestpractical.com
clkao at bestpractical.com
Fri Jan 30 07:12:58 EST 2009
Author: clkao
Date: Fri Jan 30 07:12:53 2009
New Revision: 18108
Modified:
rt/3.999/branches/merge_to_3.8.2/etc/initialdata
rt/3.999/branches/merge_to_3.8.2/lib/RT.pm
rt/3.999/branches/merge_to_3.8.2/lib/RT/Approval/Rule.pm
rt/3.999/branches/merge_to_3.8.2/lib/RT/Approval/Rule/Rejected.pm
rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/Template.pm
rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/TicketCollection.pm
rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/Transaction.pm
rt/3.999/branches/merge_to_3.8.2/lib/RT/Rule.pm
rt/3.999/branches/merge_to_3.8.2/lib/RT/ScripAction/AutoOpen.pm
rt/3.999/branches/merge_to_3.8.2/lib/RT/Test.pm
rt/3.999/branches/merge_to_3.8.2/t/approval/basic.t
rt/3.999/branches/merge_to_3.8.2/t/web/dashboards.t
Log:
make the approval test mostly work.
Modified: rt/3.999/branches/merge_to_3.8.2/etc/initialdata
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/etc/initialdata (original)
+++ rt/3.999/branches/merge_to_3.8.2/etc/initialdata Fri Jan 30 07:12:53 2009
@@ -332,10 +332,10 @@
Greetings,
-Your ticket has been approved by { eval { $Approval->owner_obj->name } }.
+Your ticket has been approved by { eval { $Approval->owner->name } }.
Other approvals may be pending.
-Approver\'s notes: { $Notes }
+Approver\'s notes: { $notes }
'
},
@@ -348,10 +348,10 @@
Greetings,
-Your ticket has been approved by { eval { $Approval->owner_obj->name } }.
+Your ticket has been approved by { eval { $Approval->owner->name } }.
Its Owner may now start to act on it.
-Approver\'s notes: { $Notes }
+Approver\'s notes: { $notes }
'
},
{ queue => $approvals_id,
@@ -371,7 +371,7 @@
name => "Approval Ready for Owner", # loc
description =>
"Notify Owner of their ticket has been approved and is ready to be acted on", # loc
- content => 'Subject: Ticket Approved: {$ticket->Subject}
+ content => 'Subject: Ticket Approved: {$ticket->subject}
Greetings,
Modified: rt/3.999/branches/merge_to_3.8.2/lib/RT.pm
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/lib/RT.pm (original)
+++ rt/3.999/branches/merge_to_3.8.2/lib/RT.pm Fri Jan 30 07:12:53 2009
@@ -148,6 +148,8 @@
init_system_objects();
init_plugins();
+ # enable approval subsystem
+ require RT::Approval;
}
# Signal handlers
Modified: rt/3.999/branches/merge_to_3.8.2/lib/RT/Approval/Rule.pm
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/lib/RT/Approval/Rule.pm (original)
+++ rt/3.999/branches/merge_to_3.8.2/lib/RT/Approval/Rule.pm Fri Jan 30 07:12:53 2009
@@ -62,7 +62,7 @@
sub get_template {
my ($self, $template_name, %args) = @_;
- my $template = RT::Template->new( current_user => $self->CurrentUser);
+ my $template = RT::Model::Template->new( current_user => $self->current_user);
$template->load($template_name) or return;
my ($result, $msg) = $template->parse(%args);
Modified: rt/3.999/branches/merge_to_3.8.2/lib/RT/Approval/Rule/Rejected.pm
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/lib/RT/Approval/Rule/Rejected.pm (original)
+++ rt/3.999/branches/merge_to_3.8.2/lib/RT/Approval/Rule/Rejected.pm Fri Jan 30 07:12:53 2009
@@ -65,13 +65,13 @@
my $self = shift;
if ( my ($rejected) =
$self->ticket_obj->all_depended_on_by( type => 'ticket' ) ) {
- my $template = $self->GetTemplate('Approval Rejected',
+ my $template = $self->get_template('Approval Rejected',
ticket_obj => $rejected,
approval => $self->ticket_obj,
notes => '');
- $rejected->Correspond( mime_obj => $template->mime_obj );
- $rejected->SetStatus(
+ $rejected->correspond( mime_obj => $template->mime_obj );
+ $rejected->set_status(
status => 'rejected',
force => 1,
);
@@ -79,7 +79,7 @@
my $links = $self->ticket_obj->depended_on_by;
foreach my $link ( @{ $links->items_array_ref } ) {
my $obj = $link->base_obj;
- if ( $obj->queue_obj->is_active_status( $obj->status ) ) {
+ if ( $obj->queue->is_active_status( $obj->status ) ) {
if ( $obj->type eq 'approval' ) {
$obj->set_status(
status => 'deleted',
@@ -92,7 +92,7 @@
$links = $self->ticket_obj->depends_on;
foreach my $link ( @{ $links->items_array_ref } ) {
my $obj = $link->target_obj;
- if ( $obj->queue_obj->is_active_status( $obj->status ) ) {
+ if ( $obj->queue->is_active_status( $obj->status ) ) {
$obj->set_status(
status => 'deleted',
force => 1,
Modified: rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/Template.pm
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/Template.pm (original)
+++ rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/Template.pm Fri Jan 30 07:12:53 2009
@@ -370,10 +370,6 @@
$orig_entity->head->mime_attr( "Content-Type.charset" => 'utf-8' );
$orig_entity->make_multipart( 'alternative', Force => 1 );
- my $new_entity = $self->{mime_obj};
- $new_entity->head->mime_attr( "Content-Type" => 'text/plain' );
- $new_entity->head->mime_attr( "Content-Type.charset" => 'utf-8' );
-
require HTML::formatText;
require HTML::TreeBuilder;
$new_entity->bodyhandle(
Modified: rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/TicketCollection.pm
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/TicketCollection.pm (original)
+++ rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/TicketCollection.pm Fri Jan 30 07:12:53 2009
@@ -2053,7 +2053,7 @@
my $Ticket = $self->SUPER::next;
return $Ticket unless $Ticket;
- if ( $Ticket->__value('Status') eq 'deleted'
+ if ( $Ticket->__value('status') eq 'deleted'
&& !$self->{'allow_deleted_search'} )
{
return $self->next;
Modified: rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/Transaction.pm
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/Transaction.pm (original)
+++ rt/3.999/branches/merge_to_3.8.2/lib/RT/Model/Transaction.pm Fri Jan 30 07:12:53 2009
@@ -387,12 +387,11 @@
my $ticket = RT::Model::Ticket->new( current_user => RT->system_user );
$ticket->load( $args{'object_id'} );
my $rules = RT::Ruleset->find_all_rules(
- Stage => 'TransactionCreate',
+ stage => 'TransactionCreate',
type => $args{'type'},
ticket_obj => $ticket,
transaction_obj => $self,
);
-
if ( $commit_scrips ) {
Jifty->log->debug( 'About to commit scrips for transaction #' . $self->id );
Modified: rt/3.999/branches/merge_to_3.8.2/lib/RT/Rule.pm
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/lib/RT/Rule.pm (original)
+++ rt/3.999/branches/merge_to_3.8.2/lib/RT/Rule.pm Fri Jan 30 07:12:53 2009
@@ -49,14 +49,14 @@
package RT::Rule;
use strict;
use warnings;
-use base 'RT::Action';
+use base 'RT::ScripAction';
use constant _stage => 'TransactionCreate';
use constant _queue => undef;
sub prepare {
my $self = shift;
- return (0) if $self->_queue && $self->ticket_obj->queue_obj->name ne $self->_queue;
+ return (0) if $self->_queue && $self->ticket_obj->queue->name ne $self->_queue;
return 1;
}
@@ -73,21 +73,20 @@
sub on_status_change {
my ($self, $value) = @_;
- $self->transaction_obj->type eq 'Status' and
- $self->transaction_obj->field eq 'Status' and
+ $self->transaction_obj->type eq 'status' and
+ $self->transaction_obj->field eq 'status' and
$self->transaction_obj->new_value eq $value
}
sub run_scrip_action {
my ($self, $scrip_action, $template, %args) = @_;
- my $ScripAction = RT::ScripAction->new( current_user => $self->current_user);
+ my $ScripAction = RT::Model::ScripAction->new( current_user => $self->current_user);
$ScripAction->load($scrip_action) or die ;
-
unless (ref($template)) {
# XXX: load per-queue template
# $template->LoadQueueTemplate( Queue => ..., ) || $template->LoadGlobalTemplate(...)
- my $t = RT::Template->new( current_user => $self->current_user);
+ my $t = RT::Model::Template->new( current_user => $self->current_user);
$t->load($template) or die;
$template = $t;
}
@@ -99,7 +98,7 @@
# XXX: fix template to allow additional arguments to be passed from here
$action->{'template_obj'} = $template;
- $action->{'scrip_obj'} = RT::Scrip->new( current_user => $self->current_user); # Stub. sendemail action really wants a scripobj available
+ $action->{'scrip_obj'} = RT::Model::Scrip->new( current_user => $self->current_user); # Stub. sendemail action really wants a scripobj available
$action->prepare or return;
$action->commit;
Modified: rt/3.999/branches/merge_to_3.8.2/lib/RT/ScripAction/AutoOpen.pm
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/lib/RT/ScripAction/AutoOpen.pm (original)
+++ rt/3.999/branches/merge_to_3.8.2/lib/RT/ScripAction/AutoOpen.pm Fri Jan 30 07:12:53 2009
@@ -88,7 +88,7 @@
$self->ticket_obj->__set( column => 'status', value => 'open' );
$self->ticket_obj->_new_transaction(
type => 'status',
- field => 'Status',
+ field => 'status',
old_value => $oldstatus,
new_value => 'open',
data => 'Ticket auto-opened on incoming correspondence'
Modified: rt/3.999/branches/merge_to_3.8.2/lib/RT/Test.pm
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/lib/RT/Test.pm (original)
+++ rt/3.999/branches/merge_to_3.8.2/lib/RT/Test.pm Fri Jan 30 07:12:53 2009
@@ -111,6 +111,7 @@
$self->_setup_config(@$args);
RT::init_system_objects();
+ RT::init();
}
sub _setup_config {
Modified: rt/3.999/branches/merge_to_3.8.2/t/approval/basic.t
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/t/approval/basic.t (original)
+++ rt/3.999/branches/merge_to_3.8.2/t/approval/basic.t Fri Jan 30 07:12:53 2009
@@ -16,6 +16,7 @@
RT->config->set( log_to_screen => 'debug' );
RT->config->set( use_transaction_batch => 1 );
+RT->config->set( UseTansactionBatch => 1 );
my ($baseurl, $m) = RT::Test->started_ok;
my $q = RT::Model::Queue->new( current_user => RT->system_user );
@@ -39,7 +40,6 @@
Queue: ___Approvals
Type: approval
Owner: CFO
-Requestors: {$Tickets{"TOP"}->role_group("requestor")->member_emails_as_string}
Refers-To: TOP
Subject: CFO Approval for PO: {$Tickets{"TOP"}->id} - {$Tickets{"TOP"}->subject}
Due: {time + 86400}
@@ -52,7 +52,6 @@
Queue: ___Approvals
Type: approval
Owner: CEO
-Requestors: {$Tickets{"TOP"}->role_group("requestor")->member_emails_as_string}
Subject: PO approval request for {$Tickets{"TOP"}->subject}
Refers-To: TOP
Depends-On: for-CFO
@@ -90,7 +89,7 @@
mail_ok {
($tid, $ttrans, $tmsg) =
$t->create(subject => "PO for stationary",
- owner => "root", requestor => 'minion',
+ owner => "root", requestor => $users{minion}->email,
queue => $q->id);
} { from => qr/RT System/,
to => 'cfo at company.com',
Modified: rt/3.999/branches/merge_to_3.8.2/t/web/dashboards.t
==============================================================================
--- rt/3.999/branches/merge_to_3.8.2/t/web/dashboards.t (original)
+++ rt/3.999/branches/merge_to_3.8.2/t/web/dashboards.t Fri Jan 30 07:12:53 2009
@@ -27,10 +27,10 @@
my $queue = RT::Model::Queue->new(current_user => RT->system_user);
$queue->create(name => 'SearchQueue'.$$);
-for my $user ($user_object, $onlooker) {
- $user->principal_obj->grant_right(right => 'ModifySelf');
+for my $user ($user_obj, $onlooker) {
+ $user->principal->grant_right(right => 'ModifySelf');
for my $right (qw/SeeQueue ShowTicket OwnTicket/) {
- $user->principal_obj->grant_right(right => $right, object => $queue);
+ $user->principal->grant_right(right => $right, object => $queue);
}
}
@@ -57,7 +57,7 @@
$m->warning_like(qr/Permission denied/, "got a permission denied warning");
-$user_object->principal_obj->grant_right(right => 'ModifyOwnDashboard', object => RT->system);
+$user_obj->principal->grant_right(right => 'ModifyOwnDashboard', object => RT->system);
# Modify itself is no longer good enough, you need Create
$m->get_ok($url."Dashboards/Modify.html?Create=1");
$m->content_contains("Permission denied");
@@ -117,9 +117,6 @@
$dashboard->load_by_id($id);
is($dashboard->name, "different dashboard");
-is($dashboard->privacy, 'RT::Model::User-' . $user_object->id, "correct privacy");
-is($dashboard->possible_hidden_searches, 0, "all searches are visible");
-
is($dashboard->privacy, 'RT::Model::User-' . $user_obj->id, "correct privacy");
is($dashboard->possible_hidden_searches, 0, "all searches are visible");
@@ -213,7 +210,7 @@
$m->content_contains("Failed to load dashboard $id");
$m->warning_like(qr/Failed to load dashboard.*Couldn't find row/, "the dashboard was deleted");
-$user_object->principal_obj->grant_right(right => "SuperUser", object => RT->system);
+$user_obj->principal->grant_right(right => "SuperUser", object => RT->system);
# now test that we warn about searches others can't see
# first create a personal saved search...
@@ -252,7 +249,7 @@
$m->content_contains("dashboard test", "matched ticket shows up");
# make sure the onlooker can't see the search...
-$onlooker->principal_obj->grant_right(right => 'SeeDashboard', object => RT->system);
+$onlooker->principal->grant_right(right => 'SeeDashboard', object => RT->system);
my $omech = RT::Test::Web->new;
ok $omech->login(onlooker => 'onlooker'), "logged in";
More information about the Rt-commit
mailing list