43 lines
1.6 KiB
Perl
Executable File
43 lines
1.6 KiB
Perl
Executable File
#!/usr/bin/perl
|
|
#
|
|
# This Koha test module is a stub!
|
|
# Add more tests here!!!
|
|
|
|
use strict;
|
|
use warnings;
|
|
|
|
use Test::NoWarnings;
|
|
use Test::More tests => 11;
|
|
|
|
BEGIN {
|
|
use_ok( 'C4::ClassSortRoutine::Dewey', qw( get_class_sort_key ) );
|
|
}
|
|
|
|
my $cn_sort = C4::ClassSortRoutine::Dewey::get_class_sort_key( undef, undef );
|
|
is( $cn_sort, "", "testing whitespace" );
|
|
|
|
$cn_sort = C4::ClassSortRoutine::Dewey::get_class_sort_key( "....", "....." );
|
|
is( $cn_sort, "", "testing fullstops" );
|
|
|
|
$cn_sort = C4::ClassSortRoutine::Dewey::get_class_sort_key( "123", "456" );
|
|
is( $cn_sort, "123_456000000000000", "testing numbers" );
|
|
|
|
$cn_sort = C4::ClassSortRoutine::Dewey::get_class_sort_key( "abc123", "456" );
|
|
is( $cn_sort, "ABC_123_456000000000000", "testing alphanumeric" );
|
|
|
|
$cn_sort = C4::ClassSortRoutine::Dewey::get_class_sort_key( "ab c123", "45 6" );
|
|
is( $cn_sort, "AB_C123_45_600000000000000", "testing middle whitespace" );
|
|
|
|
$cn_sort = C4::ClassSortRoutine::Dewey::get_class_sort_key( "YR DVD 800.1", "" );
|
|
my $cn_sort2 = C4::ClassSortRoutine::Dewey::get_class_sort_key( "YR DVD 900", "" );
|
|
ok( $cn_sort lt $cn_sort2, "testing prefix plus decimal" );
|
|
|
|
$cn_sort = C4::ClassSortRoutine::Dewey::get_class_sort_key( "971/P23w/v.1-2/pt.8", "" );
|
|
is( $cn_sort, "971_000000000000000_P23W_V_12_PT_8", "Test 1 for bug 8836" );
|
|
|
|
$cn_sort = C4::ClassSortRoutine::Dewey::get_class_sort_key( "971.01 P23w v.1-2 pt.6-7", "" );
|
|
is( $cn_sort, "971_010000000000000_P23W_V_12_PT_67", "Test 2 for bug 8836" );
|
|
|
|
$cn_sort = C4::ClassSortRoutine::Dewey::get_class_sort_key( "971.01 P23w v.1-2 pt.7", "" );
|
|
is( $cn_sort, "971_010000000000000_P23W_V_12_PT_7", "Test 3 for bug 8836" );
|