parent
702a107be6
commit
e7526aff13
4 changed files with 27 additions and 45 deletions
|
|
@ -82,7 +82,9 @@ public class BankAccountService extends QueueConsumer implements InitializingBea
|
||||||
CommonDeleteRequest req = userRequest.getRequestPayload();
|
CommonDeleteRequest req = userRequest.getRequestPayload();
|
||||||
log.debug("CommonDeleteRequest received id = {}", req.getId());
|
log.debug("CommonDeleteRequest received id = {}", req.getId());
|
||||||
BankAccount bankAccount = bankAccountMap.getSingleObjectByID(req.getId());
|
BankAccount bankAccount = bankAccountMap.getSingleObjectByID(req.getId());
|
||||||
|
|
||||||
bankAccountMap.delete(bankAccount);
|
bankAccountMap.delete(bankAccount);
|
||||||
|
log.debug("successfully delete, existing bankAccount with id {}", bankAccount.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,29 +0,0 @@
|
||||||
package ru.spcex.clearing.account.config;
|
|
||||||
|
|
||||||
import com.hazelcast.config.Config;
|
|
||||||
import com.hazelcast.config.JoinConfig;
|
|
||||||
import com.hazelcast.config.MulticastConfig;
|
|
||||||
import com.hazelcast.config.NetworkConfig;
|
|
||||||
import com.hazelcast.core.Hazelcast;
|
|
||||||
import com.hazelcast.core.HazelcastInstance;
|
|
||||||
import org.springframework.context.annotation.Bean;
|
|
||||||
import org.springframework.context.annotation.Configuration;
|
|
||||||
|
|
||||||
import java.util.Random;
|
|
||||||
|
|
||||||
@Configuration
|
|
||||||
public class HazelcastInstanceTestConfiguration {
|
|
||||||
|
|
||||||
@Bean(name = "hazelcastInstance")
|
|
||||||
public HazelcastInstance hazelcastInstance() {
|
|
||||||
Config cfg = new Config();
|
|
||||||
cfg.setInstanceName("unittest_test_" + new Random().nextInt());
|
|
||||||
NetworkConfig networkConfig = new NetworkConfig();
|
|
||||||
JoinConfig joinConfig = new JoinConfig();
|
|
||||||
joinConfig.setMulticastConfig(new MulticastConfig().setEnabled(false));
|
|
||||||
networkConfig.setJoin(joinConfig);
|
|
||||||
cfg.setNetworkConfig(networkConfig);
|
|
||||||
return Hazelcast.newHazelcastInstance(cfg);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -63,7 +63,6 @@ public class HazelcastServiceTestConfiguration {
|
||||||
params.setClusterMembers("127.0.0.1");
|
params.setClusterMembers("127.0.0.1");
|
||||||
params.setInstanceName("hzTestClient" + new Random().nextInt());
|
params.setInstanceName("hzTestClient" + new Random().nextInt());
|
||||||
params.setNearCacheConfig(new NearCacheConfig());
|
params.setNearCacheConfig(new NearCacheConfig());
|
||||||
|
|
||||||
return params;
|
return params;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -41,6 +41,7 @@ public class BankAccountServiceTest {
|
||||||
private static final String TOPIC_ACCOUNT_NEW = Consts.DESTINATION_BANK_ACCOUNT_NEW;
|
private static final String TOPIC_ACCOUNT_NEW = Consts.DESTINATION_BANK_ACCOUNT_NEW;
|
||||||
private static final String TOPIC_ACCOUNT_UPDATE = Consts.DESTINATION_BANK_ACCOUNT_UPDATE;
|
private static final String TOPIC_ACCOUNT_UPDATE = Consts.DESTINATION_BANK_ACCOUNT_UPDATE;
|
||||||
private static final String TOPIC_ACCOUNT_DELETE = Consts.DESTINATION_BANK_ACCOUNT_DELETE;
|
private static final String TOPIC_ACCOUNT_DELETE = Consts.DESTINATION_BANK_ACCOUNT_DELETE;
|
||||||
|
private static Long currentId = 0L;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
@Qualifier("hazelcastServiceTest")
|
@Qualifier("hazelcastServiceTest")
|
||||||
|
|
@ -68,7 +69,7 @@ public class BankAccountServiceTest {
|
||||||
|
|
||||||
BaseRequest<BankAccountNewRequest> baseNewRequest = new BaseRequest<>();
|
BaseRequest<BankAccountNewRequest> baseNewRequest = new BaseRequest<>();
|
||||||
baseNewRequest.setRequestPayload(bankAccountNewRequest);
|
baseNewRequest.setRequestPayload(bankAccountNewRequest);
|
||||||
baseNewRequest.setId(0L);
|
baseNewRequest.setId(currentId);
|
||||||
baseNewRequest.setActionType(ActionType.NEW);
|
baseNewRequest.setActionType(ActionType.NEW);
|
||||||
String jsonBaseNewRequest;
|
String jsonBaseNewRequest;
|
||||||
ObjectMapper objectMapper = new ObjectMapper();
|
ObjectMapper objectMapper = new ObjectMapper();
|
||||||
|
|
@ -87,7 +88,7 @@ public class BankAccountServiceTest {
|
||||||
predictableResult.setTaxpayerIdentificationNumber("848484848484");
|
predictableResult.setTaxpayerIdentificationNumber("848484848484");
|
||||||
predictableResult.setTaxRegistrationReasonCode("886886");
|
predictableResult.setTaxRegistrationReasonCode("886886");
|
||||||
predictableResult.setAccount("123456789123");
|
predictableResult.setAccount("123456789123");
|
||||||
predictableResult.setId(0L);
|
predictableResult.setId(currentId);
|
||||||
//KAFKA
|
//KAFKA
|
||||||
mockConsumer.schedulePollTask(() -> {
|
mockConsumer.schedulePollTask(() -> {
|
||||||
mockConsumer.rebalance(Collections.singletonList(new TopicPartition(TOPIC_ACCOUNT_NEW, PARTITION)));
|
mockConsumer.rebalance(Collections.singletonList(new TopicPartition(TOPIC_ACCOUNT_NEW, PARTITION)));
|
||||||
|
|
@ -111,10 +112,13 @@ public class BankAccountServiceTest {
|
||||||
|
|
||||||
//ASSERT
|
//ASSERT
|
||||||
IMap<Long, BankAccount> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_BankAccount);
|
IMap<Long, BankAccount> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_BankAccount);
|
||||||
BankAccount result = iMap.get(0L);
|
BankAccount result = iMap.get(currentId);
|
||||||
iMap.clear();
|
|
||||||
|
|
||||||
BANK_ACCOUNT_MATCHER.assertMatch(result, predictableResult);
|
BANK_ACCOUNT_MATCHER.assertMatch(result, predictableResult);
|
||||||
|
|
||||||
|
//reset hazelcastService for next test
|
||||||
|
iMap.clear();
|
||||||
|
currentId++;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
@ -133,7 +137,7 @@ public class BankAccountServiceTest {
|
||||||
|
|
||||||
BaseRequest<BankAccountNewRequest> baseNewRequest = new BaseRequest<>();
|
BaseRequest<BankAccountNewRequest> baseNewRequest = new BaseRequest<>();
|
||||||
baseNewRequest.setRequestPayload(bankAccountNewRequest);
|
baseNewRequest.setRequestPayload(bankAccountNewRequest);
|
||||||
baseNewRequest.setId(0L);
|
baseNewRequest.setId(currentId);
|
||||||
baseNewRequest.setActionType(ActionType.NEW);
|
baseNewRequest.setActionType(ActionType.NEW);
|
||||||
String jsonBaseNewRequest;
|
String jsonBaseNewRequest;
|
||||||
ObjectMapper objectMapper = new ObjectMapper();
|
ObjectMapper objectMapper = new ObjectMapper();
|
||||||
|
|
@ -143,7 +147,7 @@ public class BankAccountServiceTest {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
BankAccountUpdateRequest bankAccountUpdateRequest = new BankAccountUpdateRequest();
|
BankAccountUpdateRequest bankAccountUpdateRequest = new BankAccountUpdateRequest();
|
||||||
bankAccountUpdateRequest.setId(0L);
|
bankAccountUpdateRequest.setId(currentId);
|
||||||
bankAccountUpdateRequest.setBankName("NEW BUNK NAME");
|
bankAccountUpdateRequest.setBankName("NEW BUNK NAME");
|
||||||
bankAccountUpdateRequest.setBankIdentificationCode("88888");
|
bankAccountUpdateRequest.setBankIdentificationCode("88888");
|
||||||
bankAccountUpdateRequest.setCorrespondentAccount("894984646541316");
|
bankAccountUpdateRequest.setCorrespondentAccount("894984646541316");
|
||||||
|
|
@ -156,7 +160,7 @@ public class BankAccountServiceTest {
|
||||||
|
|
||||||
BaseRequest<BankAccountUpdateRequest> baseUpdateRequest = new BaseRequest<>();
|
BaseRequest<BankAccountUpdateRequest> baseUpdateRequest = new BaseRequest<>();
|
||||||
baseUpdateRequest.setRequestPayload(bankAccountUpdateRequest);
|
baseUpdateRequest.setRequestPayload(bankAccountUpdateRequest);
|
||||||
baseUpdateRequest.setId(0L);
|
baseUpdateRequest.setId(currentId);
|
||||||
baseUpdateRequest.setActionType(ActionType.UPDATE);
|
baseUpdateRequest.setActionType(ActionType.UPDATE);
|
||||||
String jsonBaseUpdateRequest;
|
String jsonBaseUpdateRequest;
|
||||||
try {
|
try {
|
||||||
|
|
@ -174,7 +178,7 @@ public class BankAccountServiceTest {
|
||||||
predictableUpdateResult.setTaxpayerIdentificationNumber("65468461321");
|
predictableUpdateResult.setTaxpayerIdentificationNumber("65468461321");
|
||||||
predictableUpdateResult.setTaxRegistrationReasonCode("532137");
|
predictableUpdateResult.setTaxRegistrationReasonCode("532137");
|
||||||
predictableUpdateResult.setAccount("326984656514");
|
predictableUpdateResult.setAccount("326984656514");
|
||||||
predictableUpdateResult.setId(0L);
|
predictableUpdateResult.setId(currentId);
|
||||||
|
|
||||||
//KAFKA
|
//KAFKA
|
||||||
mockConsumer.schedulePollTask(() -> {
|
mockConsumer.schedulePollTask(() -> {
|
||||||
|
|
@ -207,9 +211,13 @@ public class BankAccountServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
Thread.sleep(10000);
|
Thread.sleep(10000);
|
||||||
IMap<Long, BankAccount> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_BankAccount);
|
IMap<Long, BankAccount> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_BankAccount);
|
||||||
BankAccount resultUpdating = iMap.get(0L);
|
BankAccount resultUpdating = iMap.get(currentId);
|
||||||
iMap.clear();
|
|
||||||
BANK_ACCOUNT_MATCHER.assertMatch(resultUpdating, predictableUpdateResult);
|
BANK_ACCOUNT_MATCHER.assertMatch(resultUpdating, predictableUpdateResult);
|
||||||
|
|
||||||
|
//reset hazelcastService for next test
|
||||||
|
iMap.clear();
|
||||||
|
currentId++;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
@ -228,7 +236,7 @@ public class BankAccountServiceTest {
|
||||||
|
|
||||||
BaseRequest<BankAccountNewRequest> baseNewRequest = new BaseRequest<>();
|
BaseRequest<BankAccountNewRequest> baseNewRequest = new BaseRequest<>();
|
||||||
baseNewRequest.setRequestPayload(bankAccountNewRequest);
|
baseNewRequest.setRequestPayload(bankAccountNewRequest);
|
||||||
baseNewRequest.setId(0L);
|
baseNewRequest.setId(currentId);
|
||||||
baseNewRequest.setActionType(ActionType.NEW);
|
baseNewRequest.setActionType(ActionType.NEW);
|
||||||
String jsonBaseNewRequest;
|
String jsonBaseNewRequest;
|
||||||
ObjectMapper objectMapper = new ObjectMapper();
|
ObjectMapper objectMapper = new ObjectMapper();
|
||||||
|
|
@ -239,10 +247,10 @@ public class BankAccountServiceTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
CommonDeleteRequest commonDeleteRequest = new CommonDeleteRequest();
|
CommonDeleteRequest commonDeleteRequest = new CommonDeleteRequest();
|
||||||
commonDeleteRequest.setId(0L);
|
commonDeleteRequest.setId(currentId);
|
||||||
BaseRequest<CommonDeleteRequest> baseDeleteRequest = new BaseRequest<>();
|
BaseRequest<CommonDeleteRequest> baseDeleteRequest = new BaseRequest<>();
|
||||||
baseDeleteRequest.setRequestPayload(commonDeleteRequest);
|
baseDeleteRequest.setRequestPayload(commonDeleteRequest);
|
||||||
baseDeleteRequest.setId(0L);
|
baseDeleteRequest.setId(currentId);
|
||||||
baseDeleteRequest.setActionType(ActionType.DELETE);
|
baseDeleteRequest.setActionType(ActionType.DELETE);
|
||||||
String jsonDeleteNewRequest;
|
String jsonDeleteNewRequest;
|
||||||
try {
|
try {
|
||||||
|
|
@ -255,8 +263,6 @@ public class BankAccountServiceTest {
|
||||||
mockConsumer.rebalance(Collections.singletonList(new TopicPartition(TOPIC_ACCOUNT_NEW, PARTITION)));
|
mockConsumer.rebalance(Collections.singletonList(new TopicPartition(TOPIC_ACCOUNT_NEW, PARTITION)));
|
||||||
mockConsumer.addRecord(new ConsumerRecord<>(TOPIC_ACCOUNT_NEW, PARTITION, 0, "key", jsonBaseNewRequest));
|
mockConsumer.addRecord(new ConsumerRecord<>(TOPIC_ACCOUNT_NEW, PARTITION, 0, "key", jsonBaseNewRequest));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
HashMap<TopicPartition, Long> startOffsets = new HashMap<>();
|
HashMap<TopicPartition, Long> startOffsets = new HashMap<>();
|
||||||
TopicPartition tp = new TopicPartition(TOPIC_ACCOUNT_NEW, PARTITION);
|
TopicPartition tp = new TopicPartition(TOPIC_ACCOUNT_NEW, PARTITION);
|
||||||
startOffsets.put(tp, 0L);
|
startOffsets.put(tp, 0L);
|
||||||
|
|
@ -284,5 +290,9 @@ public class BankAccountServiceTest {
|
||||||
Thread.sleep(10000);
|
Thread.sleep(10000);
|
||||||
IMap<Long, BankAccount> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_BankAccount);
|
IMap<Long, BankAccount> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_BankAccount);
|
||||||
Assertions.assertEquals(0, iMap.size());
|
Assertions.assertEquals(0, iMap.size());
|
||||||
|
|
||||||
|
//reset hazelcastService for next test
|
||||||
|
iMap.clear();
|
||||||
|
currentId++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
Add table
Reference in a new issue