Browse Source

UpdateRecordedYearThrowsTest

Andrew Grant 7 months ago
parent
commit
54c9990867

+ 6 - 0
src/main/java/scot/carricksoftware/grants/services/census/censusentry/UpdateRecordedYearOfBirthImpl.java

@@ -53,6 +53,8 @@ public class UpdateRecordedYearOfBirthImpl implements UpdateRecordedYearOfBirth
                     }
                 }
             }
+        } else {
+            logNoPersonError();
         }
 
     }
@@ -72,4 +74,8 @@ public class UpdateRecordedYearOfBirthImpl implements UpdateRecordedYearOfBirth
     private void logNoCommandError(){
         throw new NullPointerException("Person Command is null");
     }
+
+    private void logNoPersonError(){
+        throw new NullPointerException("Person is null.");
+    }
 }

+ 0 - 1
src/test/java/scot/carricksoftware/grants/services/census/censusentry/UpdateRecordedYearOfBirthFailingTest.java

@@ -64,7 +64,6 @@ class UpdateRecordedYearOfBirthFailingTest {
     }
 
 
-
     @Test
     public void theYearOfBirthIsNotResetTest() {
         when(censusEntryCommandMock.getPerson()).thenReturn(personMock);

+ 51 - 0
src/test/java/scot/carricksoftware/grants/services/census/censusentry/UpdateRecordedYearThrowsTest.java

@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2025.  Andrew Grant Carrick Software. All rights reserved
+ *
+ */
+
+package scot.carricksoftware.grants.services.census.censusentry;
+
+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 scot.carricksoftware.grants.commands.census.CensusEntryCommand;
+import scot.carricksoftware.grants.converters.people.PersonConverter;
+import scot.carricksoftware.grants.services.people.PersonService;
+
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+@ExtendWith(MockitoExtension.class)
+class UpdateRecordedYearThrowsTest {
+
+    private UpdateRecordedYearOfBirth updateRecordedYearOfBirth;
+
+
+    @Mock
+    private PersonService personServiceMock;
+
+    @Mock
+    private CensusEntryCommand censusEntryCommandMock;
+
+    @Mock
+    private PersonConverter personConverterMock;
+
+    @BeforeEach
+    void setUp() {
+        updateRecordedYearOfBirth = new UpdateRecordedYearOfBirthImpl(personConverterMock, personServiceMock);
+    }
+
+    @Test
+    public void noPersonIsThrownTest() {
+        Exception exception = assertThrows(NullPointerException.class,
+                () -> updateRecordedYearOfBirth.updateRecordedYearOfBirth(censusEntryCommandMock));
+
+        String expectedMessage = "Person is null.";
+        String actualMessage = exception.getMessage();
+        assertTrue(actualMessage.contains(expectedMessage));
+    }
+
+
+}