1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
import org.junit.Test;
import static org.junit.Assert.assertEquals;
import org.junit.runners.JUnit4;
import java.util.concurrent.ThreadLocalRandom;
public class SolutionTest {
@Test
public void issuerTests() {
assertEquals("VISA", CreditCardChecker.getIssuer("4111111111111111"));
assertEquals("VISA", CreditCardChecker.getIssuer("4111111111111"));
assertEquals("VISA", CreditCardChecker.getIssuer("4012888888881881"));
assertEquals("Unknown", CreditCardChecker.getIssuer("41111111111111"));
assertEquals("Unknown", CreditCardChecker.getIssuer("411111111111111"));
assertEquals("AMEX", CreditCardChecker.getIssuer("378282246310005"));
assertEquals("AMEX", CreditCardChecker.getIssuer("348282246310005"));
assertEquals("Discover", CreditCardChecker.getIssuer("6011111111111117"));
assertEquals("Mastercard", CreditCardChecker.getIssuer("5105105105105100"));
assertEquals("Mastercard", CreditCardChecker.getIssuer("5105105105105106"));
assertEquals("Mastercard", CreditCardChecker.getIssuer("5205105105105106"));
assertEquals("Mastercard", CreditCardChecker.getIssuer("5305105105105106"));
assertEquals("Mastercard", CreditCardChecker.getIssuer("5405105105105106"));
assertEquals("Mastercard", CreditCardChecker.getIssuer("5505105105105106"));
assertEquals("Unknown", CreditCardChecker.getIssuer("9111111111111111"));
assertEquals("Unknown", CreditCardChecker.getIssuer("5605105105105106"));
}
@Test
public void randomTests() {
assertEquals("VISA", CreditCardChecker.getIssuer(String.valueOf(ThreadLocalRandom.current().nextLong(4000000000000000L ,4999999999999999L ))));
assertEquals("VISA", CreditCardChecker.getIssuer(String.valueOf(ThreadLocalRandom.current().nextLong(4000000000000L ,4999999999999L ))));
assertEquals("AMEX", CreditCardChecker.getIssuer(String.valueOf(ThreadLocalRandom.current().nextLong(340000000000000L ,349999999999999L ))));
assertEquals("AMEX", CreditCardChecker.getIssuer(String.valueOf(ThreadLocalRandom.current().nextLong(370000000000000L ,379999999999999L ))));
assertEquals("Discover", CreditCardChecker.getIssuer(String.valueOf(ThreadLocalRandom.current().nextLong(6011000000000000L ,6011999999999999L ))));
assertEquals("Mastercard", CreditCardChecker.getIssuer(String.valueOf(ThreadLocalRandom.current().nextLong(5100000000000000L ,5599999999999999L ))));
assertEquals("Unknown", CreditCardChecker.getIssuer(String.valueOf(ThreadLocalRandom.current().nextLong(0L ,3999999999999L ))));
assertEquals("Unknown", CreditCardChecker.getIssuer(String.valueOf(ThreadLocalRandom.current().nextLong(6012999999999999L ,9999999999999999L ))));
}
}
|