浏览代码

ValidateNonNegativeIntegerTest (2)

Andrew Grant 2 月之前
父节点
当前提交
d4fe8f4059

+ 2 - 2
src/main/java/scot/carricksoftware/grants/validators/helpers/ValidateTypesImpl.java

@@ -60,10 +60,10 @@ public class ValidateTypesImpl implements ValidateTypes {
             try {
             try {
                 int test = Integer.parseInt(integerString);
                 int test = Integer.parseInt(integerString);
                 if (test < 0) {
                 if (test < 0) {
-                    bindingResult.rejectValue(fieldName, negativeMessage, null, formatMessage);
+                    bindingResult.rejectValue(fieldName, ApplicationConstants.EMPTY_STRING, null, negativeMessage);
                 }
                 }
             } catch (NumberFormatException e) {
             } catch (NumberFormatException e) {
-                bindingResult.rejectValue(fieldName, formatMessage, null, formatMessage);
+                bindingResult.rejectValue(fieldName, ApplicationConstants.EMPTY_STRING, null, formatMessage);
             }
             }
         }
         }
     }
     }

+ 36 - 0
src/test/java/scot/carricksoftware/grants/validators/helpers/ValidateNonNegativeIntegerTest.java

@@ -15,6 +15,7 @@ import org.springframework.validation.BindingResult;
 
 
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoInteractions;
 import static scot.carricksoftware.grants.GenerateCertificateRandomValues.GetRandomString;
 import static scot.carricksoftware.grants.GenerateCertificateRandomValues.GetRandomString;
 
 
 @ExtendWith(MockitoExtension.class)
 @ExtendWith(MockitoExtension.class)
@@ -52,4 +53,39 @@ class ValidateNonNegativeIntegerTest {
         validateTypes.validateNonNegativeInteger("", fieldName, nullMessage, "", "", bindingResultMock);
         validateTypes.validateNonNegativeInteger("", fieldName, nullMessage, "", "", bindingResultMock);
         verify(bindingResultMock).rejectValue(fieldName, "", null, nullMessage);
         verify(bindingResultMock).rejectValue(fieldName, "", null, nullMessage);
     }
     }
+
+    @Test
+    public void validateNegativeInteger() {
+        String fieldName = GetRandomString();
+        String negativeMessage = GetRandomString();
+
+        validateTypes.validateNonNegativeInteger("-5", fieldName, "", "", negativeMessage, bindingResultMock);
+        verify(bindingResultMock).rejectValue(fieldName, "", null, negativeMessage);
+    }
+
+    @Test
+    public void validateZeroInteger() {
+        String fieldName = GetRandomString();
+
+        validateTypes.validateNonNegativeInteger("0", fieldName, "", "", "", bindingResultMock);
+        verifyNoInteractions(bindingResultMock);
+    }
+
+    @Test
+    public void validatePositiveInteger() {
+        String fieldName = GetRandomString();
+
+        validateTypes.validateNonNegativeInteger("1", fieldName, "", "", "", bindingResultMock);
+        verifyNoInteractions(bindingResultMock);
+    }
+
+
+    @Test
+    public void validateBadFormatInteger() {
+        String fieldName = GetRandomString();
+        String formatMessage = GetRandomString();
+
+        validateTypes.validateNonNegativeInteger("zz", fieldName, "", formatMessage, "", bindingResultMock);
+        verify(bindingResultMock).rejectValue(fieldName, "", null, formatMessage);
+    }
 }
 }