mirror of
https://github.com/tiennm99/java-design-patterns.git
synced 2026-05-21 06:23:53 +00:00
deps: Refactor dependencies (#3224)
* remove spring dep move junit, logging, mockito under dep mgmt * upgrade anti-corruption-layer deps * async method invocation * balking, bloc * bridge to bytecode * caching * callback - cqrs * component - health check * hexagonal - metadata mapping * rest of the patterns * remove checkstyle, take spotless into use
This commit is contained in:
+7
-10
@@ -24,21 +24,18 @@
|
||||
*/
|
||||
package com.iluwatar.idempotentconsumer;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.mockito.Mockito;
|
||||
import org.springframework.boot.CommandLineRunner;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.Mockito.times;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
/**
|
||||
* Application test
|
||||
*/
|
||||
import java.util.UUID;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.mockito.Mockito;
|
||||
import org.springframework.boot.CommandLineRunner;
|
||||
|
||||
/** Application test */
|
||||
class AppTest {
|
||||
|
||||
@Test
|
||||
@@ -67,4 +64,4 @@ class AppTest {
|
||||
verify(requestService, times(1)).complete(any());
|
||||
verify(requestRepository, times(1)).count();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+8
-6
@@ -42,9 +42,9 @@ import org.mockito.junit.jupiter.MockitoExtension;
|
||||
@ExtendWith(MockitoExtension.class)
|
||||
class RequestServiceTests {
|
||||
private RequestService requestService;
|
||||
@Mock
|
||||
private RequestRepository requestRepository;
|
||||
@Mock private RequestRepository requestRepository;
|
||||
private RequestStateMachine requestStateMachine;
|
||||
|
||||
@BeforeEach
|
||||
void setUp() {
|
||||
requestStateMachine = new RequestStateMachine();
|
||||
@@ -61,6 +61,7 @@ class RequestServiceTests {
|
||||
verify(requestRepository, times(1)).findById(uuid);
|
||||
verify(requestRepository, times(1)).save(any());
|
||||
}
|
||||
|
||||
@Test
|
||||
void createRequest_whenExists() {
|
||||
UUID uuid = UUID.randomUUID();
|
||||
@@ -75,7 +76,7 @@ class RequestServiceTests {
|
||||
void startRequest_whenNotExists_shouldThrowError() {
|
||||
UUID uuid = UUID.randomUUID();
|
||||
when(requestRepository.findById(any())).thenReturn(Optional.empty());
|
||||
assertThrows(RequestNotFoundException.class, ()->requestService.start(uuid));
|
||||
assertThrows(RequestNotFoundException.class, () -> requestService.start(uuid));
|
||||
verify(requestRepository, times(1)).findById(uuid);
|
||||
verify(requestRepository, times(0)).save(any());
|
||||
}
|
||||
@@ -97,7 +98,7 @@ class RequestServiceTests {
|
||||
UUID uuid = UUID.randomUUID();
|
||||
Request requestStarted = new Request(uuid, Request.Status.STARTED);
|
||||
when(requestRepository.findById(any())).thenReturn(Optional.of(requestStarted));
|
||||
assertThrows(InvalidNextStateException.class, ()->requestService.start(uuid));
|
||||
assertThrows(InvalidNextStateException.class, () -> requestService.start(uuid));
|
||||
verify(requestRepository, times(1)).findById(uuid);
|
||||
verify(requestRepository, times(0)).save(any());
|
||||
}
|
||||
@@ -107,7 +108,7 @@ class RequestServiceTests {
|
||||
UUID uuid = UUID.randomUUID();
|
||||
Request requestStarted = new Request(uuid, Request.Status.COMPLETED);
|
||||
when(requestRepository.findById(any())).thenReturn(Optional.of(requestStarted));
|
||||
assertThrows(InvalidNextStateException.class, ()->requestService.start(uuid));
|
||||
assertThrows(InvalidNextStateException.class, () -> requestService.start(uuid));
|
||||
verify(requestRepository, times(1)).findById(uuid);
|
||||
verify(requestRepository, times(0)).save(any());
|
||||
}
|
||||
@@ -123,6 +124,7 @@ class RequestServiceTests {
|
||||
verify(requestRepository, times(1)).findById(uuid);
|
||||
verify(requestRepository, times(1)).save(completedEntity);
|
||||
}
|
||||
|
||||
@Test
|
||||
void completeRequest_whenNotInprogress() {
|
||||
UUID uuid = UUID.randomUUID();
|
||||
@@ -132,4 +134,4 @@ class RequestServiceTests {
|
||||
verify(requestRepository, times(1)).findById(uuid);
|
||||
verify(requestRepository, times(0)).save(any());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+42
-29
@@ -24,13 +24,13 @@
|
||||
*/
|
||||
package com.iluwatar.idempotentconsumer;
|
||||
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import java.util.UUID;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertThrows;
|
||||
|
||||
import java.util.UUID;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
class RequestStateMachineTests {
|
||||
private RequestStateMachine requestStateMachine;
|
||||
|
||||
@@ -41,43 +41,56 @@ class RequestStateMachineTests {
|
||||
|
||||
@Test
|
||||
void transitionPendingToStarted() {
|
||||
Request startedRequest = requestStateMachine.next(new Request(UUID.randomUUID(), Request.Status.PENDING),
|
||||
Request.Status.STARTED);
|
||||
Request startedRequest =
|
||||
requestStateMachine.next(
|
||||
new Request(UUID.randomUUID(), Request.Status.PENDING), Request.Status.STARTED);
|
||||
assertEquals(Request.Status.STARTED, startedRequest.getStatus());
|
||||
}
|
||||
|
||||
@Test
|
||||
void transitionAnyToPending_shouldThrowError() {
|
||||
assertThrows(InvalidNextStateException.class,
|
||||
() -> requestStateMachine.next(new Request(UUID.randomUUID(), Request.Status.PENDING),
|
||||
Request.Status.PENDING));
|
||||
assertThrows(InvalidNextStateException.class,
|
||||
() -> requestStateMachine.next(new Request(UUID.randomUUID(), Request.Status.STARTED),
|
||||
Request.Status.PENDING));
|
||||
assertThrows(InvalidNextStateException.class,
|
||||
() -> requestStateMachine.next(new Request(UUID.randomUUID(), Request.Status.COMPLETED),
|
||||
Request.Status.PENDING));
|
||||
assertThrows(
|
||||
InvalidNextStateException.class,
|
||||
() ->
|
||||
requestStateMachine.next(
|
||||
new Request(UUID.randomUUID(), Request.Status.PENDING), Request.Status.PENDING));
|
||||
assertThrows(
|
||||
InvalidNextStateException.class,
|
||||
() ->
|
||||
requestStateMachine.next(
|
||||
new Request(UUID.randomUUID(), Request.Status.STARTED), Request.Status.PENDING));
|
||||
assertThrows(
|
||||
InvalidNextStateException.class,
|
||||
() ->
|
||||
requestStateMachine.next(
|
||||
new Request(UUID.randomUUID(), Request.Status.COMPLETED), Request.Status.PENDING));
|
||||
}
|
||||
|
||||
@Test
|
||||
void transitionCompletedToAny_shouldThrowError() {
|
||||
assertThrows(InvalidNextStateException.class,
|
||||
() -> requestStateMachine.next(new Request(UUID.randomUUID(), Request.Status.COMPLETED),
|
||||
Request.Status.PENDING));
|
||||
assertThrows(InvalidNextStateException.class,
|
||||
() -> requestStateMachine.next(new Request(UUID.randomUUID(), Request.Status.COMPLETED),
|
||||
Request.Status.STARTED));
|
||||
assertThrows(InvalidNextStateException.class,
|
||||
() -> requestStateMachine.next(new Request(UUID.randomUUID(), Request.Status.COMPLETED),
|
||||
Request.Status.COMPLETED));
|
||||
assertThrows(
|
||||
InvalidNextStateException.class,
|
||||
() ->
|
||||
requestStateMachine.next(
|
||||
new Request(UUID.randomUUID(), Request.Status.COMPLETED), Request.Status.PENDING));
|
||||
assertThrows(
|
||||
InvalidNextStateException.class,
|
||||
() ->
|
||||
requestStateMachine.next(
|
||||
new Request(UUID.randomUUID(), Request.Status.COMPLETED), Request.Status.STARTED));
|
||||
assertThrows(
|
||||
InvalidNextStateException.class,
|
||||
() ->
|
||||
requestStateMachine.next(
|
||||
new Request(UUID.randomUUID(), Request.Status.COMPLETED),
|
||||
Request.Status.COMPLETED));
|
||||
}
|
||||
|
||||
@Test
|
||||
void transitionStartedToCompleted() {
|
||||
Request completedRequest = requestStateMachine.next(new Request(UUID.randomUUID(), Request.Status.STARTED),
|
||||
Request.Status.COMPLETED);
|
||||
Request completedRequest =
|
||||
requestStateMachine.next(
|
||||
new Request(UUID.randomUUID(), Request.Status.STARTED), Request.Status.COMPLETED);
|
||||
assertEquals(Request.Status.COMPLETED, completedRequest.getStatus());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user