X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=t%2FLabels_split_ddcn.t;h=33edba19cadb0c16b02f240c76e44f2e87edc2fa;hb=957d583d2efce66e31fe05f229fda91c58324bc2;hp=26aad55c4bb831b8e18529dcb01d5dba715a742c;hpb=e72a02e08b5ac326cc326243fce34223045901cc;p=srvgit diff --git a/t/Labels_split_ddcn.t b/t/Labels_split_ddcn.t index 26aad55c4b..33edba19ca 100755 --- a/t/Labels_split_ddcn.t +++ b/t/Labels_split_ddcn.t @@ -1,32 +1,57 @@ #!/usr/bin/perl # -# for context, see http://bugs.koha.org +# This file is part of Koha. +# +# Koha is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# Koha is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Koha; if not, see . +# +# for context, see http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=2691 use strict; use warnings; -use Test::More tests => 82; +use Test::More; BEGIN { - use_ok('C4::Labels'); + our $ddcns = {}; + if ($ARGV[0]) { + BAIL_OUT("USAGE: perl Labels_split_ddcn.t '621.3828 J28l' '621.3828,J28l'") unless $ARGV[1]; + $ddcns = {$ARGV[0] => [split (/,/,$ARGV[1])],}; + } + else { + $ddcns = { + 'R220.3 H2793Z H32 c.2' => [qw(R 220.3 H2793Z H32 c.2)], + 'CD-ROM 787.87 EAS' => [qw(CD-ROM 787.87 EAS)], + '252.051 T147 v.1-2' => [qw(252.051 T147 v.1-2)], + }; + } + my $test_num = 1; + foreach (keys(%$ddcns)) { + my $split_num += scalar(@{$ddcns->{$_}}); + $test_num += 2 * $split_num; + $test_num += 4; + } + plan tests => $test_num; + use_ok('C4::ClassSplitRoutine::Dewey'); + use vars qw($ddcns); } -ok(defined C4::Labels::split_ddcn, 'C4::Labels::split_ddcn defined'); - -my $ddcns = { - 'BIO JP2 R5c.1' => [qw(BIO JP2 R5 c.1 )], - 'FIC GIR J5c.1' => [qw(FIC GIR J5 c.1 )], - 'J DAR G7c.11' => [qw( J DAR G7 c.11)], - 'R220.3 H2793Z H32 c.2' => [qw(R 220.3 H2793Z H32 c.2)], - 'CD-ROM 787.87 EAS' => [qw(CD-ROM 787.87 EAS)], - 'MP3-CD F PARKER' => [qw(MP3-CD F PARKER)], - '252.051 T147 v.1-2' => [qw(252.051 T147 v.1-2)], -}; foreach my $ddcn (sort keys %$ddcns) { my (@parts, @expected); ok($ddcn, "ddcn: $ddcn"); ok(@expected = @{$ddcns->{$ddcn}}, "split expected to produce " . scalar(@expected) . " pieces"); - ok(@parts = C4::Labels::split_ddcn($ddcn), "C4::Labels::split_ddcn($ddcn)"); + ok(@parts = C4::ClassSplitRoutine::Dewey::split_callnumber($ddcn), "Dewey::split_callnumber($ddcn)"); + ok(scalar(@expected) == scalar(@parts), sprintf("%d of %d pieces produced", scalar(@parts), scalar(@expected))); my $i = 0; foreach my $unit (@expected) { @@ -36,4 +61,3 @@ foreach my $ddcn (sort keys %$ddcns) { $i++; } } -