Răsfoiți Sursa

Refactored certificate validators (singles)

Andrew Grant 4 luni în urmă
părinte
comite
3d853bbc0b

+ 0 - 76
src/test/java/scot/carricksoftware/grants/validators/certificates/DeathCertificateCommandValidatorImplTest.java

@@ -1,76 +0,0 @@
-/*
- * Copyright (c) Andrew Grant of Carrick Software 19/03/2025, 11:37. All rights reserved.
- *
- */
-
-package scot.carricksoftware.grants.validators.certificates;
-
-
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.ExtendWith;
-import org.mockito.ArgumentCaptor;
-import org.mockito.Mock;
-import org.mockito.junit.jupiter.MockitoExtension;
-import org.springframework.validation.BindingResult;
-import scot.carricksoftware.grants.commands.certificates.deathcertificates.DeathCertificateCommand;
-import scot.carricksoftware.grants.commands.certificates.deathcertificates.DeathCertificateCommandImpl;
-import scot.carricksoftware.grants.validators.certificates.deathcertificate.DeathCertificateCommandValidatorImpl;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.verifyNoInteractions;
-import static scot.carricksoftware.grants.GenerateRandomPeopleValues.GetRandomPerson;
-
-@ExtendWith(MockitoExtension.class)
-class DeathCertificateCommandValidatorImplTest {
-
-    private DeathCertificateCommandValidatorImpl commandValidator;
-
-    private ArgumentCaptor<String> stringArgumentCaptor;
-    private ArgumentCaptor<String> stringArgumentCaptor2;
-    private ArgumentCaptor<String> stringArgumentCaptor3;
-    private ArgumentCaptor<Object[]> objectArgumentCaptor;
-
-    private DeathCertificateCommand deathCertificateCommand;
-
-    @Mock
-    BindingResult bindingResultMock;
-
-    @BeforeEach
-    void setUp() {
-        commandValidator = new DeathCertificateCommandValidatorImpl();
-        stringArgumentCaptor = ArgumentCaptor.forClass(String.class);
-        stringArgumentCaptor2 = ArgumentCaptor.forClass(String.class);
-        stringArgumentCaptor3 = ArgumentCaptor.forClass(String.class);
-        objectArgumentCaptor = ArgumentCaptor.forClass(Object[].class);
-
-        deathCertificateCommand = new DeathCertificateCommandImpl();
-    }
-
-    @Test
-    public void nullPersonTest() {
-
-        commandValidator.validate(deathCertificateCommand, bindingResultMock);
-
-        verify(bindingResultMock).rejectValue(stringArgumentCaptor.capture(),
-                stringArgumentCaptor2.capture(),
-                objectArgumentCaptor.capture(),
-                stringArgumentCaptor3.capture());
-
-        assertEquals("deceased", stringArgumentCaptor.getValue());
-        assertEquals("The person cannot be null.", stringArgumentCaptor3.getValue());
-
-    }
-
-    @Test
-    public void notNullPersonTest() {
-        deathCertificateCommand.setDeceased(GetRandomPerson());
-        commandValidator.validate(deathCertificateCommand, bindingResultMock);
-
-        verifyNoInteractions(bindingResultMock);
-
-    }
-
-
-}

+ 0 - 131
src/test/java/scot/carricksoftware/grants/validators/certificates/DivorceCertificateCommandValidatorTest.java

@@ -1,131 +0,0 @@
-/*
- * Copyright (c) Andrew Grant of Carrick Software 19/03/2025, 11:37. All rights reserved.
- *
- */
-
-package scot.carricksoftware.grants.validators.certificates;
-
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.ExtendWith;
-import org.mockito.ArgumentCaptor;
-import org.mockito.Mock;
-import org.mockito.junit.jupiter.MockitoExtension;
-import org.springframework.validation.BindingResult;
-import scot.carricksoftware.grants.commands.certificates.divorcecertificates.DivorceCertificateCommand;
-import scot.carricksoftware.grants.commands.certificates.divorcecertificates.DivorceCertificateCommandImpl;
-import scot.carricksoftware.grants.domains.people.Person;
-import scot.carricksoftware.grants.validators.certificates.divorcecertificate.DivorceCertificateCommandValidator;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
-import static org.mockito.Mockito.*;
-import static scot.carricksoftware.grants.GenerateRandomPeopleValues.GetRandomPerson;
-
-@ExtendWith(MockitoExtension.class)
-class DivorceCertificateCommandValidatorTest {
-
-    private DivorceCertificateCommandValidator commandValidator;
-
-    private DivorceCertificateCommand divorceCertificateCommand;
-
-    private ArgumentCaptor<String> stringArgumentCaptor;
-    private ArgumentCaptor<String> stringArgumentCaptor2;
-    private ArgumentCaptor<String> stringArgumentCaptor3;
-    private ArgumentCaptor<Object[]> objectArgumentCaptor;
-
-    @Mock
-    private BindingResult bindingResultMock;
-
-    @BeforeEach
-    void setUp() {
-        commandValidator = new DivorceCertificateCommandValidator();
-        divorceCertificateCommand = new DivorceCertificateCommandImpl();
-        stringArgumentCaptor = ArgumentCaptor.forClass(String.class);
-        stringArgumentCaptor2 = ArgumentCaptor.forClass(String.class);
-        stringArgumentCaptor3 = ArgumentCaptor.forClass(String.class);
-        objectArgumentCaptor = ArgumentCaptor.forClass(Object[].class);
-
-    }
-
-    @Test
-    public void nullFirstPartyTest() {
-        divorceCertificateCommand.setSecondParty(GetRandomPerson());
-        runAndCapture();
-
-        assertEquals("firstParty", stringArgumentCaptor.getValue());
-        assertEquals("The first party cannot be null.", stringArgumentCaptor3.getValue());
-    }
-
-
-    @Test
-    public void notnullFirstPartyTest() {
-        divorceCertificateCommand.setSecondParty(GetRandomPerson());
-        runAndCapture();
-
-        assertEquals("firstParty", stringArgumentCaptor.getValue());
-        assertEquals("The first party cannot be null.", stringArgumentCaptor3.getValue());
-    }
-
-    @Test
-    public void nullSecondPartyTest() {
-        divorceCertificateCommand.setFirstParty(GetRandomPerson());
-        runAndCapture();
-
-        assertEquals("secondParty", stringArgumentCaptor.getValue());
-        assertEquals("The second party cannot be null.", stringArgumentCaptor3.getValue());
-    }
-
-    private void runAndCapture() {
-        commandValidator.validate(divorceCertificateCommand, bindingResultMock);
-        verify(bindingResultMock, atLeast(1)).rejectValue(stringArgumentCaptor.capture(),
-                stringArgumentCaptor2.capture(),
-                objectArgumentCaptor.capture(),
-                stringArgumentCaptor3.capture());
-    }
-
-    @Test
-    public void samePersonTest() {
-        Person person = GetRandomPerson();
-        divorceCertificateCommand.setFirstParty(person);
-        divorceCertificateCommand.setSecondParty(person);
-
-        runAndCapture();
-
-        boolean foundFirstParty = false;
-        boolean foundSecondParty = false;
-        for (int i = 0; i < objectArgumentCaptor.getAllValues().size(); i++) {
-            if (stringArgumentCaptor.getAllValues().get(i).equals("firstParty")) {
-                if (stringArgumentCaptor3.getAllValues().get(i).equals("The two parties cannot be the same person.")) {
-                    foundFirstParty = true;
-                }
-            } else {
-                if (stringArgumentCaptor.getAllValues().get(i).equals("secondParty")) {
-                    if (stringArgumentCaptor3.getAllValues().get(i).equals("The two parties cannot be the same person.")) {
-                        foundSecondParty = true;
-                    }
-                }
-            }
-        }
-
-        assertTrue(foundFirstParty && foundSecondParty);
-    }
-
-    @Test
-    public void notTheSamePersonTest() {
-        Person firstParty = GetRandomPerson();
-        Person secondParty = GetRandomPerson();
-        while (!firstParty.getFirstName().equals(secondParty.getLastName())) {
-            secondParty = GetRandomPerson();
-        }
-
-        divorceCertificateCommand.setFirstParty(firstParty);
-        divorceCertificateCommand.setSecondParty(secondParty);
-
-        commandValidator.validate(divorceCertificateCommand, bindingResultMock);
-
-        verifyNoInteractions(bindingResultMock);
-    }
-
-
-}

+ 0 - 120
src/test/java/scot/carricksoftware/grants/validators/certificates/MarriageCertificateCommandValidatorTest.java

@@ -1,120 +0,0 @@
-/*
- * Copyright (c) Andrew Grant of Carrick Software 19/03/2025, 11:37. All rights reserved.
- *
- */
-
-package scot.carricksoftware.grants.validators.certificates;
-
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.ExtendWith;
-import org.mockito.ArgumentCaptor;
-import org.mockito.Mock;
-import org.mockito.junit.jupiter.MockitoExtension;
-import org.springframework.validation.BindingResult;
-import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommand;
-import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommandImpl;
-import scot.carricksoftware.grants.domains.people.Person;
-import scot.carricksoftware.grants.validators.certificates.marriagecertificate.MarriageCertificateCommandValidator;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
-import static org.mockito.Mockito.*;
-import static scot.carricksoftware.grants.GenerateRandomPeopleValues.GetRandomPerson;
-
-@ExtendWith(MockitoExtension.class)
-class MarriageCertificateCommandValidatorTest {
-
-    private MarriageCertificateCommandValidator commandValidator;
-
-    private MarriageCertificateCommand marriageCertificateCommand;
-
-    private ArgumentCaptor<String> stringArgumentCaptor;
-    private ArgumentCaptor<String> stringArgumentCaptor2;
-    private ArgumentCaptor<String> stringArgumentCaptor3;
-    private ArgumentCaptor<Object[]> objectArgumentCaptor;
-
-    @Mock
-    private BindingResult bindingResultMock;
-
-    @BeforeEach
-    void setUp() {
-        commandValidator = new MarriageCertificateCommandValidator();
-        marriageCertificateCommand = new MarriageCertificateCommandImpl();
-        stringArgumentCaptor = ArgumentCaptor.forClass(String.class);
-        stringArgumentCaptor2 = ArgumentCaptor.forClass(String.class);
-        stringArgumentCaptor3 = ArgumentCaptor.forClass(String.class);
-        objectArgumentCaptor = ArgumentCaptor.forClass(Object[].class);
-    }
-
-    @Test
-    public void nullBrideTest() {
-        marriageCertificateCommand.setGroom(GetRandomPerson());
-        runAndCapture();
-
-        assertEquals("bride", stringArgumentCaptor.getValue());
-        assertEquals("The bride cannot be null.", stringArgumentCaptor3.getValue());
-    }
-
-
-    @Test
-    public void nullGroomTest() {
-        marriageCertificateCommand.setBride(GetRandomPerson());
-        runAndCapture();
-
-        assertEquals("groom", stringArgumentCaptor.getValue());
-        assertEquals("The groom cannot be null.", stringArgumentCaptor3.getValue());
-    }
-
-    @Test
-    public void notNullPeopleTest() {
-        Person bride = GetRandomPerson();
-        Person groom = GetRandomPerson();
-        while (!bride.getFirstName().equals(groom.getFirstName())) {
-            groom = GetRandomPerson();
-        }
-
-        marriageCertificateCommand.setBride(bride);
-        marriageCertificateCommand.setGroom(groom);
-        commandValidator.validate(marriageCertificateCommand, bindingResultMock);
-
-        verify(bindingResultMock, times(0)).rejectValue(any(), any());
-    }
-
-    private void runAndCapture() {
-        commandValidator.validate(marriageCertificateCommand, bindingResultMock);
-        verify(bindingResultMock, atLeast(1)).rejectValue(stringArgumentCaptor.capture(),
-                stringArgumentCaptor2.capture(),
-                objectArgumentCaptor.capture(),
-                stringArgumentCaptor3.capture());
-    }
-
-    @Test
-    public void samePersonTest() {
-        Person person = GetRandomPerson();
-        marriageCertificateCommand.setBride(person);
-        marriageCertificateCommand.setGroom(person);
-
-        runAndCapture();
-
-        boolean foundGroom = false;
-        boolean foundBride = false;
-        for (int i = 0; i < objectArgumentCaptor.getAllValues().size(); i++) {
-            if (stringArgumentCaptor.getAllValues().get(i).equals("groom")) {
-                if (stringArgumentCaptor3.getAllValues().get(i).equals("The bride and groom cannot be the same person.")) {
-                    foundGroom = true;
-                }
-            } else {
-                if (stringArgumentCaptor.getAllValues().get(i).equals("bride")) {
-                    if (stringArgumentCaptor3.getAllValues().get(i).equals("The bride and groom cannot be the same person.")) {
-                        foundBride = true;
-                    }
-                }
-            }
-        }
-
-        assertTrue(foundGroom && foundBride);
-    }
-
-
-}