diff options
| author | mo <mo.khan@gmail.com> | 2019-06-09 19:15:22 -0600 |
|---|---|---|
| committer | mo <mo.khan@gmail.com> | 2019-06-09 19:15:22 -0600 |
| commit | 950afb40ac30668f3358d7eab2a1b04c1e2c591b (patch) | |
| tree | db0a98042051a8311223e0b3683421b44acbd023 /src | |
| parent | ac9703fb2f428c58ac3dff57b5ecb02ab7d6ed87 (diff) | |
extract identifyCompany method
Diffstat (limited to 'src')
| -rw-r--r-- | src/Q3/CreditCard.java | 33 | ||||
| -rw-r--r-- | src/Q3/CreditCardTest.java | 8 |
2 files changed, 21 insertions, 20 deletions
diff --git a/src/Q3/CreditCard.java b/src/Q3/CreditCard.java index e82eb6c..1146129 100644 --- a/src/Q3/CreditCard.java +++ b/src/Q3/CreditCard.java @@ -11,22 +11,7 @@ public class CreditCard { public CreditCard(String num) { this.ccNumber = num; - if (validateCompany()) { - switch (num.charAt(0)) { - case '3': - this.company = "American Express"; - break; - case '4': - this.company = "Visa"; - break; - case '5': - this.company = "MasterCard"; - break; - case '6': - this.company = "Discover"; - break; - } - } + this.company = this.identifyCompany(num); } public int getEvenSum() { @@ -75,4 +60,20 @@ public class CreditCard { public boolean validateSums() { return false; } + + private String identifyCompany(String number) { + if (validateCompany()) + switch (number.charAt(0)) { + case '3': + return "American Express"; + case '4': + return "Visa"; + case '5': + return "MasterCard"; + case '6': + return "Discover"; + } + + return "Unknown"; + } } diff --git a/src/Q3/CreditCardTest.java b/src/Q3/CreditCardTest.java index 373e79e..dbbd996 100644 --- a/src/Q3/CreditCardTest.java +++ b/src/Q3/CreditCardTest.java @@ -21,10 +21,6 @@ public class CreditCardTest extends TestCase { assertTrue(true); } - // 4 for Visa cards - // 5 for Master cards, - // 37 for American Express cards, - // 6 for Discover cards. public void test_getCompany() { assertEquals(CreateSUT("4111111111111111").getCompany(), "Visa"); assertEquals(CreateSUT("5555555555554444").getCompany(), "MasterCard"); @@ -32,6 +28,10 @@ public class CreditCardTest extends TestCase { assertEquals(CreateSUT("6011111111111117").getCompany(), "Discover"); } + public void test_getEvenSum() { + assertEquals(CreateSUT("4388576018402626").getEvenSum(), 0); + } + // public void test_isValid() { // assertTrue(CreateSUT("49927398716").isValid()); // assertFalse(CreateSUT("49927398717").isValid()); |
