Преглед на файлове

Replaced "0000000000" with exceptions

Fixes #252. Passing invalid input to the constructor should now expect
an IllegalArgumentException.
Colin Mullikin преди 9 години
родител
ревизия
926a703bf7
променени са 2 файла, в които са добавени 8 реда и са изтрити 14 реда
  1. 6
    2
      exercises/phone-number/src/example/java/PhoneNumber.java
  2. 2
    12
      exercises/phone-number/src/test/java/PhoneNumberTest.java

+ 6
- 2
exercises/phone-number/src/example/java/PhoneNumber.java Целия файл

@@ -16,8 +16,12 @@ public class PhoneNumber {
16 16
         }
17 17
 
18 18
         final boolean numberIsValid = (number.length() == 10);
19
-        final String normalizedNumber = numberIsValid ? number : "0000000000";
20
-        return normalizedNumber;
19
+
20
+        if(!numberIsValid) {
21
+            throw new IllegalArgumentException();
22
+        }
23
+        
24
+        return number;
21 25
     }
22 26
 
23 27
     public String getNumber() {

+ 2
- 12
exercises/phone-number/src/test/java/PhoneNumberTest.java Целия файл

@@ -39,25 +39,15 @@ public class PhoneNumberTest {
39 39
     }
40 40
 
41 41
     @Ignore
42
-    @Test
42
+    @Test(expected = IllegalArgumentException.class)
43 43
     public void invalidWhenOnly11Digits() {
44
-        final String expectedNumber = "0000000000";
45 44
         final String actualNumber = new PhoneNumber("21234567890").getNumber();
46
-
47
-        assertEquals(
48
-            expectedNumber, actualNumber
49
-        );
50 45
     }
51 46
 
52 47
     @Ignore
53
-    @Test
48
+    @Test(expected = IllegalArgumentException.class)
54 49
     public void invalidWhen9Digits() {
55
-        final String expectedNumber = "0000000000";
56 50
         final String actualNumber = new PhoneNumber("123456789").getNumber();
57
-
58
-        assertEquals(
59
-            expectedNumber, actualNumber
60
-        );
61 51
     }
62 52
 
63 53
     @Ignore