4 use RT::Test tests => 27;
6 my $queue = RT::Test->load_or_create_queue( Name => 'General' );
7 ok $queue && $queue->id, "loaded or created a queue";
11 my $ticket = RT::Test->create_ticket(
12 Queue => $queue->id, TimeWorked => 10,
14 is $ticket->TimeWorked, 10, 'correct value';
16 my $txn = RT::Transaction->new( RT->SystemUser );
18 ObjectType => 'RT::Ticket', ObjectId => $ticket->id,
21 ok $txn->id, 'found transaction';
22 is $txn->TimeTaken, 10, 'correct value';
25 note 'set on Comment';
27 my $ticket = RT::Test->create_ticket( Queue => $queue->id );
28 ok !$ticket->TimeWorked, 'correct value';
29 $ticket->Comment( Content => 'test', TimeTaken => 10 );
30 is $ticket->TimeWorked, 10, 'correct value';
32 my $txn = RT::Transaction->new( RT->SystemUser );
34 ObjectType => 'RT::Ticket', ObjectId => $ticket->id,
37 ok $txn->id, 'found transaction';
38 is $txn->TimeTaken, 10, 'correct value';
43 my $ticket = RT::Test->create_ticket( Queue => $queue->id );
44 ok !$ticket->TimeWorked, 'correct value';
45 $ticket->SetTimeWorked( 10 );
46 is $ticket->TimeWorked, 10, 'correct value';
48 my $txn = RT::Transaction->new( RT->SystemUser );
50 ObjectType => 'RT::Ticket', ObjectId => $ticket->id,
51 Type => 'Set', Field => 'TimeWorked',
53 ok $txn->id, 'found transaction';
54 is $txn->TimeTaken, 10, 'correct value';
59 my $ticket = RT::Test->create_ticket(
60 Queue => $queue->id, TimeWorked => 7,
63 my $tmp = RT::Test->create_ticket(
64 Queue => $queue->id, TimeWorked => 13,
66 my ($status, $msg) = $tmp->MergeInto( $ticket->id );
67 ok $status, "merged tickets";
69 $ticket->Load( $ticket->id );
70 is $ticket->TimeWorked, 20, 'correct value';
75 my $txns = $ticket->Transactions;
76 while ( my $txn = $txns->Next ) {
77 diag sprintf "#%d\t%s\t%s\t%d", map $txn->$_() // '', qw(id Type Field TimeTaken);