4 use RT::Test tests => undef;
8 my $queue = RT::Test->load_or_create_queue(
10 CorrespondAddress => 'rt-recipient@example.com',
11 CommentAddress => 'rt-recipient@example.com',
13 ok $queue && $queue->id, 'loaded or created queue';
15 my $user = RT::Test->load_or_create_user(
17 EmailAddress => 'root@localhost',
19 ok $user && $user->id, 'loaded or created user';
21 diag "Reply to ticket with actor as one time cc";
23 my $ticket = RT::Ticket->new( RT::CurrentUser->new( $user ) );
25 my ($status, undef, $msg) = $ticket->Create(
28 Requestor => 'root@localhost',
30 ok $status, "created ticket";
31 } { To => 'root@localhost' };
33 RT->Config->Set( NotifyActor => 1 );
35 my ($status, $msg) = $ticket->Correspond(
36 Content => 'test mail',
38 ok $status, "replied to a ticket";
39 } { To => 'root@localhost' };
41 RT->Config->Set( NotifyActor => 0 );
43 my ($status, $msg) = $ticket->Correspond(
44 Content => 'test mail',
46 ok $status, "replied to a ticket";
50 my ($status, $msg) = $ticket->Correspond(
51 Content => 'test mail',
52 CcMessageTo => 'root@localhost',
54 ok $status, "replied to a ticket";
55 } { Cc => 'root@localhost' };
58 diag "Reply to ticket with requestor squelched";
60 my $ticket = RT::Ticket->new( RT::CurrentUser->new( $user ) );
62 my ($status, undef, $msg) = $ticket->Create(
65 Requestor => 'test@localhost',
67 ok $status, "created ticket";
68 } { To => 'test@localhost' };
71 my ($status, $msg) = $ticket->Correspond(
72 Content => 'test mail',
74 ok $status, "replied to a ticket";
75 } { To => 'test@localhost' };
77 $ticket->SquelchMailTo('test@localhost');
79 my ($status, $msg) = $ticket->Correspond(
80 Content => 'test mail',
82 ok $status, "replied to a ticket";
86 my ($status, $msg) = $ticket->Correspond(
87 Content => 'test mail',
88 CcMessageTo => 'test@localhost',
90 ok $status, "replied to a ticket";
91 } { Cc => 'test@localhost' };
94 diag "Reply to ticket with requestor squelched";
96 my $ticket = RT::Ticket->new( RT::CurrentUser->new( $user ) );
98 my ($status, undef, $msg) = $ticket->Create(
101 Requestor => 'test@localhost',
103 ok $status, "created ticket";
104 } { To => 'test@localhost' };
107 my ($status, $msg) = $ticket->Correspond(
108 Content => 'test mail',
110 ok $status, "replied to a ticket";
111 } { To => 'test@localhost' };
114 my ($status, $msg) = $ticket->Correspond(
115 Content => 'test mail',
116 SquelchMailTo => ['test@localhost'],
118 ok $status, "replied to a ticket";
122 my ($status, $msg) = $ticket->Correspond(
123 Content => 'test mail',
125 ok $status, "replied to a ticket";
126 } { To => 'test@localhost' };
129 my ($status, $msg) = $ticket->Correspond(
130 Content => 'test mail',
131 CcMessageTo => 'test@localhost',
132 SquelchMailTo => ['test@localhost'],
134 ok $status, "replied to a ticket";
135 } { Cc => 'test@localhost' };
138 diag "Requestor is an RT address";
140 my $ticket = RT::Ticket->new( RT::CurrentUser->new( $user ) );
142 my ($status, undef, $msg) = $ticket->Create(
145 Requestor => 'rt-address@example.com',
147 ok $status, "created ticket";
148 } { To => 'rt-address@example.com' };
150 RT->Config->Set( RTAddressRegexp => qr/^rt-address\@example\.com$/i );
152 my ($status, $msg) = $ticket->Correspond(
153 Content => 'test mail',
155 ok $status, "replied to a ticket";
159 my ($status, $msg) = $ticket->Correspond(
160 Content => 'test mail',
161 CcMessageTo => 'rt-address@example.com',
163 ok $status, "replied to a ticket";