[otrs-cvs] otrs/scripts/test PostMaster.t,1.2,1.3
cvs-log at otrs.org
cvs-log at otrs.org
Thu Apr 12 23:54:06 GMT 2007
Comments:
Update of /home/cvs/otrs/scripts/test
In directory lancelot:/tmp/cvs-serv13836/scripts/test
Modified Files:
PostMaster.t
Log Message:
Added more unit tests.
Author: martin
Index: PostMaster.t
===================================================================
RCS file: /home/cvs/otrs/scripts/test/PostMaster.t,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** PostMaster.t 5 Apr 2007 14:36:16 -0000 1.2
--- PostMaster.t 12 Apr 2007 23:54:01 -0000 1.3
***************
*** 13,18 ****
use Kernel::System::PostMaster;
use Kernel::System::Ticket;
!
! $Self->{TicketObject} = Kernel::System::Ticket->new(%{$Self});
foreach my $Module (qw(DB FS)) {
--- 13,17 ----
use Kernel::System::PostMaster;
use Kernel::System::Ticket;
! use Digest::MD5 qw(md5_hex);
foreach my $Module (qw(DB FS)) {
***************
*** 56,126 ****
}
! # get rand sender address
! my $UserRand1 = 'example-user'.int(rand(1000000)).'@example.com';
! foreach my $File (1..3) {
! # new ticket check
! my @Content = ();
! open(IN, "< ".$Self->{ConfigObject}->Get('Home')."/scripts/test/sample/PostMaster-Test$File.box") || die $!;
! binmode(IN);
! while (my $Line = <IN>) {
! if ($Line =~ /^From:/) {
! $Line = "From: \"Some Realname\" <$UserRand1>\n";
! }
! push (@Content, $Line);
! }
! close(IN);
! # follow up check
! my @ContentNew = ();
! foreach my $Line (@Content) {
! push (@ContentNew, $Line);
! }
! $Self->{PostMasterObject} = Kernel::System::PostMaster->new(
! %{$Self},
! Email => \@Content,
! );
! my @Return = $Self->{PostMasterObject}->Run();
! $Self->Is(
! $Return[0] || 0,
! 1,
! "#$File Run() - NewTicket",
! );
! $Self->True(
! $Return[1] || 0,
! "#$File Run() - NewTicket/TicketID",
! );
! my %Ticket = $Self->{TicketObject}->TicketGet(TicketID => $Return[1]);
! @Content = ();
! foreach my $Line (@ContentNew) {
! if ($Line =~ /^Subject:/) {
! $Line = 'Subject: '.$Self->{TicketObject}->TicketSubjectBuild(
! TicketNumber => $Ticket{TicketNumber},
! Subject => $Line,
);
}
- push (@Content, $Line);
}
- $Self->{PostMasterObject} = Kernel::System::PostMaster->new(
- %{$Self},
- Email => \@Content,
- );
- @Return = $Self->{PostMasterObject}->Run();
- $Self->Is(
- $Return[0] || 0,
- 2,
- "#$File Run() - FollowUp",
- );
- $Self->True(
- $Return[1] || 0,
- "#$File Run() - FollowUp/TicketID",
- );
- $Self->{TicketObject}->StateSet(
- State => 'closed successful',
- TicketID => $Return[1],
- UserID => 1,
- );
-
}
1;
--- 55,276 ----
}
! foreach my $NumberModule (qw(AutoIncrement DateChecksum Date Random)) {
! $Self->{ConfigObject}->Set(
! Key => 'Ticket::NumberGenerator',
! Value => "Kernel::System::Ticket::Number::$NumberModule",
! );
! foreach my $StorageModule (qw(ArticleStorageDB ArticleStorageFS)) {
! $Self->{ConfigObject}->Set(
! Key => 'Ticket::StorageModule',
! Value => "Kernel::System::Ticket::$StorageModule",
! );
! # get rand sender address
! my $UserRand1 = 'example-user'.int(rand(1000000)).'@example.com';
! foreach my $File (1..3) {
! # new ticket check
! my @Content = ();
! open(IN, "< ".$Self->{ConfigObject}->Get('Home')."/scripts/test/sample/PostMaster-Test$File.box") || die $!;
! binmode(IN);
! while (my $Line = <IN>) {
! if ($Line =~ /^From:/) {
! $Line = "From: \"Some Realname\" <$UserRand1>\n";
! }
! push (@Content, $Line);
! }
! close(IN);
! # follow up check
! my @ContentNew = ();
! foreach my $Line (@Content) {
! push (@ContentNew, $Line);
! }
! $Self->{PostMasterObject} = Kernel::System::PostMaster->new(
! %{$Self},
! Email => \@Content,
! );
! my @Return = $Self->{PostMasterObject}->Run();
! $Self->Is(
! $Return[0] || 0,
! 1,
! "#$NumberModule $StorageModule $File Run() - NewTicket",
! );
! $Self->True(
! $Return[1] || 0,
! "#$NumberModule $StorageModule $File Run() - NewTicket/TicketID",
! );
! # new/clear ticket object
! $Self->{TicketObject} = Kernel::System::Ticket->new(%{$Self});
! my %Ticket = $Self->{TicketObject}->TicketGet(TicketID => $Return[1]);
! my @ArticleIDs = $Self->{TicketObject}->ArticleIndex(
! TicketID => $Return[1],
! );
! if ($File == 3) {
! # check body
! my %Article = $Self->{TicketObject}->ArticleGet(
! ArticleID => $ArticleIDs[0],
! );
! $Self->{EncodeObject}->EncodeOutput(\$Article{Body});
! my $MD5 = md5_hex($Article{Body}) || '';
! $Self->Is(
! $MD5,
! 'b50d85781d2ac10c210f99bf8142badc',
! "#$NumberModule $StorageModule $File md5 body check",
! );
!
! # check attachments
! my %Index = $Self->{TicketObject}->ArticleAttachmentIndex(
! ArticleID => $ArticleIDs[0],
! UserID => 1,
! );
! my %Attachment = $Self->{TicketObject}->ArticleAttachment(
! ArticleID => $ArticleIDs[0],
! FileID => 2,
! UserID => 1,
! );
! $Self->{EncodeObject}->EncodeOutput(\$Attachment{Content});
! $MD5 = md5_hex($Attachment{Content}) || '';
! $Self->Is(
! $MD5,
! '4e78ae6bffb120669f50bca56965f552',
! "#$NumberModule $StorageModule $File md5 attachment check",
! );
!
! }
!
! # send follow up #1
! @Content = ();
! foreach my $Line (@ContentNew) {
! if ($Line =~ /^Subject:/) {
! $Line = 'Subject: '.$Self->{TicketObject}->TicketSubjectBuild(
! TicketNumber => $Ticket{TicketNumber},
! Subject => $Line,
! );
! }
! push (@Content, $Line);
! }
! $Self->{PostMasterObject} = Kernel::System::PostMaster->new(
! %{$Self},
! Email => \@Content,
! );
! @Return = $Self->{PostMasterObject}->Run();
! $Self->Is(
! $Return[0] || 0,
! 2,
! "#$NumberModule $StorageModule $File Run() - FollowUp",
! );
! $Self->True(
! $Return[1] || 0,
! "#$NumberModule $StorageModule $File Run() - FollowUp/TicketID",
! );
! # new/clear ticket object
! $Self->{TicketObject} = Kernel::System::Ticket->new(%{$Self});
! %Ticket = $Self->{TicketObject}->TicketGet(TicketID => $Return[1]);
! $Self->Is(
! $Ticket{State} || 0,
! 'new',
! "#$NumberModule $StorageModule $File Run() - FollowUp/State check",
! );
! my $StateSet = $Self->{TicketObject}->StateSet(
! State => 'pending reminder',
! TicketID => $Return[1],
! UserID => 1,
! );
! $Self->True(
! $StateSet || 0,
! "#$NumberModule $StorageModule $File StateSet() - pending reminder",
! );
!
! # send follow up #2
! @Content = ();
! foreach my $Line (@ContentNew) {
! if ($Line =~ /^Subject:/) {
! $Line = 'Subject: '.$Self->{TicketObject}->TicketSubjectBuild(
! TicketNumber => $Ticket{TicketNumber},
! Subject => $Line,
! );
! }
! push (@Content, $Line);
! }
! $Self->{PostMasterObject} = Kernel::System::PostMaster->new(
! %{$Self},
! Email => \@Content,
! );
! @Return = $Self->{PostMasterObject}->Run();
! $Self->Is(
! $Return[0] || 0,
! 2,
! "#$NumberModule $StorageModule $File Run() - FollowUp",
! );
! $Self->True(
! $Return[1] || 0,
! "#$NumberModule $StorageModule $File Run() - FollowUp/TicketID",
! );
! # new/clear ticket object
! $Self->{TicketObject} = Kernel::System::Ticket->new(%{$Self});
! %Ticket = $Self->{TicketObject}->TicketGet(TicketID => $Return[1]);
! $Self->Is(
! $Ticket{State} || 0,
! 'open',
! "#$NumberModule $StorageModule $File Run() - FollowUp/PostmasterFollowUpState check",
! );
! $StateSet = $Self->{TicketObject}->StateSet(
! State => 'closed successful',
! TicketID => $Return[1],
! UserID => 1,
! );
! $Self->True(
! $StateSet || 0,
! "#$NumberModule $StorageModule $File StateSet() - closed successful",
! );
!
! # send follow up #3
! @Content = ();
! foreach my $Line (@ContentNew) {
! if ($Line =~ /^Subject:/) {
! $Line = 'Subject: '.$Self->{TicketObject}->TicketSubjectBuild(
! TicketNumber => $Ticket{TicketNumber},
! Subject => $Line,
! );
! }
! push (@Content, $Line);
! }
! $Self->{ConfigObject}->Set(Key => 'PostmasterFollowUpStateClosed', Value => 'new');
! $Self->{PostMasterObject} = Kernel::System::PostMaster->new(
! %{$Self},
! TicketObject => $Self->{TicketObject},
! Email => \@Content,
! );
! @Return = $Self->{PostMasterObject}->Run();
! $Self->Is(
! $Return[0] || 0,
! 2,
! "#$NumberModule $StorageModule $File Run() - FollowUp",
! );
! $Self->True(
! $Return[1] || 0,
! "#$NumberModule $StorageModule $File Run() - FollowUp/TicketID",
! );
! # new/clear ticket object
! $Self->{TicketObject} = Kernel::System::Ticket->new(%{$Self});
! %Ticket = $Self->{TicketObject}->TicketGet(TicketID => $Return[1]);
! $Self->Is(
! $Ticket{State} || 0,
! 'new',
! "#$NumberModule $StorageModule $File Run() - FollowUp/PostmasterFollowUpStateClosed check",
! );
!
! # delete ticket
! my $Delete = $Self->{TicketObject}->TicketDelete(
! TicketID => $Return[1],
! UserID => 1,
! );
! $Self->True(
! $Delete || 0,
! "#$NumberModule $StorageModule $File TicketDelete()",
);
}
}
}
1;
More information about the cvs-log
mailing list