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 )