[Rt-commit] rt branch, 4.2/allow-status-change-in-inactive-set-with-unresolved-deps, created. rt-4.0.4-302-g39887f9
? sunnavy
sunnavy at bestpractical.com
Wed Dec 21 01:33:32 EST 2011
The branch, 4.2/allow-status-change-in-inactive-set-with-unresolved-deps has been created
at 39887f9c9bf1d10785473c3aecf117a2283fffbc (commit)
- Log -----------------------------------------------------------------
commit 39887f9c9bf1d10785473c3aecf117a2283fffbc
Author: sunnavy <sunnavy at bestpractical.com>
Date: Wed Dec 21 14:21:43 2011 +0800
allow to set inactive status with unresolved deps if current status is inactive
diff --git a/lib/RT/Ticket.pm b/lib/RT/Ticket.pm
index 74f74c4..d6d378d 100644
--- a/lib/RT/Ticket.pm
+++ b/lib/RT/Ticket.pm
@@ -3143,8 +3143,12 @@ sub SetStatus {
return ( 0, $self->loc('Permission Denied') );
}
- if ( !$args{Force} && $lifecycle->IsInactive( $new ) && $self->HasUnresolvedDependencies) {
- return (0, $self->loc('That ticket has unresolved dependencies'));
+ if ( !$args{Force}
+ && !$lifecycle->IsInactive($self->Status)
+ && $lifecycle->IsInactive($new)
+ && $self->HasUnresolvedDependencies )
+ {
+ return ( 0, $self->loc('That ticket has unresolved dependencies') );
}
my $now = RT::Date->new( $self->CurrentUser );
diff --git a/t/api/ticket.t b/t/api/ticket.t
index 92c8a85..53476f6 100644
--- a/t/api/ticket.t
+++ b/t/api/ticket.t
@@ -2,7 +2,7 @@
use strict;
use warnings;
use RT;
-use RT::Test tests => 87;
+use RT::Test tests => 89;
{
@@ -250,7 +250,16 @@ like($msg, qr/resolved/i, "Status message is correct");
($id, $msg) = $tt->SetStatus('resolved');
ok(!$id,$msg);
+my $dep = RT::Ticket->new( RT->SystemUser );
+my ( $dep_id, undef, $dep_msg ) = $dep->Create(
+ Queue => 'general',
+ Subject => 'dep ticket',
+ 'DependedOnBy' => $tt->id,
+);
+ok( $dep->id, $dep_msg );
+($id, $msg) = $tt->SetStatus('rejected');
+ok( $id, $msg );
}
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list