1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.validator;
18
19 import junit.framework.TestCase;
20
21 /***
22 * ISBNValidator Test Case.
23 *
24 * @version $Revision: 478334 $ $Date: 2006-11-22 21:31:54 +0000 (Wed, 22 Nov 2006) $
25 */
26 public class ISBNValidatorTest extends TestCase {
27
28 private static final String VALID_ISBN_RAW = "1930110995";
29 private static final String VALID_ISBN_DASHES = "1-930110-99-5";
30 private static final String VALID_ISBN_SPACES = "1 930110 99 5";
31 private static final String VALID_ISBN_X = "0-201-63385-X";
32 private static final String INVALID_ISBN = "068-556-98-45";
33
34 public ISBNValidatorTest(String name) {
35 super(name);
36 }
37
38 public void testIsValid() throws Exception {
39 ISBNValidator validator = new ISBNValidator();
40 assertFalse(validator.isValid(null));
41 assertFalse(validator.isValid(""));
42 assertFalse(validator.isValid("1"));
43 assertFalse(validator.isValid("12345678901234"));
44 assertFalse(validator.isValid("dsasdsadsads"));
45 assertFalse(validator.isValid("535365"));
46 assertFalse(validator.isValid("I love sparrows!"));
47 assertFalse(validator.isValid("--1 930110 99 5"));
48 assertFalse(validator.isValid("1 930110 99 5--"));
49 assertFalse(validator.isValid("1 930110-99 5-"));
50
51 assertTrue(validator.isValid(VALID_ISBN_RAW));
52 assertTrue(validator.isValid(VALID_ISBN_DASHES));
53 assertTrue(validator.isValid(VALID_ISBN_SPACES));
54 assertTrue(validator.isValid(VALID_ISBN_X));
55 assertFalse(validator.isValid(INVALID_ISBN));
56 }
57
58 }