Kaynağa Gözat

changed random number to start at higher numbers to avoid invalid numbers

Joshua Wurdemann 8 yıl önce
ebeveyn
işleme
8ae7904b20

+ 17
- 6
src/main/java/com/zipcodewilmington/phone/PhoneNumberFactory.java Dosyayı Görüntüle

@@ -1,5 +1,6 @@
1 1
 package com.zipcodewilmington.phone;
2 2
 
3
+import com.sun.javafx.binding.StringFormatter;
3 4
 import com.zipcodewilmington.exceptions.InvalidPhoneNumberFormatException;
4 5
 import com.zipcodewilmington.tools.RandomNumberFactory;
5 6
 
@@ -34,11 +35,11 @@ public final class PhoneNumberFactory {
34 35
      */ //TODO - Implement logic
35 36
     public static PhoneNumber createRandomPhoneNumber() {
36 37
 
37
-       int areaCode =  RandomNumberFactory.createInteger(0, 999);
38
-       int centralOfficeCode = RandomNumberFactory.createInteger(0, 999);
39
-       int phoneline = RandomNumberFactory.createInteger(0, 9999);
38
+        int areaCode = RandomNumberFactory.createInteger(100, 999);
39
+        int centralOfficeCode = RandomNumberFactory.createInteger(100, 999);
40
+        int phoneLine = RandomNumberFactory.createInteger(1000, 9999);
40 41
 
41
-        return createPhoneNumberSafely(areaCode, centralOfficeCode, phoneline);
42
+        return createPhoneNumberSafely(areaCode, centralOfficeCode, phoneLine);
42 43
     }
43 44
 
44 45
 
@@ -48,9 +49,19 @@ public final class PhoneNumberFactory {
48 49
      * @param phoneLineCode     - 4 digit code
49 50
      * @return a new phone number object
50 51
      */ //TODO - if input is valid, return respective PhoneNumber object, else return null
51
-    public static PhoneNumber createPhoneNumberSafely(int areaCode, int centralOfficeCode, int phoneLineCode)  {
52
+    public static PhoneNumber createPhoneNumberSafely(int areaCode, int centralOfficeCode, int phoneLineCode) {
53
+        //StringFormatter.format(%2)
54
+
52 55
         StringBuilder sb = new StringBuilder();
53
-        sb.append("(" + areaCode + ")" + "-" + centralOfficeCode + "-" + phoneLineCode);
56
+    //        sb.append("(");
57
+    //        sb.append(String.format("%02d", areaCode));
58
+    //        sb.append(")");
59
+    //        sb.append("-");
60
+    //        sb.append(String.format("%02d", centralOfficeCode));
61
+    //        sb.append("-");
62
+    //        sb.append(String.format("%03d", phoneLineCode));
63
+
64
+           sb.append("(" + areaCode + ")" + "-" + centralOfficeCode + "-" + phoneLineCode);
54 65
         String s = sb.toString();
55 66
         try {
56 67
             return createPhoneNumber(s);

+ 1
- 1
src/test/java/com/zipcodewilmington/PhoneNumberFactoryTest.java Dosyayı Görüntüle

@@ -83,7 +83,7 @@ public class PhoneNumberFactoryTest {
83 83
             // : Given
84 84
             // : When
85 85
             PhoneNumber phoneNumber = PhoneNumberFactory.createRandomPhoneNumber();
86
-
86
+            
87 87
             // : Then
88 88
             Assert.assertTrue(phoneNumber != null);
89 89
         }