Hi,

I get several tests failing: 

Failed Test  Status Wstat Total Fail  Failed  List of Failed
--------------------------------------------------------------------------------
t/compile3.t                  13    1   7.69%  12
t/filter.t                   146    1   0.68%  87
t/provider.t                  56    5   8.93%  33-34, 39-40, 56
15 tests skipped.
Failed 3/90 test scripts, 96.67% okay. 7/2446 subtests failed, 99.71%
okay.

I append the detailed "make test" listing, see below.


I also want to invite again the bright minds of the community to think
about xml/UTF8 issue I posted about on 1st of March (subject: TT and
Perl's UTF8 problem again).  My patch to the problem I attach to this
email, but it is not a general solution.  In particular, this patch
breaks html.t test no. 10, and there is a reason for that.   The patch
assumes all template data is in UTF8, but it is not necessarily so. 

Please, think about it.  I can't find a good solution myself.


Cheers,
Ivan Kurmanov


-#-#-#- starting make test output -#-#-#-
[EMAIL PROTECTED]:~/install/Template-Toolkit-2.08e> make test
make[1]: Entering directory
`/home/ivan/install/Template-Toolkit-2.08e/xs'
make[1]: Leaving directory
`/home/ivan/install/Template-Toolkit-2.08e/xs'
PERL_DL_NONLAZY=1 /usr/local/bin/perl -Iblib/arch -Iblib/lib
-I/usr/lib/perl5/5.6.1/i586-linux -I/usr/lib/perl5/5.6.1 -e 'use
Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;'
t/*.t
t/args..............ok
t/autoform..........skipped: Text::Autoformat module not installed
t/base..............ok
t/binop.............ok
t/block.............ok
t/blocks............ok
t/capture...........ok
t/case..............ok
t/cgi...............ok
t/chomp.............ok
t/compile1..........ok
t/compile2..........ok
t/compile3..........ok 11/13FAILED 12:  - template text 2 did not
match expected
t/compile3..........FAILED test 12
        Failed 1/13 tests, 92.31% okay
t/compile4..........ok
t/compile5..........ok
t/config............ok
t/constants.........ok
t/context...........ok
t/datafile..........ok
t/date..............ok
t/dbi...............skipped: DBI module not installed
t/debug.............ok
t/directive.........ok
t/directry..........ok
t/document..........ok
t/dom...............skipped: XML::DOM v1.27 or later not installed
t/domview...........skipped: XML::DOM v1.27 or later not installed
t/dumper............ok
t/error.............ok
t/evalperl..........ok
t/exception.........ok
t/factory...........ok
t/file..............ok
t/filter............FAILED test 87
        Failed 1/146 tests, 99.32% okay
t/foreach...........ok
t/format............ok
t/gd................skipped: GD module(s) not installed
t/gdgraph...........skipped: GD module(s) not installed
t/gdgraph3d.........skipped: GD module(s) not installed
t/gdtext............skipped: GD module(s) not installed
t/gdtextalign.......skipped: GD module(s) not installed
t/gdtextwrap........skipped: GD module(s) not installed
t/html..............ok
t/image.............skipped: Neither Image::Info nor Image::Size
installed
t/include...........ok
t/iterator..........ok
t/latex2dvi.........skipped: LaTeX not installed
t/latex2pdf.........skipped: LaTeX not installed
t/latex2ps..........skipped: LaTeX not installed
t/leak..............ok
t/list..............ok
t/macro.............ok
t/object............ok
t/output............ok
t/parser............ok
t/plugins...........ok
t/plusfile..........ok
t/pod...............ok
t/prefix............ok
t/proc..............ok
t/process...........ok
t/provider..........ok 32/56Template process failed: Template::Constants::ERROR_FILE 
error - /home/ivan/install/Template-Toolkit-2.08e/t/test/src/foo: absolute paths are 
not allowed (set ABSOLUTE option)
FAILED 33:  - template text 5 process FAILED: [% TRY %]\n[% INCLUDE $relfile -%...
t/provider..........NOK 33FAILED 34:  - (obviously did not match expected)
t/provider..........ok 38/56Template process failed: Template::Constants::ERROR_FILE 
error - ./t/test/src/foo: relative paths are not allowed (set RELATIVE option)
FAILED 39:  - template text 8 process FAILED: [% TRY %]\n[% INCLUDE $absfile %]...
t/provider..........NOK 39FAILED 40:  - (obviously did not match expected)
t/provider..........ok 55/56FAILED 56:  - template text 16 did not match expected
t/provider..........FAILED tests 33-34, 39-40, 56
        Failed 5/56 tests, 91.07% okay
t/ref...............ok
t/rss...............skipped: XML::RSS v 0.9 or later not installed
t/service...........ok
t/skel..............ok
t/stash-xs..........ok
t/stash.............ok
t/stashc............ok
t/stop..............ok
t/strcat............ok
t/string............ok
t/switch............ok
t/table.............ok
t/tags..............ok
t/template..........ok
t/text..............ok
t/throw.............ok
t/tiedhash..........ok
t/try...............ok
t/url...............ok
t/vars..............ok
t/varsv1............ok
t/view..............ok
t/vmeth.............ok
t/while.............ok
t/wrap..............ok
t/wrapper...........ok
t/xmlstyle..........ok
t/xpath.............ok
Failed Test  Status Wstat Total Fail  Failed  List of Failed
--------------------------------------------------------------------------------
t/compile3.t                  13    1   7.69%  12
t/filter.t                   146    1   0.68%  87
t/provider.t                  56    5   8.93%  33-34, 39-40, 56
15 tests skipped.
Failed 3/90 test scripts, 96.67% okay. 7/2446 subtests failed, 99.71% okay.
make: *** [test_dynamic] Error 29

-#-#-#- starting perl -V output -#-#-#-

[EMAIL PROTECTED]:~/install/Template-Toolkit-2.08e> perl -V
Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
  Platform:
    osname=linux, osvers=2.4.17, archname=i586-linux
    uname='linux d4 2.4.17 #1 smp thu mar 21 21:29:30 utc 2002 i686 unknown '
    config_args='-ds -e -Dprefix=/usr -Di_db -Di_dbm -Di_ndbm -Di_gdbm 
-Duseshrplib=true'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef
    useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
  Compiler:
    cc='cc', ccflags ='-fno-strict-aliasing -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64',
    optimize='-O2 -pipe',
    cppflags='-fno-strict-aliasing'
    ccversion='', gccversion='2.95.3 20010315 (SuSE)', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    alignbytes=4, usemymalloc=n, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =''
    libpth=/lib /usr/lib /usr/local/lib
    libs=-lnsl -ldl -lm -lc -lcrypt -lutil
    perllibs=-lnsl -ldl -lm -lc -lcrypt -lutil
    libc=, so=so, useshrplib=true, libperl=libperl.so
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic 
-Wl,-rpath,/usr/lib/perl5/5.6.1/i586-linux/CORE'
    cccdlflags='-fPIC', lddlflags='-shared'


Characteristics of this binary (from libperl):
  Compile-time options: USE_LARGE_FILES
  Built under linux
  Compiled at Mar 23 2002 17:40:12
  %ENV:
    PERL5LIB="/home/ivan/lib/perl5/site_perl/5.6.1"
  @INC:
    /home/ivan/lib/perl5/site_perl/5.6.1/i586-linux
    /home/ivan/lib/perl5/site_perl/5.6.1
    /usr/lib/perl5/5.6.1/i586-linux
    /usr/lib/perl5/5.6.1
    /usr/lib/perl5/site_perl/5.6.1/i586-linux
    /usr/lib/perl5/site_perl/5.6.1
    /usr/lib/perl5/site_perl
    .

diff -Naur Template-Toolkit-2.08e/lib/Template/Directive.pm 
Template-Toolkit-2.08e.UTF8-fixed/lib/Template/Directive.pm
--- Template-Toolkit-2.08e/lib/Template/Directive.pm    Thu Aug  8 14:59:15 2002
+++ Template-Toolkit-2.08e.UTF8-fixed/lib/Template/Directive.pm Sat Mar 22 04:27:40 
2003
@@ -144,7 +144,7 @@

 sub textblock {
     my ($class, $text) = @_;
-    return "$OUTPUT " . &text($class, $text) . ';';
+    return "$OUTPUT pack('U*', unpack('U*', " . &text($class, $text) . '));';
 }


@@ -332,7 +332,7 @@
     my ($class, $nameargs) = @_;
     my ($file, $args) = @$nameargs;
     $file = $class->filenames($file);
-    return "$OUTPUT \$context->insert($file);";
+    return "$OUTPUT pack( 'U*', unpack( 'U*', \$context->insert($file) ));";
 }


diff -Naur Template-Toolkit-2.08e/lib/Template/Provider.pm 
Template-Toolkit-2.08e.UTF8-fixed/lib/Template/Provider.pm
--- Template-Toolkit-2.08e/lib/Template/Provider.pm     Tue Mar 18 15:34:17 2003
+++ Template-Toolkit-2.08e.UTF8-fixed/lib/Template/Provider.pm  Sat Mar 22 06:06:45 
2003
@@ -209,6 +209,7 @@
        return (undef, Template::Constants::STATUS_DECLINED);
     }
     else {
+        $data = pack('U*', unpack('U*', $data ));
        return ($data, Template::Constants::STATUS_OK);
     }
 }
@@ -656,6 +657,9 @@
        }
     }

+    if( defined $data->{text} ) {
+        $data->{text} = pack('U*', unpack('U*', $data->{text} ) );
+    }
     return ($data, $error);
 }

@@ -1430,4 +1434,4 @@

 =head1 SEE ALSO

-L<Template|Template>, L<Template::Parser|Template::Parser>, 
L<Template::Context|Template::Context>
\ No newline at end of file
+L<Template|Template>, L<Template::Parser|Template::Parser>, 
L<Template::Context|Template::Context>

Reply via email to