Browse Source

AddAttributes::AddMarriageCertificate

Andrew Grant 3 tháng trước cách đây
mục cha
commit
e4a39660a3

+ 9 - 28
src/main/java/scot/carricksoftware/grants/controllers/certificates/marriagecertificates/MarriageCertificateFormControllerImpl.java

@@ -23,13 +23,11 @@ import scot.carricksoftware.grants.constants.AttributeConstants;
 import scot.carricksoftware.grants.constants.CertificateMappingConstants;
 import scot.carricksoftware.grants.constants.MappingConstants;
 import scot.carricksoftware.grants.constants.ViewConstants;
+import scot.carricksoftware.grants.controllers.AddAttributes;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateCommandConverterImpl;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateConverterImpl;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.MarriageCertificateService;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.helpers.SetYearMarried;
-import scot.carricksoftware.grants.services.people.PersonService;
-import scot.carricksoftware.grants.services.places.organisations.OrganisationService;
-import scot.carricksoftware.grants.services.places.places.PlaceService;
 import scot.carricksoftware.grants.validators.certificates.marriagecertificate.MarriageCertificateCommandValidator;
 
 @SuppressWarnings("LoggingSimilarMessage")
@@ -42,33 +40,26 @@ public class MarriageCertificateFormControllerImpl implements MarriageCertificat
     private final MarriageCertificateCommandConverterImpl marriageCertificateCommandConverter;
     private final MarriageCertificateConverterImpl marriageCertificateConverter;
     private final MarriageCertificateCommandValidator marriageCertificateCommandValidator;
-    private final PersonService personService;
-    private final OrganisationService organisationService;
-    private final PlaceService placeService;
     private final CapitaliseMarriageCertificate capitaliseMarriageCertificate;
     private final SetYearMarried setYearMarried;
+    private final AddAttributes addAttributes;
 
 
     public MarriageCertificateFormControllerImpl(MarriageCertificateService marriageCertificateService,
                                                  MarriageCertificateCommandConverterImpl marriageCertificateCommandConverter,
                                                  MarriageCertificateConverterImpl marriageCertificateConverter,
                                                  MarriageCertificateCommandValidator marriageCertificateCommandValidator,
-                                                 PersonService personService,
-                                                 OrganisationService organisationService,
-                                                 PlaceService placeService,
                                                  CapitaliseMarriageCertificate capitaliseMarriageCertificate,
-                                                 SetYearMarried setYearMarried) {
+                                                 SetYearMarried setYearMarried, AddAttributes addAttributes) {
         this.marriageCertificateService = marriageCertificateService;
         this.marriageCertificateCommandConverter = marriageCertificateCommandConverter;
 
 
         this.marriageCertificateConverter = marriageCertificateConverter;
         this.marriageCertificateCommandValidator = marriageCertificateCommandValidator;
-        this.personService = personService;
-        this.organisationService = organisationService;
-        this.placeService = placeService;
         this.capitaliseMarriageCertificate = capitaliseMarriageCertificate;
         this.setYearMarried = setYearMarried;
+        this.addAttributes = addAttributes;
     }
 
     @SuppressWarnings("SameReturnValue")
@@ -77,9 +68,7 @@ public class MarriageCertificateFormControllerImpl implements MarriageCertificat
     public final String getNewMarriageCertificate(final Model model) {
         logger.debug("MarriageCertificateFormControllerImpl::getNewMarriageCertificate");
         model.addAttribute(AttributeConstants.MARRIAGE_CERTIFICATE_COMMAND, new MarriageCertificateCommandImpl());
-        model.addAttribute(AttributeConstants.PEOPLE, personService.findAll());
-        model.addAttribute(AttributeConstants.ORGANISATIONS, organisationService.findAll());
-        model.addAttribute(AttributeConstants.PLACES, placeService.findAll());
+        addAttributes.AddMarriageCertificate(model);
         return ViewConstants.MARRIAGE_CERTIFICATE_FORM;
     }
 
@@ -94,9 +83,7 @@ public class MarriageCertificateFormControllerImpl implements MarriageCertificat
     @NotNull
     private String getString(String id, Model model) {
         model.addAttribute(AttributeConstants.MARRIAGE_CERTIFICATE_COMMAND, marriageCertificateService.findById(Long.valueOf(id)));
-        model.addAttribute(AttributeConstants.PEOPLE, personService.findAll());
-        model.addAttribute(AttributeConstants.ORGANISATIONS, organisationService.findAll());
-        model.addAttribute(AttributeConstants.PLACES, placeService.findAll());
+        addAttributes.AddMarriageCertificate(model);
         return ViewConstants.MARRIAGE_CERTIFICATE_FORM;
     }
 
@@ -113,17 +100,13 @@ public class MarriageCertificateFormControllerImpl implements MarriageCertificat
 
         if (bindingResult.hasErrors()) {
             bindingResult.getAllErrors().forEach(error -> logger.debug(error.getDefaultMessage()));
-            model.addAttribute(AttributeConstants.PEOPLE, personService.findAll());
-            model.addAttribute(AttributeConstants.ORGANISATIONS, organisationService.findAll());
-            model.addAttribute(AttributeConstants.PLACES, placeService.findAll());
+            addAttributes.AddMarriageCertificate(model);
             return ViewConstants.MARRIAGE_CERTIFICATE_FORM;
         }
 
         MarriageCertificateCommand savedCommand = marriageCertificateService.saveMarriageCertificateCommand(marriageCertificateCommand);
         model.addAttribute(AttributeConstants.MARRIAGE_CERTIFICATE_COMMAND, savedCommand);
-        model.addAttribute(AttributeConstants.PEOPLE, personService.findAll());
-        model.addAttribute(AttributeConstants.ORGANISATIONS, organisationService.findAll());
-        model.addAttribute(AttributeConstants.PLACES, placeService.findAll());
+        addAttributes.AddMarriageCertificate(model);
         return MappingConstants.REDIRECT + CertificateMappingConstants.MARRIAGE_CERTIFICATE_SHOW.replace("{id}", "" + savedCommand.getId());
     }
 
@@ -135,9 +118,7 @@ public class MarriageCertificateFormControllerImpl implements MarriageCertificat
         logger.debug("MarriageCertificateFormControllerImpl::saveOrUpdate");
         MarriageCertificateCommand savedCommand = marriageCertificateConverter.convert(marriageCertificateService.findById(Long.valueOf(id)));
         model.addAttribute(AttributeConstants.MARRIAGE_CERTIFICATE_COMMAND, savedCommand);
-        model.addAttribute(AttributeConstants.PEOPLE, personService.findAll());
-        model.addAttribute(AttributeConstants.ORGANISATIONS, organisationService.findAll());
-        model.addAttribute(AttributeConstants.PLACES, placeService.findAll());
+        addAttributes.AddMarriageCertificate(model);
         return ViewConstants.MARRIAGE_CERTIFICATE_FORM;
     }
 

+ 6 - 16
src/test/java/scot/carricksoftware/grants/controllers/certificates/marriagecertificates/MarriageCertificateFormControllerCapitalisationTest.java

@@ -16,13 +16,11 @@ import org.springframework.validation.BindingResult;
 import scot.carricksoftware.grants.capitalisation.certificates.marriagecertificates.CapitaliseMarriageCertificate;
 import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommand;
 import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommandImpl;
+import scot.carricksoftware.grants.controllers.AddAttributes;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateCommandConverterImpl;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateConverterImpl;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.MarriageCertificateService;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.helpers.SetYearMarried;
-import scot.carricksoftware.grants.services.people.PersonService;
-import scot.carricksoftware.grants.services.places.organisations.OrganisationService;
-import scot.carricksoftware.grants.services.places.places.PlaceService;
 import scot.carricksoftware.grants.validators.certificates.marriagecertificate.MarriageCertificateCommandValidator;
 
 import static org.mockito.Mockito.verify;
@@ -48,15 +46,6 @@ public class MarriageCertificateFormControllerCapitalisationTest {
     @Mock
     private BindingResult bindingResultMock;
 
-    @Mock
-    private PersonService personServiceMock;
-
-    @Mock
-    private OrganisationService organisationServiceMock;
-
-    @Mock
-    private PlaceService placeServiceMock;
-
     @Mock
     private CapitaliseMarriageCertificate capitaliseMarriageCertificateMock;
 
@@ -66,6 +55,9 @@ public class MarriageCertificateFormControllerCapitalisationTest {
     @Mock
     private SetYearMarried setYearMarriedMock;
 
+    @Mock
+    private AddAttributes addAttributesMock;
+
     @Mock
     private Model modelMock;
 
@@ -76,11 +68,9 @@ public class MarriageCertificateFormControllerCapitalisationTest {
                 marriageCertificateCommandConverterMock,
                 marriageCertificateConverterMock,
                 marriageCertificateCommandValidatorMock,
-                personServiceMock,
-                organisationServiceMock,
-                placeServiceMock,
                 capitaliseMarriageCertificateMock,
-                setYearMarriedMock);
+                setYearMarriedMock,
+                addAttributesMock);
     }
 
 

+ 6 - 16
src/test/java/scot/carricksoftware/grants/controllers/certificates/marriagecertificates/MarriageCertificateFormControllerSaveOrUpdateTest.java

@@ -15,13 +15,11 @@ import org.springframework.validation.BindingResult;
 import scot.carricksoftware.grants.capitalisation.certificates.marriagecertificates.CapitaliseMarriageCertificate;
 import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommand;
 import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommandImpl;
+import scot.carricksoftware.grants.controllers.AddAttributes;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateCommandConverterImpl;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateConverterImpl;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.MarriageCertificateService;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.helpers.SetYearMarried;
-import scot.carricksoftware.grants.services.people.PersonService;
-import scot.carricksoftware.grants.services.places.organisations.OrganisationService;
-import scot.carricksoftware.grants.services.places.places.PlaceService;
 import scot.carricksoftware.grants.validators.certificates.marriagecertificate.MarriageCertificateCommandValidator;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -44,21 +42,15 @@ public class MarriageCertificateFormControllerSaveOrUpdateTest {
     @Mock
     private MarriageCertificateConverterImpl marriageCertificateConverterMock;
 
-    @Mock
-    private PersonService personServiceMock;
-
-    @Mock
-    private OrganisationService organisationServiceMock;
-
-    @Mock
-    private PlaceService placeServiceMock;
-
     @Mock
     private CapitaliseMarriageCertificate capitaliseMarriageCertificateMock;
 
     @Mock
     private SetYearMarried setYearMarriedMock;
 
+    @Mock
+    private AddAttributes addAttributesMock;
+
     @Mock
     Model modelMock;
 
@@ -77,11 +69,9 @@ public class MarriageCertificateFormControllerSaveOrUpdateTest {
                 marriageCertificateCommandConverterMock,
                 marriageCertificateConverterMock,
                 marriageCertificateCommandValidatorMock,
-                personServiceMock,
-                organisationServiceMock,
-                placeServiceMock,
                 capitaliseMarriageCertificateMock,
-                setYearMarriedMock);
+                setYearMarriedMock,
+                addAttributesMock);
         marriageCertificateCommand = new MarriageCertificateCommandImpl();
     }
 

+ 6 - 16
src/test/java/scot/carricksoftware/grants/controllers/certificates/marriagecertificates/MarriageCertificateFormControllerSetDatesTest.java

@@ -16,13 +16,11 @@ import org.springframework.validation.BindingResult;
 import scot.carricksoftware.grants.capitalisation.certificates.marriagecertificates.CapitaliseMarriageCertificate;
 import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommand;
 import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommandImpl;
+import scot.carricksoftware.grants.controllers.AddAttributes;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateCommandConverterImpl;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateConverterImpl;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.MarriageCertificateService;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.helpers.SetYearMarried;
-import scot.carricksoftware.grants.services.people.PersonService;
-import scot.carricksoftware.grants.services.places.organisations.OrganisationService;
-import scot.carricksoftware.grants.services.places.places.PlaceService;
 import scot.carricksoftware.grants.validators.certificates.marriagecertificate.MarriageCertificateCommandValidator;
 
 import static org.mockito.Mockito.verify;
@@ -48,21 +46,15 @@ public class MarriageCertificateFormControllerSetDatesTest {
     @Mock
     private BindingResult bindingResultMock;
 
-    @Mock
-    private PersonService personServiceMock;
-
-    @Mock
-    private OrganisationService organisationServiceMock;
-
-    @Mock
-    private PlaceService placeServiceMock;
-
     @Mock
     private CapitaliseMarriageCertificate capitaliseMarriageCertificateMock;
 
     @Mock
     private MarriageCertificateCommandValidator marriageCertificateCommandValidatorMock;
 
+    @Mock
+    private AddAttributes addAttributesMock;
+
     @Mock
     private SetYearMarried setYearMarriedMock;
 
@@ -76,11 +68,9 @@ public class MarriageCertificateFormControllerSetDatesTest {
                 marriageCertificateCommandConverterMock,
                 marriageCertificateConverterMock,
                 marriageCertificateCommandValidatorMock,
-                personServiceMock,
-                organisationServiceMock,
-                placeServiceMock,
                 capitaliseMarriageCertificateMock,
-                setYearMarriedMock);
+                setYearMarriedMock,
+                addAttributesMock);
     }
 
 

+ 6 - 42
src/test/java/scot/carricksoftware/grants/controllers/certificates/marriagecertificates/MarriageCertificateFormControllerTest.java

@@ -9,25 +9,21 @@ package scot.carricksoftware.grants.controllers.certificates.marriagecertificate
 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.ui.Model;
 import scot.carricksoftware.grants.capitalisation.certificates.marriagecertificates.CapitaliseMarriageCertificate;
 import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommand;
 import scot.carricksoftware.grants.constants.AttributeConstants;
+import scot.carricksoftware.grants.controllers.AddAttributes;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateCommandConverterImpl;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateConverterImpl;
 import scot.carricksoftware.grants.domains.certificates.MarriageCertificate;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.MarriageCertificateService;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.helpers.SetYearMarried;
-import scot.carricksoftware.grants.services.people.PersonService;
-import scot.carricksoftware.grants.services.places.organisations.OrganisationService;
-import scot.carricksoftware.grants.services.places.places.PlaceService;
 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.GenerateCertificateRandomValues.*;
 import static scot.carricksoftware.grants.GenerateRandomNumberValues.GetRandomLong;
@@ -48,21 +44,15 @@ public class MarriageCertificateFormControllerTest {
     @Mock
     private MarriageCertificateConverterImpl marriageCertificateConverterMock;
 
-    @Mock
-    private PersonService personServiceMock;
-
-    @Mock
-    private OrganisationService organisationServiceMock;
-
-    @Mock
-    private PlaceService placeServiceMock;
-
     @Mock
     private CapitaliseMarriageCertificate capitaliseMarriageCertificateMock;
 
     @Mock
     private SetYearMarried setYearMarriedMock;
 
+    @Mock
+    private AddAttributes addAttributesMock;
+
     @Mock
     private Model modelMock;
 
@@ -76,37 +66,11 @@ public class MarriageCertificateFormControllerTest {
                 marriageCertificateCommandConverterMock,
                 marriageCertificateConverterMock,
                 marriageCertificateCommandValidatorMock,
-                personServiceMock,
-                organisationServiceMock,
-                placeServiceMock,
                 capitaliseMarriageCertificateMock,
-                setYearMarriedMock);
+                setYearMarriedMock,
+                addAttributesMock);
     }
 
-    @Test
-    public void getNewMarriageCertificateTest() {
-        ArgumentCaptor<Object> objectCaptor = ArgumentCaptor.forClass(Object.class);
-        ArgumentCaptor<String> stringCaptor = ArgumentCaptor.forClass(String.class);
-        assertEquals("certificates/marriageCertificate/form", marriageCertificateFormController.getNewMarriageCertificate(modelMock));
-        verify(modelMock, atLeast(1)).addAttribute(stringCaptor.capture(), objectCaptor.capture());
-        boolean foundMarriageCertificateCommand = false;
-        boolean foundPeople = false;
-        for (int i = 0; i < stringCaptor.getAllValues().size(); i++) {
-            if (stringCaptor.getAllValues().get(i).equals("marriageCertificateCommand")) {
-                if (objectCaptor.getAllValues().get(i).getClass().getSimpleName().equals("MarriageCertificateCommandImpl")) {
-                    foundMarriageCertificateCommand = true;
-                }
-            }
-            if (stringCaptor.getAllValues().get(i).equals("people")) {
-                if (objectCaptor.getAllValues().get(i).getClass().getSimpleName().equals("LinkedList")) {
-                    foundPeople = true;
-                }
-            }
-        }
-
-        assertTrue(foundMarriageCertificateCommand && foundPeople);
-
-    }
 
     @Test
     public void marriageCertificateEditTestEditTest() {

+ 6 - 16
src/test/java/scot/carricksoftware/grants/controllers/certificates/marriagecertificates/MarriageCertificateFormControllerValidationTest.java

@@ -16,13 +16,11 @@ import org.springframework.validation.BindingResult;
 import scot.carricksoftware.grants.capitalisation.certificates.marriagecertificates.CapitaliseMarriageCertificate;
 import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommand;
 import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommandImpl;
+import scot.carricksoftware.grants.controllers.AddAttributes;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateCommandConverterImpl;
 import scot.carricksoftware.grants.converters.certificates.marriagecertificates.MarriageCertificateConverterImpl;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.MarriageCertificateService;
 import scot.carricksoftware.grants.services.certificates.marriagecertificates.helpers.SetYearMarried;
-import scot.carricksoftware.grants.services.people.PersonService;
-import scot.carricksoftware.grants.services.places.organisations.OrganisationService;
-import scot.carricksoftware.grants.services.places.places.PlaceService;
 import scot.carricksoftware.grants.validators.certificates.marriagecertificate.MarriageCertificateCommandValidator;
 
 import static org.mockito.Mockito.verify;
@@ -48,21 +46,15 @@ public class MarriageCertificateFormControllerValidationTest {
     @Mock
     private BindingResult bindingResultMock;
 
-    @Mock
-    private PersonService personServiceMock;
-
-    @Mock
-    private OrganisationService organisationServiceMock;
-
-    @Mock
-    private PlaceService placeServiceMock;
-
     @Mock
     private CapitaliseMarriageCertificate capitaliseMarriageCertificateMock;
 
     @Mock
     private MarriageCertificateCommandValidator marriageCertificateCommandValidatorMock;
 
+    @Mock
+    private AddAttributes addAttributesMock;
+
     @Mock
     private SetYearMarried setYearMarriedMock;
 
@@ -76,11 +68,9 @@ public class MarriageCertificateFormControllerValidationTest {
                 marriageCertificateCommandConverterMock,
                 marriageCertificateConverterMock,
                 marriageCertificateCommandValidatorMock,
-                personServiceMock,
-                organisationServiceMock,
-                placeServiceMock,
                 capitaliseMarriageCertificateMock,
-                setYearMarriedMock);
+                setYearMarriedMock,
+                addAttributesMock);
     }