cashpal -> buckpal
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.adapter.persistence;
|
||||
package io.reflectoring.buckpal.adapter.persistence;
|
||||
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
@@ -1,14 +1,14 @@
|
||||
package io.reflectoring.cashpal.adapter.persistence;
|
||||
package io.reflectoring.buckpal.adapter.persistence;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account;
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.cashpal.domain.Activity;
|
||||
import io.reflectoring.cashpal.domain.Activity.ActivityId;
|
||||
import io.reflectoring.cashpal.domain.ActivityWindow;
|
||||
import io.reflectoring.cashpal.domain.Money;
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Activity;
|
||||
import io.reflectoring.buckpal.domain.Activity.ActivityId;
|
||||
import io.reflectoring.buckpal.domain.ActivityWindow;
|
||||
import io.reflectoring.buckpal.domain.Money;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
@@ -1,16 +1,16 @@
|
||||
package io.reflectoring.cashpal.adapter.persistence;
|
||||
package io.reflectoring.buckpal.adapter.persistence;
|
||||
|
||||
import javax.persistence.EntityNotFoundException;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
import io.reflectoring.cashpal.application.port.out.LoadAccountPort;
|
||||
import io.reflectoring.cashpal.application.port.out.UpdateAccountStatePort;
|
||||
import io.reflectoring.cashpal.testdata.PersistenceAdapter;
|
||||
import io.reflectoring.cashpal.domain.Account;
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.cashpal.domain.Activity;
|
||||
import io.reflectoring.buckpal.application.port.out.LoadAccountPort;
|
||||
import io.reflectoring.buckpal.application.port.out.UpdateAccountStatePort;
|
||||
import io.reflectoring.buckpal.testdata.PersistenceAdapter;
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Activity;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.adapter.persistence;
|
||||
package io.reflectoring.buckpal.adapter.persistence;
|
||||
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.adapter.persistence;
|
||||
package io.reflectoring.buckpal.adapter.persistence;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.adapter.persistence;
|
||||
package io.reflectoring.buckpal.adapter.persistence;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
@@ -1,18 +1,18 @@
|
||||
package io.reflectoring.cashpal.adapter.persistence;
|
||||
package io.reflectoring.buckpal.adapter.persistence;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account;
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.cashpal.domain.ActivityWindow;
|
||||
import io.reflectoring.cashpal.domain.Money;
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.ActivityWindow;
|
||||
import io.reflectoring.buckpal.domain.Money;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.test.context.jdbc.Sql;
|
||||
import static io.reflectoring.cashpal.testdata.AccountTestData.*;
|
||||
import static io.reflectoring.cashpal.testdata.ActivityTestData.*;
|
||||
import static io.reflectoring.buckpal.testdata.AccountTestData.*;
|
||||
import static io.reflectoring.buckpal.testdata.ActivityTestData.*;
|
||||
import static org.assertj.core.api.Assertions.*;
|
||||
|
||||
@DataJpaTest
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.adapter.persistence;
|
||||
package io.reflectoring.buckpal.adapter.persistence;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
@@ -1,6 +1,6 @@
|
||||
dependencies {
|
||||
implementation project(':common')
|
||||
implementation project(':cashpal-application')
|
||||
implementation project(':buckpal-application')
|
||||
|
||||
implementation 'org.springframework.boot:spring-boot-starter-web'
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
package io.reflectoring.buckpal.adapter.web;
|
||||
|
||||
class AccountResource {
|
||||
}
|
||||
@@ -1,9 +1,9 @@
|
||||
package io.reflectoring.cashpal.adapter.web;
|
||||
package io.reflectoring.buckpal.adapter.web;
|
||||
|
||||
import io.reflectoring.cashpal.application.port.in.SendMoneyUseCase;
|
||||
import io.reflectoring.cashpal.application.port.in.SendMoneyUseCase.SendMoneyCommand;
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.cashpal.domain.Money;
|
||||
import io.reflectoring.buckpal.application.port.in.SendMoneyUseCase;
|
||||
import io.reflectoring.buckpal.application.port.in.SendMoneyUseCase.SendMoneyCommand;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Money;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
@@ -1,7 +1,7 @@
|
||||
package io.reflectoring.cashpal.adapter.web;
|
||||
package io.reflectoring.buckpal.adapter.web;
|
||||
|
||||
import io.reflectoring.cashpal.application.port.in.SendMoneyUseCase;
|
||||
import io.reflectoring.cashpal.application.port.in.SendMoneyUseCase.SendMoneyCommand;
|
||||
import io.reflectoring.buckpal.application.port.in.SendMoneyUseCase;
|
||||
import io.reflectoring.buckpal.application.port.in.SendMoneyUseCase.SendMoneyCommand;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.adapter.web;
|
||||
package io.reflectoring.buckpal.adapter.web;
|
||||
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
package io.reflectoring.cashpal.adapter.web;
|
||||
|
||||
class AccountResource {
|
||||
}
|
||||
@@ -17,7 +17,7 @@ dependencies {
|
||||
testImplementation 'com.tngtech.archunit:archunit:0.9.3'
|
||||
testImplementation 'de.adesso:junit-insights:1.1.0'
|
||||
testImplementation 'org.junit.platform:junit-platform-launcher:1.4.2'
|
||||
testImplementation project(':cashpal-testdata')
|
||||
testImplementation project(':buckpal-testdata')
|
||||
}
|
||||
|
||||
test {
|
||||
@@ -0,0 +1,10 @@
|
||||
package io.reflectoring.buckpal.application.port.in;
|
||||
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Money;
|
||||
|
||||
public interface GetAccountBalanceQuery {
|
||||
|
||||
Money getAccountBalance(AccountId accountId);
|
||||
|
||||
}
|
||||
@@ -1,10 +1,10 @@
|
||||
package io.reflectoring.cashpal.application.port.in;
|
||||
package io.reflectoring.buckpal.application.port.in;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
import io.reflectoring.cashpal.testdata.SelfValidating;
|
||||
import io.reflectoring.cashpal.domain.Account;
|
||||
import io.reflectoring.cashpal.domain.Money;
|
||||
import io.reflectoring.buckpal.testdata.SelfValidating;
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
import io.reflectoring.buckpal.domain.Money;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Value;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package io.reflectoring.cashpal.application.port.out;
|
||||
package io.reflectoring.buckpal.application.port.out;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account;
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
|
||||
public interface AccountLock {
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
package io.reflectoring.buckpal.application.port.out;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
|
||||
public interface LoadAccountPort {
|
||||
|
||||
Account loadAccount(AccountId accountId, LocalDateTime baselineDate);
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package io.reflectoring.buckpal.application.port.out;
|
||||
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
|
||||
public interface UpdateAccountStatePort {
|
||||
|
||||
void updateActivities(Account account);
|
||||
|
||||
}
|
||||
@@ -1,11 +1,11 @@
|
||||
package io.reflectoring.cashpal.application.service;
|
||||
package io.reflectoring.buckpal.application.service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import io.reflectoring.cashpal.application.port.in.GetAccountBalanceQuery;
|
||||
import io.reflectoring.cashpal.application.port.out.LoadAccountPort;
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.cashpal.domain.Money;
|
||||
import io.reflectoring.buckpal.application.port.in.GetAccountBalanceQuery;
|
||||
import io.reflectoring.buckpal.application.port.out.LoadAccountPort;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Money;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@@ -1,7 +1,7 @@
|
||||
package io.reflectoring.cashpal.application.service;
|
||||
package io.reflectoring.buckpal.application.service;
|
||||
|
||||
import io.reflectoring.cashpal.application.port.out.AccountLock;
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.application.port.out.AccountLock;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
@@ -1,15 +1,15 @@
|
||||
package io.reflectoring.cashpal.application.service;
|
||||
package io.reflectoring.buckpal.application.service;
|
||||
|
||||
import javax.transaction.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import io.reflectoring.cashpal.application.port.in.SendMoneyUseCase;
|
||||
import io.reflectoring.cashpal.application.port.out.AccountLock;
|
||||
import io.reflectoring.cashpal.application.port.out.LoadAccountPort;
|
||||
import io.reflectoring.cashpal.application.port.out.UpdateAccountStatePort;
|
||||
import io.reflectoring.cashpal.domain.Account;
|
||||
import io.reflectoring.cashpal.testdata.UseCase;
|
||||
import io.reflectoring.buckpal.application.port.in.SendMoneyUseCase;
|
||||
import io.reflectoring.buckpal.application.port.out.AccountLock;
|
||||
import io.reflectoring.buckpal.application.port.out.LoadAccountPort;
|
||||
import io.reflectoring.buckpal.application.port.out.UpdateAccountStatePort;
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
import io.reflectoring.buckpal.testdata.UseCase;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.domain;
|
||||
package io.reflectoring.buckpal.domain;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.domain;
|
||||
package io.reflectoring.buckpal.domain;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.domain;
|
||||
package io.reflectoring.buckpal.domain;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
@@ -6,7 +6,7 @@ import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import lombok.NonNull;
|
||||
|
||||
/**
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.domain;
|
||||
package io.reflectoring.buckpal.domain;
|
||||
|
||||
import java.math.BigInteger;
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
package io.reflectoring.cashpal.application.service;
|
||||
package io.reflectoring.buckpal.application.service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import io.reflectoring.cashpal.application.port.in.SendMoneyUseCase.SendMoneyCommand;
|
||||
import io.reflectoring.cashpal.application.port.out.AccountLock;
|
||||
import io.reflectoring.cashpal.application.port.out.LoadAccountPort;
|
||||
import io.reflectoring.cashpal.application.port.out.UpdateAccountStatePort;
|
||||
import io.reflectoring.cashpal.domain.Account;
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.cashpal.domain.Money;
|
||||
import io.reflectoring.buckpal.application.port.in.SendMoneyUseCase.SendMoneyCommand;
|
||||
import io.reflectoring.buckpal.application.port.out.AccountLock;
|
||||
import io.reflectoring.buckpal.application.port.out.LoadAccountPort;
|
||||
import io.reflectoring.buckpal.application.port.out.UpdateAccountStatePort;
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Money;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.mockito.ArgumentCaptor;
|
||||
import org.mockito.Mockito;
|
||||
@@ -1,9 +1,9 @@
|
||||
package io.reflectoring.cashpal.domain;
|
||||
package io.reflectoring.buckpal.domain;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import static io.reflectoring.cashpal.testdata.AccountTestData.*;
|
||||
import static io.reflectoring.cashpal.testdata.ActivityTestData.*;
|
||||
import static io.reflectoring.buckpal.testdata.AccountTestData.*;
|
||||
import static io.reflectoring.buckpal.testdata.ActivityTestData.*;
|
||||
import static org.assertj.core.api.Assertions.*;
|
||||
|
||||
class AccountTest {
|
||||
@@ -1,11 +1,11 @@
|
||||
package io.reflectoring.cashpal.domain;
|
||||
package io.reflectoring.buckpal.domain;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import org.assertj.core.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import static io.reflectoring.cashpal.testdata.ActivityTestData.*;
|
||||
import static io.reflectoring.buckpal.testdata.ActivityTestData.*;
|
||||
|
||||
class ActivityWindowTest {
|
||||
|
||||
@@ -5,9 +5,9 @@ plugins {
|
||||
dependencies {
|
||||
|
||||
implementation project(':common')
|
||||
implementation project(':cashpal-application')
|
||||
implementation project(':adapters:cashpal-persistence')
|
||||
implementation project(':adapters:cashpal-web')
|
||||
implementation project(':buckpal-application')
|
||||
implementation project(':adapters:buckpal-persistence')
|
||||
implementation project(':adapters:buckpal-web')
|
||||
implementation ('org.springframework.boot:spring-boot-starter-web')
|
||||
|
||||
testImplementation('org.springframework.boot:spring-boot-starter-test') {
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal;
|
||||
package io.reflectoring.buckpal;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal;
|
||||
package io.reflectoring.buckpal;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
@@ -1,7 +1,7 @@
|
||||
package io.reflectoring.cashpal;
|
||||
package io.reflectoring.buckpal;
|
||||
|
||||
import com.tngtech.archunit.core.importer.ClassFileImporter;
|
||||
import io.reflectoring.cashpal.archunit.HexagonalArchitecture;
|
||||
import io.reflectoring.buckpal.archunit.HexagonalArchitecture;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import static com.tngtech.archunit.lang.syntax.ArchRuleDefinition.*;
|
||||
|
||||
@@ -9,7 +9,7 @@ class DependencyRuleTests {
|
||||
|
||||
@Test
|
||||
void validateRegistrationContextArchitecture() {
|
||||
HexagonalArchitecture.boundedContext("io.reflectoring.cashpal")
|
||||
HexagonalArchitecture.boundedContext("io.reflectoring.buckpal")
|
||||
|
||||
.withDomainLayer("domain")
|
||||
|
||||
@@ -26,7 +26,7 @@ class DependencyRuleTests {
|
||||
|
||||
.withConfiguration("configuration")
|
||||
.check(new ClassFileImporter()
|
||||
.importPackages("io.reflectoring.cashpal.."));
|
||||
.importPackages("io.reflectoring.buckpal.."));
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -0,0 +1,104 @@
|
||||
package io.reflectoring.buckpal;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import io.reflectoring.buckpal.application.port.out.LoadAccountPort;
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Money;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
||||
import org.springframework.boot.test.web.client.TestRestTemplate;
|
||||
import org.springframework.http.HttpEntity;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.HttpMethod;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.test.context.jdbc.Sql;
|
||||
import static org.assertj.core.api.BDDAssertions.*;
|
||||
|
||||
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)
|
||||
class SendMoneySystemTest {
|
||||
|
||||
@Autowired
|
||||
private TestRestTemplate restTemplate;
|
||||
|
||||
@Autowired
|
||||
private LoadAccountPort loadAccountPort;
|
||||
|
||||
@Test
|
||||
@Sql("SendMoneySystemTest.sql")
|
||||
void sendMoney() {
|
||||
|
||||
Money initialSourceBalance = sourceAccount().calculateBalance();
|
||||
Money initialTargetBalance = targetAccount().calculateBalance();
|
||||
|
||||
ResponseEntity response = whenSendMoney(
|
||||
sourceAccountId(),
|
||||
targetAccountId(),
|
||||
transferredAmount());
|
||||
|
||||
then(response.getStatusCode())
|
||||
.isEqualTo(HttpStatus.OK);
|
||||
|
||||
then(sourceAccount().calculateBalance())
|
||||
.isEqualTo(initialSourceBalance.minus(transferredAmount()));
|
||||
|
||||
then(targetAccount().calculateBalance())
|
||||
.isEqualTo(initialTargetBalance.plus(transferredAmount()));
|
||||
|
||||
}
|
||||
|
||||
private Account sourceAccount() {
|
||||
return loadAccount(sourceAccountId());
|
||||
}
|
||||
|
||||
private Account targetAccount() {
|
||||
return loadAccount(targetAccountId());
|
||||
}
|
||||
|
||||
private Account loadAccount(AccountId accountId) {
|
||||
return loadAccountPort.loadAccount(
|
||||
accountId,
|
||||
LocalDateTime.now());
|
||||
}
|
||||
|
||||
|
||||
private ResponseEntity whenSendMoney(
|
||||
AccountId sourceAccountId,
|
||||
AccountId targetAccountId,
|
||||
Money amount) {
|
||||
HttpHeaders headers = new HttpHeaders();
|
||||
headers.add("Content-Type", "application/json");
|
||||
HttpEntity<Void> request = new HttpEntity<>(null, headers);
|
||||
|
||||
return restTemplate.exchange(
|
||||
"/accounts/sendMoney/{sourceAccountId}/{targetAccountId}/{amount}",
|
||||
HttpMethod.POST,
|
||||
request,
|
||||
Object.class,
|
||||
sourceAccountId.getValue(),
|
||||
targetAccountId.getValue(),
|
||||
amount.getAmount());
|
||||
}
|
||||
|
||||
private Money transferredAmount() {
|
||||
return Money.of(500L);
|
||||
}
|
||||
|
||||
private Money balanceOf(AccountId accountId) {
|
||||
Account account = loadAccountPort.loadAccount(accountId, LocalDateTime.now());
|
||||
return account.calculateBalance();
|
||||
}
|
||||
|
||||
private AccountId sourceAccountId() {
|
||||
return new AccountId(1L);
|
||||
}
|
||||
|
||||
private AccountId targetAccountId() {
|
||||
return new AccountId(2L);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.archunit;
|
||||
package io.reflectoring.buckpal.archunit;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.archunit;
|
||||
package io.reflectoring.buckpal.archunit;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.archunit;
|
||||
package io.reflectoring.buckpal.archunit;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.archunit;
|
||||
package io.reflectoring.buckpal.archunit;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
@@ -1,9 +1,9 @@
|
||||
package io.reflectoring.cashpal.testdata;
|
||||
package io.reflectoring.buckpal.testdata;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account;
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.cashpal.domain.ActivityWindow;
|
||||
import io.reflectoring.cashpal.domain.Money;
|
||||
import io.reflectoring.buckpal.domain.Account;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.ActivityWindow;
|
||||
import io.reflectoring.buckpal.domain.Money;
|
||||
|
||||
public class AccountTestData {
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
package io.reflectoring.cashpal.testdata;
|
||||
package io.reflectoring.buckpal.testdata;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.cashpal.domain.Activity;
|
||||
import io.reflectoring.cashpal.domain.Activity.ActivityId;
|
||||
import io.reflectoring.cashpal.domain.Money;
|
||||
import io.reflectoring.buckpal.domain.Account.AccountId;
|
||||
import io.reflectoring.buckpal.domain.Activity;
|
||||
import io.reflectoring.buckpal.domain.Activity.ActivityId;
|
||||
import io.reflectoring.buckpal.domain.Money;
|
||||
|
||||
public class ActivityTestData {
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
package io.reflectoring.cashpal.application.port.in;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
import io.reflectoring.cashpal.domain.Money;
|
||||
|
||||
public interface GetAccountBalanceQuery {
|
||||
|
||||
Money getAccountBalance(AccountId accountId);
|
||||
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
package io.reflectoring.cashpal.application.port.out;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account;
|
||||
import io.reflectoring.cashpal.domain.Account.AccountId;
|
||||
|
||||
public interface LoadAccountPort {
|
||||
|
||||
Account loadAccount(AccountId accountId, LocalDateTime baselineDate);
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
package io.reflectoring.cashpal.application.port.out;
|
||||
|
||||
import io.reflectoring.cashpal.domain.Account;
|
||||
|
||||
public interface UpdateAccountStatePort {
|
||||
|
||||
void updateActivities(Account account);
|
||||
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.testdata;
|
||||
package io.reflectoring.buckpal.testdata;
|
||||
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.ElementType;
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.testdata;
|
||||
package io.reflectoring.buckpal.testdata;
|
||||
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.ElementType;
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.testdata;
|
||||
package io.reflectoring.buckpal.testdata;
|
||||
|
||||
import javax.validation.ConstraintViolation;
|
||||
import javax.validation.ConstraintViolationException;
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.testdata;
|
||||
package io.reflectoring.buckpal.testdata;
|
||||
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.ElementType;
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.reflectoring.cashpal.testdata;
|
||||
package io.reflectoring.buckpal.testdata;
|
||||
|
||||
import org.springframework.core.annotation.AliasFor;
|
||||
import org.springframework.stereotype.Component;
|
||||
@@ -1,7 +1,7 @@
|
||||
include 'common'
|
||||
include 'cashpal-configuration'
|
||||
include 'buckpal-configuration'
|
||||
|
||||
include 'adapters:cashpal-web'
|
||||
include 'adapters:cashpal-persistence'
|
||||
include 'cashpal-application'
|
||||
include 'cashpal-testdata'
|
||||
include 'adapters:buckpal-web'
|
||||
include 'adapters:buckpal-persistence'
|
||||
include 'buckpal-application'
|
||||
include 'buckpal-testdata'
|
||||
Reference in New Issue
Block a user