/[webpac2]/trunk/t/3-normalize.t
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/t/3-normalize.t

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1036 by dpavlin, Mon Nov 12 11:10:48 2007 UTC revision 1341 by dpavlin, Fri Oct 15 13:36:56 2010 UTC
# Line 1  Line 1 
1  #!/usr/bin/perl -w  #!/usr/bin/perl -w
2    
3  use strict;  use strict;
4  use blib;  use lib 'lib';
5    
6  use Test::More tests => 340;  use Test::More tests => 357;
7    
8    use utf8;
9    
10  BEGIN {  BEGIN {
11          use_ok( 'WebPAC::Test' );          use_ok( 'WebPAC::Test' );
# Line 55  my $rec2 = { Line 57  my $rec2 = {
57              } ],              } ],
58   '700' => [ {   '700' => [ {
59                'a' => 'Haynal',                'a' => 'Haynal',
60                'b' => 'André'                'b' => 'André'
61              } ],              } ],
62   '801' => [ 'FFZG' ],   '801' => [ 'FFZG' ],
63   '991' => [ '8302' ],   '991' => [ '8302' ],
# Line 78  my $rec2 = { Line 80  my $rec2 = {
80                'e' => 'from Freud and Ferenczi to Michael balint',                'e' => 'from Freud and Ferenczi to Michael balint',
81                'a' => 'Controversies in psychoanalytic method',                'a' => 'Controversies in psychoanalytic method',
82                'g' => 'translated by Elizabeth Holder on the basisi of a first draft by Archie Hooton ; with a preface by Daniel N. Stern',                'g' => 'translated by Elizabeth Holder on the basisi of a first draft by Archie Hooton ; with a preface by Daniel N. Stern',
83                'f' => 'by André E. Haynal'                'f' => 'by André E. Haynal'
84              } ],              } ],
85   '610' => [ 'povijest psihoanalize' ],   '610' => [ 'povijest psihoanalize' ],
86   '994' => [ {   '994' => [ {
# Line 866  sub test_s { Line 868  sub test_s {
868    
869          # frec          # frec
870    
871          my $rec = {          $rec = {
872                          '200' => [ {                          '200' => [ {
873                                  a => [ 'a1', 'a2' ], b => [ 'b1', 'b2' ], c => [ 'c1', 'c2' ],                                  a => [ 'a1', 'a2' ], b => [ 'b1', 'b2' ], c => [ 'c1', 'c2' ],
874                                  subfields => [ qw/a 0 b 0 a 1 b 1 c 0 c 1/ ],                                  subfields => [ qw/a 0 b 0 a 1 b 1 c 0 c 1/ ],
875                                    i1 => '0', i2 => '1',
876                          }, {                          }, {
877                                  a => [ 'a3', 'a4', 'a5' ], b => 'b3', c => 'c3',                                  a => [ 'a3', 'a4', 'a5' ], b => 'b3', c => 'c3',
878                                  subfields => [ qw/a 0 a 1 b 0 c 0 a 2/ ],                                  subfields => [ qw/a 0 a 1 b 0 c 0 a 2/ ],
# Line 892  sub test_s { Line 895  sub test_s {
895                  ok( frec_ne( '200' => $sf, '200' => 'c' ), "frec_ne 200 $sf == 200 c");                  ok( frec_ne( '200' => $sf, '200' => 'c' ), "frec_ne 200 $sf == 200 c");
896          }          }
897    
898            test_rule( 'rec(200,i1)', $rec, qq{ rec(200,'i1') }, [ '0' ] );
899            test_rule( 'rec(200,i2)', $rec, qq{ rec(200,'i2') }, [ '1' ] );
900    
901            my $hash = { a => '[a]', 'b' => '[b]', subfields => [ 'a', 0, 'b', 0 ] };
902            is_deeply([ _pack_subfields_hash( $hash ) ], [ '[a]', '[b]' ], '_pack_subfields_hash' );
903            ok( $hash->{subfields}, 'subfields exist' );
904            cmp_ok( _pack_subfields_hash( $hash, 1 ), 'eq', '^a[a]^b[b]', '_pack_subfields_hash' );
905            ok( $hash->{subfields}, 'subfields exist' );
906    
907            $rec = { 'arr' => [ 1, 2, 3 ] };
908            test_rule( 'rec_array', $rec, qq{ rec_array('arr') }, $rec->{arr} );
909    
910            _clean_ds();
911            _set_ds( $rec );
912            test_s(q{
913                            row( 'table', e => $_ ) foreach ( rec_array('arr') );
914            });
915            ok( my $rows = _get_ds->{_rows}->{table}, 'ds have _rows' );
916    
917            foreach my $i ( 1 .. 3 ) {
918                    cmp_ok( $rows->[ $i - 1 ]->{e}, '==', $i, "e $i" );
919            }
920    
921            test_rule( 'utf-8'
922                    , { '900' => [{ a => 'ÄŒev', b => 'ić' }] }
923                    , qq{ join_with('', rec(900,'a'), 'apÄ', rec(900,'b') ) }
924                    , [ "\x{10C}evap\x{10D}i\x{107}" ]
925            );
926    
927  }  }
928    

Legend:
Removed from v.1036  
changed lines
  Added in v.1341

  ViewVC Help
Powered by ViewVC 1.1.26