Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.4.0 Release
-
None
Description
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.
Attachments
Issue Links
- relates to
-
VALIDATOR-344 AbstractCheckDigit class does not fully test invalid strings
- Closed