Prechádzať zdrojové kódy

Capitalise Census, census Entry and Person

Andrew Grant 5 mesiacov pred
rodič
commit
1d5ec07bd2

+ 6 - 5
src/main/java/scot/carricksoftware/grants/controllers/census/censusentry/CensusEntryFormControllerImpl.java

@@ -15,13 +15,13 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.ModelAttribute;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.PostMapping;
+import scot.carricksoftware.grants.capitalisation.census.censusentry.CapitaliseCensusEntry;
 import scot.carricksoftware.grants.commands.census.CensusEntryCommand;
 import scot.carricksoftware.grants.commands.census.CensusEntryCommandImpl;
 import scot.carricksoftware.grants.constants.AttributeConstants;
 import scot.carricksoftware.grants.constants.CensusMappingConstants;
 import scot.carricksoftware.grants.constants.MappingConstants;
 import scot.carricksoftware.grants.constants.ViewConstants;
-import scot.carricksoftware.grants.converters.Capitalisation;
 import scot.carricksoftware.grants.converters.census.CensusEntryConverter;
 import scot.carricksoftware.grants.services.census.censusentry.CensusEntryService;
 import scot.carricksoftware.grants.services.census.census.CensusService;
@@ -37,7 +37,7 @@ public class CensusEntryFormControllerImpl implements CensusEntryFormController
     private final CensusEntryService censusEntryService;
     private final CensusEntryCommandValidator censusEntryCommandValidator;
     private final CensusEntryConverter censusEntryConverter;
-    private final Capitalisation capitalisation;
+    private final CapitaliseCensusEntry capitaliseCensusEntry;
     private final PersonService personService;
     private final CensusService censusService;
     private final UpdateRecordedYearOfBirth updateRecordedYearOfBirth;
@@ -47,13 +47,13 @@ public class CensusEntryFormControllerImpl implements CensusEntryFormController
     public CensusEntryFormControllerImpl(CensusEntryService censusEntryService,
                                          CensusEntryCommandValidator censusEntryCommandValidator,
                                          CensusEntryConverter censusEntryConverter,
-                                         Capitalisation capitalisation,
+                                         CapitaliseCensusEntry capitaliseCensusEntry,
                                          PersonService personService,
                                          CensusService censusService, UpdateRecordedYearOfBirth updateRecordedYearOfBirth) {
         this.censusEntryService = censusEntryService;
         this.censusEntryCommandValidator = censusEntryCommandValidator;
         this.censusEntryConverter = censusEntryConverter;
-        this.capitalisation = capitalisation;
+        this.capitaliseCensusEntry = capitaliseCensusEntry;
         this.personService = personService;
         this.censusService = censusService;
         this.updateRecordedYearOfBirth = updateRecordedYearOfBirth;
@@ -85,8 +85,9 @@ public class CensusEntryFormControllerImpl implements CensusEntryFormController
     public String saveOrUpdate(@Valid @ModelAttribute CensusEntryCommand censusEntryCommand, BindingResult bindingResult, Model model) {
         logger.debug("CensusEntryFormControllerImpl::saveOrUpdate");
 
+        capitaliseCensusEntry.capitalise(censusEntryCommand);
         censusEntryCommandValidator.validate(censusEntryCommand, bindingResult);
-        censusEntryCommand.setName(capitalisation.getCapitalisation(censusEntryCommand.getName()));
+
 
         if (bindingResult.hasErrors()) {
             bindingResult.getAllErrors().forEach(error -> logger.debug(error.getDefaultMessage()));

+ 7 - 10
src/main/java/scot/carricksoftware/grants/controllers/people/PersonFormControllerImpl.java

@@ -15,12 +15,12 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.ModelAttribute;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.PostMapping;
+import scot.carricksoftware.grants.capitalisation.people.CapitalisePerson;
 import scot.carricksoftware.grants.commands.people.PersonCommand;
 import scot.carricksoftware.grants.commands.people.PersonCommandImpl;
 import scot.carricksoftware.grants.constants.AttributeConstants;
 import scot.carricksoftware.grants.constants.MappingConstants;
 import scot.carricksoftware.grants.constants.ViewConstants;
-import scot.carricksoftware.grants.converters.Capitalisation;
 import scot.carricksoftware.grants.converters.people.PersonCommandConverterImpl;
 import scot.carricksoftware.grants.converters.people.PersonConverterImpl;
 import scot.carricksoftware.grants.services.people.PersonService;
@@ -36,20 +36,21 @@ public class PersonFormControllerImpl implements PersonFormController {
     @SuppressWarnings({"FieldCanBeLocal", "unused"})
     private final PersonCommandConverterImpl personCommandConverter;
     private final PersonConverterImpl personConverter;
-    private final Capitalisation capitalisation;
+    private final CapitalisePerson capitalisePerson;
     private final PersonCommandValidator personCommandValidator;
 
 
     public PersonFormControllerImpl(PersonService personService,
                                     PersonCommandConverterImpl personCommandConverter,
                                     PersonConverterImpl personConverter,
-                                    Capitalisation capitalisation, PersonCommandValidator personCommandValidator) {
+                                    CapitalisePerson capitalisePerson,
+                                    PersonCommandValidator personCommandValidator) {
         this.personService = personService;
         this.personCommandConverter = personCommandConverter;
 
 
         this.personConverter = personConverter;
-        this.capitalisation = capitalisation;
+        this.capitalisePerson = capitalisePerson;
         this.personCommandValidator = personCommandValidator;
     }
 
@@ -75,6 +76,7 @@ public class PersonFormControllerImpl implements PersonFormController {
     public String saveOrUpdate(@Valid @ModelAttribute PersonCommand personCommand, BindingResult bindingResult, Model model) {
         logger.debug("PersonFormControllerImpl::saveOrUpdate");
 
+        capitalisePerson.capitalise(personCommand);
         personCommandValidator.validate(personCommand, bindingResult);
 
         if (bindingResult.hasErrors()) {
@@ -82,17 +84,12 @@ public class PersonFormControllerImpl implements PersonFormController {
             return ViewConstants.PERSON_FORM;
         }
 
-        cleanUp(personCommand);
+
         PersonCommand savedCommand = personService.savePersonCommand(personCommand);
         model.addAttribute(AttributeConstants.PERSON_COMMAND, savedCommand);
         return MappingConstants.REDIRECT + MappingConstants.PERSON_SHOW.replace("{id}", "" + savedCommand.getId());
     }
 
-    private void cleanUp(PersonCommand personCommand) {
-        personCommand.setFirstName(capitalisation.getCapitalisation(personCommand.getFirstName()));
-        personCommand.setLastName(capitalisation.getCapitalisation(personCommand.getLastName()));
-    }
-
     @SuppressWarnings("SameReturnValue")
     @GetMapping(MappingConstants.PERSON_SHOW)
     public String showById(@PathVariable String id, Model model) {

+ 3 - 21
src/test/java/scot/carricksoftware/grants/controllers/census/censusentry/CensusEntryFormControllerSaveOrUpdateTest.java

@@ -12,9 +12,9 @@ import org.mockito.Mock;
 import org.mockito.junit.jupiter.MockitoExtension;
 import org.springframework.ui.Model;
 import org.springframework.validation.BindingResult;
+import scot.carricksoftware.grants.capitalisation.census.censusentry.CapitaliseCensusEntry;
 import scot.carricksoftware.grants.commands.census.CensusEntryCommand;
 import scot.carricksoftware.grants.commands.census.CensusEntryCommandImpl;
-import scot.carricksoftware.grants.converters.Capitalisation;
 import scot.carricksoftware.grants.converters.census.CensusEntryConverterImpl;
 import scot.carricksoftware.grants.services.census.censusentry.CensusEntryService;
 import scot.carricksoftware.grants.services.census.census.CensusService;
@@ -24,7 +24,6 @@ import scot.carricksoftware.grants.validators.census.censusentry.CensusEntryComm
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
@@ -45,7 +44,7 @@ public class CensusEntryFormControllerSaveOrUpdateTest {
     private CensusEntryConverterImpl censusEntryConverterMock;
 
     @Mock
-    private Capitalisation capitalisationMock;
+    private CapitaliseCensusEntry capitaliseCensusEntryMock;
 
     @Mock
     private PersonService personServiceMock;
@@ -69,7 +68,7 @@ public class CensusEntryFormControllerSaveOrUpdateTest {
         censusEntryController = new CensusEntryFormControllerImpl(censusEntryServiceMock,
                 censusEntryCommandValidatorImplMock,
                 censusEntryConverterMock,
-                capitalisationMock,
+                capitaliseCensusEntryMock,
                 personServiceMock,
                 censusServiceMock,
                 updateRecordedYearOfBirthMock);
@@ -101,22 +100,5 @@ public class CensusEntryFormControllerSaveOrUpdateTest {
         verify(censusEntryCommandValidatorImplMock).validate(censusEntryCommand, bindingResultMock);
     }
 
-    @Test
-    public void capitalisationTakesPlaceTest() {
-        Long id = 4L;
-        String name = "test";
-        String uname = "Test";
-        censusEntryCommand.setId(id);
-        censusEntryCommand.setName(name);
-        when(capitalisationMock.getCapitalisation(anyString())).thenReturn(uname);
-        when(censusEntryServiceMock.saveCensusEntryCommand(any(CensusEntryCommand.class))).thenReturn(censusEntryCommand);
-
-        censusEntryController.saveOrUpdate(censusEntryCommand, bindingResultMock, modelMock);
-
-        verify(capitalisationMock).getCapitalisation(name);
-
-        assertEquals(uname, censusEntryCommand.getName());
-
-    }
 
 }

+ 3 - 3
src/test/java/scot/carricksoftware/grants/controllers/census/censusentry/CensusEntryFormControllerTest.java

@@ -13,9 +13,9 @@ import org.mockito.ArgumentCaptor;
 import org.mockito.Mock;
 import org.mockito.junit.jupiter.MockitoExtension;
 import org.springframework.ui.Model;
+import scot.carricksoftware.grants.capitalisation.census.censusentry.CapitaliseCensusEntry;
 import scot.carricksoftware.grants.commands.census.CensusEntryCommand;
 import scot.carricksoftware.grants.constants.AttributeConstants;
-import scot.carricksoftware.grants.converters.Capitalisation;
 import scot.carricksoftware.grants.converters.census.CensusEntryConverterImpl;
 import scot.carricksoftware.grants.domains.census.CensusEntry;
 import scot.carricksoftware.grants.services.census.censusentry.CensusEntryService;
@@ -55,7 +55,7 @@ public class CensusEntryFormControllerTest {
     private CensusEntryCommandValidatorImpl censusEntryCommandValidatorImplMock;
 
     @Mock
-    private Capitalisation capitalisationMock;
+    private CapitaliseCensusEntry capitaliseCensusEntryMock;
 
     @Mock
     private PersonService personServiceMock;
@@ -69,7 +69,7 @@ public class CensusEntryFormControllerTest {
         censusEntryController = new CensusEntryFormControllerImpl(censusEntryServiceMock,
                 censusEntryCommandValidatorImplMock,
                 censusEntryConverterMock,
-                capitalisationMock,
+                capitaliseCensusEntryMock,
                 personServiceMock,
                 censusServiceMock,
                 updateRecordedYearOfBirthMock);

+ 3 - 3
src/test/java/scot/carricksoftware/grants/controllers/census/censusentry/CensusEntryFormControllerUpdateRecordedBirthDateTest.java

@@ -12,9 +12,9 @@ import org.mockito.Mock;
 import org.mockito.junit.jupiter.MockitoExtension;
 import org.springframework.ui.Model;
 import org.springframework.validation.BindingResult;
+import scot.carricksoftware.grants.capitalisation.census.censusentry.CapitaliseCensusEntry;
 import scot.carricksoftware.grants.commands.census.CensusEntryCommand;
 import scot.carricksoftware.grants.commands.census.CensusEntryCommandImpl;
-import scot.carricksoftware.grants.converters.Capitalisation;
 import scot.carricksoftware.grants.converters.census.CensusEntryConverterImpl;
 import scot.carricksoftware.grants.services.census.census.CensusService;
 import scot.carricksoftware.grants.services.census.censusentry.CensusEntryService;
@@ -43,7 +43,7 @@ public class CensusEntryFormControllerUpdateRecordedBirthDateTest {
     private CensusEntryConverterImpl censusEntryConverterMock;
 
     @Mock
-    private Capitalisation capitalisationMock;
+    private CapitaliseCensusEntry capitaliseCensusEntryMock;
 
     @Mock
     private PersonService personServiceMock;
@@ -67,7 +67,7 @@ public class CensusEntryFormControllerUpdateRecordedBirthDateTest {
         censusEntryController = new CensusEntryFormControllerImpl(censusEntryServiceMock,
                 censusEntryCommandValidatorImplMock,
                 censusEntryConverterMock,
-                capitalisationMock,
+                capitaliseCensusEntryMock,
                 personServiceMock,
                 censusServiceMock,
                 updateRecordedYearOfBirthMock);

+ 7 - 37
src/test/java/scot/carricksoftware/grants/controllers/people/PageFormControllerCleansingTest.java

@@ -9,24 +9,15 @@ package scot.carricksoftware.grants.controllers.people;
 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 org.springframework.validation.BindingResult;
-import scot.carricksoftware.grants.commands.people.PersonCommand;
-import scot.carricksoftware.grants.commands.people.PersonCommandImpl;
-import scot.carricksoftware.grants.converters.CapitalisationImpl;
+import scot.carricksoftware.grants.capitalisation.people.CapitalisePerson;
 import scot.carricksoftware.grants.converters.people.PersonCommandConverterImpl;
 import scot.carricksoftware.grants.converters.people.PersonConverterImpl;
 import scot.carricksoftware.grants.services.people.PersonService;
 import scot.carricksoftware.grants.validators.people.PersonCommandValidator;
 
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.mockito.ArgumentMatchers.anyString;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-import static scot.carricksoftware.grants.GenerateRandomNumberValues.GetRandomLong;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
 
 
 @ExtendWith(MockitoExtension.class)
@@ -45,47 +36,26 @@ public class PageFormControllerCleansingTest {
     private PersonConverterImpl personConverterMock;
 
     @Mock
-    private CapitalisationImpl capitalisationMock;
-
-    @Mock
-    BindingResult bindingResultMock;
+    private CapitalisePerson capitalisePersonMock;
 
     @Mock
     PersonCommandValidator personCommandValidatorMock;
 
-    @Mock
-    Model modelMock;
-
-
     @BeforeEach
     public void setUp() {
         personController = new PersonFormControllerImpl(personServiceMock,
                 personCommandConverterMock,
                 personConverterMock,
-                capitalisationMock,
+                capitalisePersonMock,
                 personCommandValidatorMock);
     }
 
 
     @Test
-    public void saveOrUpdateCleansingTest() {
-        ArgumentCaptor<PersonCommand> personCommandCaptor = ArgumentCaptor.forClass(PersonCommand.class);
-        String first = "first";
-        String last = "last";
-        PersonCommand personCommand = new PersonCommandImpl();
-        personCommand.setFirstName(first);
-        personCommand.setLastName(last);
-        personCommand.setId(GetRandomLong());
-        when(bindingResultMock.hasErrors()).thenReturn(false);
-        when(capitalisationMock.getCapitalisation(anyString())).thenCallRealMethod();
-        when(personServiceMock.savePersonCommand(personCommand)).thenReturn(personCommand);
-
-        personController.saveOrUpdate(personCommand, bindingResultMock, modelMock);
-
-        verify(personServiceMock).savePersonCommand(personCommandCaptor.capture());
-        assertEquals("First", personCommandCaptor.getValue().getFirstName());
-        assertEquals("Last", personCommandCaptor.getValue().getLastName());
+    public void dummyTest() {
+        assertNotNull(personController);
     }
 
 
+
 }

+ 3 - 5
src/test/java/scot/carricksoftware/grants/controllers/people/PageFormControllerValidationTest.java

@@ -13,15 +13,14 @@ import org.mockito.Mock;
 import org.mockito.junit.jupiter.MockitoExtension;
 import org.springframework.ui.Model;
 import org.springframework.validation.BindingResult;
+import scot.carricksoftware.grants.capitalisation.people.CapitalisePerson;
 import scot.carricksoftware.grants.commands.people.PersonCommand;
 import scot.carricksoftware.grants.commands.people.PersonCommandImpl;
-import scot.carricksoftware.grants.converters.CapitalisationImpl;
 import scot.carricksoftware.grants.converters.people.PersonCommandConverterImpl;
 import scot.carricksoftware.grants.converters.people.PersonConverterImpl;
 import scot.carricksoftware.grants.services.people.PersonService;
 import scot.carricksoftware.grants.validators.people.PersonCommandValidator;
 
-import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 import static scot.carricksoftware.grants.GenerateCertificateRandomValues.GetRandomString;
@@ -44,7 +43,7 @@ public class PageFormControllerValidationTest {
     private PersonConverterImpl personConverterMock;
 
     @Mock
-    private CapitalisationImpl capitalisationMock;
+    private CapitalisePerson capitalisePersonMock;
 
     @Mock
     BindingResult bindingResultMock;
@@ -61,7 +60,7 @@ public class PageFormControllerValidationTest {
         personController = new PersonFormControllerImpl(personServiceMock,
                 personCommandConverterMock,
                 personConverterMock,
-                capitalisationMock,
+                capitalisePersonMock,
                 personCommandValidatorMock);
     }
 
@@ -73,7 +72,6 @@ public class PageFormControllerValidationTest {
         personCommand.setLastName(GetRandomString());
         personCommand.setId(GetRandomLong());
         when(bindingResultMock.hasErrors()).thenReturn(false);
-        when(capitalisationMock.getCapitalisation(anyString())).thenCallRealMethod();
         when(personServiceMock.savePersonCommand(personCommand)).thenReturn(personCommand);
 
         personController.saveOrUpdate(personCommand, bindingResultMock, modelMock);

+ 3 - 3
src/test/java/scot/carricksoftware/grants/controllers/people/PersonFormControllerSaveOrUpdateTest.java

@@ -12,9 +12,9 @@ import org.mockito.Mock;
 import org.mockito.junit.jupiter.MockitoExtension;
 import org.springframework.ui.Model;
 import org.springframework.validation.BindingResult;
+import scot.carricksoftware.grants.capitalisation.people.CapitalisePerson;
 import scot.carricksoftware.grants.commands.people.PersonCommand;
 import scot.carricksoftware.grants.commands.people.PersonCommandImpl;
-import scot.carricksoftware.grants.converters.Capitalisation;
 import scot.carricksoftware.grants.converters.people.PersonCommandConverterImpl;
 import scot.carricksoftware.grants.converters.people.PersonConverterImpl;
 import scot.carricksoftware.grants.services.people.PersonService;
@@ -41,7 +41,7 @@ public class PersonFormControllerSaveOrUpdateTest {
     private PersonConverterImpl personConverterMock;
 
     @Mock
-    private Capitalisation capitalisationMock;
+    private CapitalisePerson capitalisePersonMock;
 
     @Mock
     Model modelMock;
@@ -60,7 +60,7 @@ public class PersonFormControllerSaveOrUpdateTest {
         personController = new PersonFormControllerImpl(personServiceMock,
                 personCommandConverterMock,
                 personConverterMock,
-                capitalisationMock,
+                capitalisePersonMock,
                 personCommandValidatorMock);
         personCommand = new PersonCommandImpl();
     }

+ 3 - 3
src/test/java/scot/carricksoftware/grants/controllers/people/PersonFormControllerTest.java

@@ -13,9 +13,9 @@ import org.mockito.ArgumentCaptor;
 import org.mockito.Mock;
 import org.mockito.junit.jupiter.MockitoExtension;
 import org.springframework.ui.Model;
+import scot.carricksoftware.grants.capitalisation.people.CapitalisePerson;
 import scot.carricksoftware.grants.commands.people.PersonCommand;
 import scot.carricksoftware.grants.constants.AttributeConstants;
-import scot.carricksoftware.grants.converters.Capitalisation;
 import scot.carricksoftware.grants.converters.people.PersonCommandConverterImpl;
 import scot.carricksoftware.grants.converters.people.PersonConverterImpl;
 import scot.carricksoftware.grants.domains.people.Person;
@@ -46,7 +46,7 @@ public class PersonFormControllerTest {
     private PersonConverterImpl personConverterMock;
 
     @Mock
-    private Capitalisation capitalisationMock;
+    private CapitalisePerson capitalisePersonMock;
 
     @Mock
     private Model modelMock;
@@ -60,7 +60,7 @@ public class PersonFormControllerTest {
         personController = new PersonFormControllerImpl(personServiceMock,
                 personCommandConverterMock,
                 personConverterMock,
-                capitalisationMock,
+                capitalisePersonMock,
                 personCommandValidatorMock);
     }