Skip to content

Commit

Permalink
fix: test coverage
Browse files Browse the repository at this point in the history
  • Loading branch information
davijr committed Dec 3, 2024
1 parent 1b76fbe commit 8dddec0
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

import br.com.fiap.grupo30.fastfood.customer_api.presentation.presenters.exceptions.DatabaseException;
import br.com.fiap.grupo30.fastfood.customer_api.presentation.presenters.exceptions.ResourceBadRequestException;
import br.com.fiap.grupo30.fastfood.customer_api.presentation.presenters.exceptions.ResourceExceptionHandler;
import br.com.fiap.grupo30.fastfood.customer_api.presentation.presenters.exceptions.ResourceNotFoundException;
import br.com.fiap.grupo30.fastfood.customer_api.presentation.presenters.exceptions.StandardError;
Expand Down Expand Up @@ -190,4 +192,58 @@ void shouldReturnValidationErrorDetails_errorMessage() {
"Error message in ValidationError should match expected value");
}
}

@Nested
class ResourceBadRequestExceptionHandler {
@Test
void shouldHandleResourceBadRequestExceptionAndReturn400() {
MockHttpServletRequest request = new MockHttpServletRequest();
request.setRequestURI(PATH_VARIABLE);

ResourceBadRequestException requestException =
new ResourceBadRequestException("Invalid request") {};
ResourceExceptionHandler handler = new ResourceExceptionHandler();
ResponseEntity<StandardError> response =
handler.entityBadRequest(requestException, request);

assertEquals(
PATH_VARIABLE, response.getBody().getPath(), "Path should match request URI");
}
}

@Nested
class ResourceConflictExceptionHandler {
@Test
void shouldHandleResourceConflictExceptionAndReturn409() {
MockHttpServletRequest request = new MockHttpServletRequest();
request.setRequestURI(PATH_VARIABLE_ID);

ResourceBadRequestException requestException =
new ResourceBadRequestException("Invalid request") {};
ResourceExceptionHandler handler = new ResourceExceptionHandler();
ResponseEntity<StandardError> response =
handler.entityBadRequest(requestException, request);

assertEquals(
PATH_VARIABLE_ID,
response.getBody().getPath(),
"Path should match request URI");
}
}

@Nested
class DatabaseExceptionHandler {
@Test
void shouldHandleDatabaseExceptionAndReturn400() {
DatabaseException exception = new DatabaseException("Database error occurred", null);
MockHttpServletRequest request = new MockHttpServletRequest();
request.setRequestURI(PATH_VARIABLE);

ResourceExceptionHandler handler = new ResourceExceptionHandler();
ResponseEntity<StandardError> response = handler.database(exception, request);

assertEquals(
PATH_VARIABLE, response.getBody().getPath(), "Path should match request URI");
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,9 @@ public class CustomerHelper {
* Creates a default Customer instance.
*/
public static Customer createDefaultCustomer() {
return new Customer(DEFAULT_CUSTOMER_ID, DEFAULT_NAME, new CPF(DEFAULT_CPF), DEFAULT_EMAIL);
CPF cpf = new CPF(DEFAULT_CPF);
CPF.calculateDigit(cpf.value(), 0);
return new Customer(DEFAULT_CUSTOMER_ID, DEFAULT_NAME, cpf, DEFAULT_EMAIL);
}

/**
Expand Down

0 comments on commit 8dddec0

Please sign in to comment.