You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Josh Meyer (JIRA)" <ji...@apache.org> on 2014/07/11 22:23:05 UTC

[jira] [Created] (VALIDATOR-336) CUSIPCheckDigit Thinks Invalid CUSIP is Valid

Josh Meyer created VALIDATOR-336:
------------------------------------

             Summary: CUSIPCheckDigit Thinks Invalid CUSIP is Valid
                 Key: VALIDATOR-336
                 URL: https://issues.apache.org/jira/browse/VALIDATOR-336
             Project: Commons Validator
          Issue Type: Bug
            Reporter: Josh Meyer
         Attachments: CusipValidatorTest.java

When testing if a specific CUSIP is valid using org.apache.commons.validator.routines.checkdigit.CUSIPCheckDigit.CUSIP_CHECK_DIGIT.isValid, a call to this returns true when it should return false. A specific example is with the following invalid CUSIP: DUS0421CW.

What seems to be happening is when toInt is called on W it turns it to an int value and then sends it to weightedValue. This is fine for the first 8 characters of a CUSIP, but not the check digit. The expected result should be to return false because the check digit is a letter (on a CUSIP a check digit must be 0-9). 

With the current implementation, I believe each CUSIP can have up to 4 valid check digits.

A test is attached.



--
This message was sent by Atlassian JIRA
(v6.2#6252)