浏览代码

Add appendixImage Validator Test

Andrew Grant 1 月之前
父节点
当前提交
7c0df1d139

+ 76 - 0
src/test/java/scot/carricksoftware/grants/validators/images/appendiximage/AppendixImageCommandValidatorImageSizeTest.java

@@ -0,0 +1,76 @@
+/*
+ * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
+ *
+ */
+
+package scot.carricksoftware.grants.validators.images.appendiximage;
+
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.Mock;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.springframework.validation.BindingResult;
+import scot.carricksoftware.grants.commands.images.AppendixImageCommand;
+import scot.carricksoftware.grants.validators.helpers.ValidateTypes;
+import scot.carricksoftware.grants.validators.images.AppendixImageCommandValidator;
+import scot.carricksoftware.grants.validators.images.AppendixImageCommandValidatorImpl;
+
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+import static scot.carricksoftware.grants.GenerateCertificateRandomValues.GetRandomString;
+
+
+@ExtendWith(MockitoExtension.class)
+class AppendixImageCommandValidatorImageSizeTest {
+
+    private AppendixImageCommandValidator validator;
+
+    @Mock
+    private BindingResult bindingResultMock;
+
+    @Mock
+    private ValidateTypes validateTypesMock;
+
+    @Mock
+    private AppendixImageCommand appendixImageCommandMock;
+
+    @BeforeEach
+    void setUp() {
+        validator = new AppendixImageCommandValidatorImpl(validateTypesMock);
+    }
+
+    @Test
+    void validateHeightIsRunTest() {
+        String height = GetRandomString();
+        when(appendixImageCommandMock.getHeight()).thenReturn(height);
+        validator.validate(appendixImageCommandMock, bindingResultMock);
+
+        verify(validateTypesMock).validateIntegerRange(height,
+                100, 10000,
+                "height",
+                "Height cannot be null.",
+                "Height must be an integer.",
+                "Height must be between 100 and 10000",
+                bindingResultMock);
+    }
+
+    @Test
+    void validateWidthIsRunTest() {
+        String width = GetRandomString();
+        when(appendixImageCommandMock.getWidth()).thenReturn(width);
+        validator.validate(appendixImageCommandMock, bindingResultMock);
+
+        verify(validateTypesMock).validateIntegerRange(width,
+                100, 10000,
+                "width",
+                "Width cannot be null.",
+                "Width must be an integer.",
+                "Width must be between 100 and 10000",
+                bindingResultMock);
+    }
+
+
+
+}

+ 78 - 0
src/test/java/scot/carricksoftware/grants/validators/images/appendiximage/AppendixImageCommandValidatorTest.java

@@ -0,0 +1,78 @@
+/*
+ * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
+ *
+ */
+
+package scot.carricksoftware.grants.validators.images.appendiximage;
+
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.Mock;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.springframework.validation.BindingResult;
+import scot.carricksoftware.grants.commands.images.AppendixImageCommand;
+import scot.carricksoftware.grants.domains.images.Image;
+import scot.carricksoftware.grants.validators.helpers.ValidateTypes;
+import scot.carricksoftware.grants.validators.images.AppendixImageCommandValidator;
+import scot.carricksoftware.grants.validators.images.AppendixImageCommandValidatorImpl;
+
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+import static scot.carricksoftware.grants.GenerateCertificateRandomValues.GetRandomString;
+
+
+@ExtendWith(MockitoExtension.class)
+class AppendixImageCommandValidatorTest {
+
+    private AppendixImageCommandValidator validator;
+
+    @Mock
+    private BindingResult bindingResultMock;
+
+    @Mock
+    private ValidateTypes validateTypesMock;
+
+    @Mock
+    private AppendixImageCommand appendixImageCommandMock;
+
+    @BeforeEach
+    void setUp() {
+        validator = new AppendixImageCommandValidatorImpl(validateTypesMock);
+    }
+
+    @Test
+    void validateImageIsRunTest() {
+        Image image = new Image();
+        when(appendixImageCommandMock.getImage()).thenReturn(image);
+        validator.validate(appendixImageCommandMock, bindingResultMock);
+
+        verify(validateTypesMock).validateImage(image,
+                "image", "The image cannot be null.", bindingResultMock);
+    }
+
+    @Test
+    void validateOrderIsRunTest() {
+        String order = GetRandomString();
+        when(appendixImageCommandMock.getOrder()).thenReturn(order);
+        validator.validate(appendixImageCommandMock, bindingResultMock);
+
+        verify(validateTypesMock).validateNonNegativeInteger(order,
+                "order", "Order must exist.", "The order must be an integer.",
+                "The order must be non-negative.", bindingResultMock);
+    }
+
+    @Test
+    void validateLevelIsRunTest() {
+        String level = GetRandomString();
+        when(appendixImageCommandMock.getLevel()).thenReturn(level);
+        validator.validate(appendixImageCommandMock, bindingResultMock);
+
+        verify(validateTypesMock).validateNonNegativeInteger(level,
+                "level", "Level must exist.", "Level must be an integer.",
+                "The level must be non-negative.", bindingResultMock);
+    }
+
+
+}

+ 4 - 2
src/test/java/scot/carricksoftware/grants/validators/images/ImageCommandValidatorTest.java → src/test/java/scot/carricksoftware/grants/validators/images/image/ImageCommandValidatorTest.java

@@ -1,9 +1,9 @@
 /*
- * Copyright (c) Andrew Grant of Carrick Software 30/03/2025, 14:31. All rights reserved.
+ * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
  *
  */
 
-package scot.carricksoftware.grants.validators.images;
+package scot.carricksoftware.grants.validators.images.image;
 
 
 import org.junit.jupiter.api.BeforeEach;
@@ -14,6 +14,8 @@ import org.mockito.junit.jupiter.MockitoExtension;
 import org.springframework.validation.BindingResult;
 import scot.carricksoftware.grants.commands.images.ImageCommand;
 import scot.carricksoftware.grants.validators.helpers.ValidateTypes;
+import scot.carricksoftware.grants.validators.images.ImageCommandValidator;
+import scot.carricksoftware.grants.validators.images.ImageCommandValidatorImpl;
 
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;

+ 4 - 2
src/test/java/scot/carricksoftware/grants/validators/images/PersonImageCommandValidatorImageSizeTest.java → src/test/java/scot/carricksoftware/grants/validators/images/personimage/PersonImageCommandValidatorImageSizeTest.java

@@ -1,9 +1,9 @@
 /*
- * Copyright (c) Andrew Grant of Carrick Software 30/03/2025, 14:31. All rights reserved.
+ * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
  *
  */
 
-package scot.carricksoftware.grants.validators.images;
+package scot.carricksoftware.grants.validators.images.personimage;
 
 
 import org.junit.jupiter.api.BeforeEach;
@@ -14,6 +14,8 @@ import org.mockito.junit.jupiter.MockitoExtension;
 import org.springframework.validation.BindingResult;
 import scot.carricksoftware.grants.commands.images.PersonImageCommand;
 import scot.carricksoftware.grants.validators.helpers.ValidateTypes;
+import scot.carricksoftware.grants.validators.images.PersonImageCommandValidator;
+import scot.carricksoftware.grants.validators.images.PersonImageCommandValidatorImpl;
 
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;

+ 4 - 2
src/test/java/scot/carricksoftware/grants/validators/images/PersonImageCommandValidatorTest.java → src/test/java/scot/carricksoftware/grants/validators/images/personimage/PersonImageCommandValidatorTest.java

@@ -1,9 +1,9 @@
 /*
- * Copyright (c) Andrew Grant of Carrick Software 30/03/2025, 14:31. All rights reserved.
+ * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
  *
  */
 
-package scot.carricksoftware.grants.validators.images;
+package scot.carricksoftware.grants.validators.images.personimage;
 
 
 import org.junit.jupiter.api.BeforeEach;
@@ -16,6 +16,8 @@ import scot.carricksoftware.grants.commands.images.PersonImageCommand;
 import scot.carricksoftware.grants.domains.images.Image;
 import scot.carricksoftware.grants.domains.people.Person;
 import scot.carricksoftware.grants.validators.helpers.ValidateTypes;
+import scot.carricksoftware.grants.validators.images.PersonImageCommandValidator;
+import scot.carricksoftware.grants.validators.images.PersonImageCommandValidatorImpl;
 
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;

+ 3 - 2
src/test/java/scot/carricksoftware/grants/validators/images/PlaceImageCommandValidatorImplTest.java → src/test/java/scot/carricksoftware/grants/validators/images/placeimage/PlaceImageCommandValidatorImplTest.java

@@ -1,9 +1,9 @@
 /*
- * Copyright (c) Andrew Grant of Carrick Software 30/03/2025, 14:31. All rights reserved.
+ * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
  *
  */
 
-package scot.carricksoftware.grants.validators.images;
+package scot.carricksoftware.grants.validators.images.placeimage;
 
 
 import org.junit.jupiter.api.BeforeEach;
@@ -15,6 +15,7 @@ import org.mockito.junit.jupiter.MockitoExtension;
 import org.springframework.validation.BindingResult;
 import scot.carricksoftware.grants.commands.images.PlaceImageCommand;
 import scot.carricksoftware.grants.commands.images.PlaceImageCommandImpl;
+import scot.carricksoftware.grants.validators.images.PlaceImageCommandValidator;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.mockito.Mockito.verify;