[otrs-cvs] otrs/scripts/test/Ticket ArticleStorage.t,1.3,1.4
"CVS commits notifications of OTRS.org" <[email protected]>
| Newsgroups | gmane.comp.otrs.cvs |
|---|---|
| Message-ID | <[email protected]> |
Comments:
Update of /home/cvs/otrs/scripts/test/Ticket
In directory lancelot:/tmp/cvs-serv6348/scripts/test/Ticket
Modified Files:
ArticleStorage.t
Log Message:
Improved ArticleStorage tests with some tougher unicode handling tests.
Author: mg
Index: ArticleStorage.t
===================================================================
RCS file: /home/cvs/otrs/scripts/test/Ticket/ArticleStorage.t,v
retrieving revision 1.3
retrieving revision 1.4
diff -2 -u -d -r1.3 -r1.4
--- ArticleStorage.t 20 Nov 2012 16:12:52 -0000 1.3
+++ ArticleStorage.t 5 Feb 2013 13:24:55 -0000 1.4
@@ -1,5 +1,5 @@
# --
# ArticleStorage.t - ticket module testscript
-# Copyright (C) 2001-2012 OTRS AG, http://otrs.org/
+# Copyright (C) 2001-2013 OTRS AG, http://otrs.org/
# --
# $Id$
@@ -17,4 +17,5 @@
use Time::HiRes qw( usleep );
+use Unicode::Normalize;
use Kernel::Config;
@@ -74,5 +75,5 @@
Value => 'Kernel::System::Ticket::ArticleStorage' . $Backend,
);
- my $TicketObject = Kernel::System::Ticket->new(
+ $TicketObject = Kernel::System::Ticket->new(
%{$Self},
ConfigObject => $ConfigObject,
@@ -89,53 +90,91 @@
Mode => 'binmode',
);
- my $Content = ${$ContentRef};
- my $FileNew = "ÄÖÜ ? カスタマ-" . $File;
- my $MD5Orig = $Self->{MainObject}->MD5sum( String => $Content );
- my $ArticleWriteAttachment = $TicketObject->ArticleWriteAttachment(
- Content => $Content,
- Filename => $FileNew,
- ContentType => 'image/png',
- ArticleID => $ArticleID,
- UserID => 1,
- );
- $Self->True(
- $ArticleWriteAttachment,
- "$Backend ArticleWriteAttachment() - $FileNew",
- );
- my %Data = $TicketObject->ArticleAttachment(
- ArticleID => $ArticleID,
- FileID => 1,
- UserID => 1,
- );
- $Self->True(
- $Data{Content},
- "$Backend ArticleAttachment() Content - $FileNew",
- );
- $Self->True(
- $Data{ContentType},
- "$Backend ArticleAttachment() ContentType - $FileNew",
- );
- $Self->True(
- $Data{Content} eq $Content,
- "$Backend ArticleWriteAttachment() / ArticleAttachment() - $FileNew",
- );
- $Self->True(
- $Data{ContentType} eq 'image/png',
- "$Backend ArticleWriteAttachment() / ArticleAttachment() - $File",
- );
- my $MD5New = $Self->{MainObject}->MD5sum( String => $Data{Content} );
- $Self->Is(
- $MD5Orig || '1',
- $MD5New || '2',
- "$Backend MD5 - $FileNew",
- );
- my $Delete = $TicketObject->ArticleDeleteAttachment(
- ArticleID => $ArticleID,
- UserID => 1,
- );
- $Self->True(
- $Delete,
- "$Backend ArticleDeleteAttachment() - $FileNew",
- );
+
+ for my $FileName (
+ 'SimpleFile',
+ 'ÄÖÜカスタマ-', # Unicode NFC
+ 'Второй_файл', # Unicode NFD
+ )
+ {
+ my $Content = ${$ContentRef};
+ my $FileNew = $FileName . $File;
+ my $MD5Orig = $Self->{MainObject}->MD5sum( String => $Content );
+ my $ArticleWriteAttachment = $TicketObject->ArticleWriteAttachment(
+ Content => $Content,
+ Filename => $FileNew,
+ ContentType => 'image/png',
+ ArticleID => $ArticleID,
+ UserID => 1,
+ );
+ $Self->True(
+ $ArticleWriteAttachment,
+ "$Backend ArticleWriteAttachment() - $FileNew",
+ );
+
+ my %AttachmentIndex = $TicketObject->ArticleAttachmentIndex(
+ ArticleID => $ArticleID,
+ UserID => 1,
+ );
+
+ my $TargetFilename = $FileName . $File;
+
+ # Mac OS (HFS+) will store all filenames as NFD internally.
+ if ( $^O eq 'darwin' && $Backend eq 'FS' ) {
+ $TargetFilename = Unicode::Normalize::NFD($TargetFilename);
+ }
+
+ $Self->Is(
+ $AttachmentIndex{1}->{Filename},
+ $TargetFilename,
+ "$Backend ArticleAttachmentIndex() Filename - $FileNew"
+ );
+
+ my %Data = $TicketObject->ArticleAttachment(
+ ArticleID => $ArticleID,
+ FileID => 1,
+ UserID => 1,
+ );
+ $Self->True(
+ $Data{Content},
+ "$Backend ArticleAttachment() Content - $FileNew",
+ );
+ $Self->True(
+ $Data{ContentType},
+ "$Backend ArticleAttachment() ContentType - $FileNew",
+ );
+ $Self->True(
+ $Data{Content} eq $Content,
+ "$Backend ArticleWriteAttachment() / ArticleAttachment() - $FileNew",
+ );
+ $Self->True(
+ $Data{ContentType} eq 'image/png',
+ "$Backend ArticleWriteAttachment() / ArticleAttachment() - $File",
+ );
+ my $MD5New = $Self->{MainObject}->MD5sum( String => $Data{Content} );
+ $Self->Is(
+ $MD5Orig || '1',
+ $MD5New || '2',
+ "$Backend MD5 - $FileNew",
+ );
+ my $Delete = $TicketObject->ArticleDeleteAttachment(
+ ArticleID => $ArticleID,
+ UserID => 1,
+ );
+ $Self->True(
+ $Delete,
+ "$Backend ArticleDeleteAttachment() - $FileNew",
+ );
+
+ %AttachmentIndex = $TicketObject->ArticleAttachmentIndex(
+ ArticleID => $ArticleID,
+ UserID => 1,
+ );
+
+ $Self->IsDeeply(
+ \%AttachmentIndex,
+ {},
+ "$Backend ArticleAttachmentIndex() after delete - $FileNew"
+ );
+ }
}
}
---------------------------------------------------------------------
OTRS mailing list: cvs-log - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/cvs-log
To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/cvs-log