Algorithm-CheckDigits
view release on metacpan or search on metacpan
t/valid.data view on Meta::CPAN
use vars qw(@testcases);
@testcases = (
# M007
[ 'ismn', 'M-345-24680-5', 'M-345-24680', '5',
'M-345-24689-0' ],
# M011
[ 'upc', '012345678905', '01234567890', '5',
'012345678901' ],
# M012
[ 'sedol', '0123457', '012345', '7',
'0123456' ],
[ 'sedol', 'B0YBLH2', 'B0YBLH', '2',
'B0YBLH3' ],
# M013
[ 'postcheckkonti', '85-12345678-7', '85-12345678-', '7',
'85-12345678-9' ],
# M014
[ 'isbn', '3-88229-192-3', '3-88229-192-', '3',
'3-88229-192-0' ],
[ 'issn', '0724-8679', '0724-867', '9',
'0724-8870' ],
[ 'ustid_pt', '136695973', '13669597', '3',
'136695970' ],
[ 'vatrn_pt', '136695973', '13669597', '3',
'136695970' ],
[ 'hkid', 'K1234560', 'K123456', '0',
'K1234567' ],
[ 'wagonnr_br', '123456-1', '123456-', '1',
'123456-7' ],
[ 'nhs_gb', '3882291850', '388229185', '0',
'3882291851' ],
[ 'vat_sl', '59082437', '5908243', '7',
'59082432' ],
# M015
[ 'pzn', '4877800', '487780', '0',
'4877801' ],
# MBase-002
[ 'blutbeutel', '2761011234567893', '276101123456789', '3',
'2761011234567890' ],
[ 'blutbeutel', '02', '0', '2', '01' ],
[ 'blutbeutel', '19', '1', '9', '10' ],
[ 'blutbeutel', '60', '6', '0', '61' ],
[ 'blutbeutel', '94', '9', '4', '90' ],
[ 'blutbeutel', '08235', '0823', '5',
'08234' ],
[ 'blutbeutel', '2766169732125615', '276616973212561', '5',
'2766169732125610' ],
[ 'bzue_de', '9433463951409', '943346395140', '9',
'9433463951400' ],
[ 'ustid_de', '136 695 976', '136 695 97', '6',
'136 695 970' ],
# MBase-003
[ 'sici', '0724-8679(20040308)6:<138>2.0.TX;2-H',
'0724-8679(20040308)6:<138>2.0.TX;2-', 'H',
'0724-8679(20040308)6:<138>2.0.TX;2-A',
],
# I don't know what for this method is.
# M07-001
#[ 'm07-001', '0', '', '0',
# '1' ],
#[ 'm07-001', '1234567892', '123456789', '2',
# '1234567890' ],
# M09-001
[ 'euronote', 'X03854465012', 'X0385446501', '2',
'X03854465010' ],
[ 'euronote', 'P02044163566', 'P0204416356', '6',
'P02044163560' ],
# M10-001
( run in 1.450 second using v1.01-cache-2.11-cpan-97f6503c9c8 )