---
tree test done
This commit is contained in:
psemenkov 2022-09-15 18:41:02 +03:00
parent 702a107be6
commit e7526aff13
4 changed files with 27 additions and 45 deletions

View file

@ -82,7 +82,9 @@ public class BankAccountService extends QueueConsumer implements InitializingBea
CommonDeleteRequest req = userRequest.getRequestPayload();
log.debug("CommonDeleteRequest received id = {}", req.getId());
BankAccount bankAccount = bankAccountMap.getSingleObjectByID(req.getId());
bankAccountMap.delete(bankAccount);
log.debug("successfully delete, existing bankAccount with id {}", bankAccount.getId());
}
}

View file

@ -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);
}
}

View file

@ -63,7 +63,6 @@ public class HazelcastServiceTestConfiguration {
params.setClusterMembers("127.0.0.1");
params.setInstanceName("hzTestClient" + new Random().nextInt());
params.setNearCacheConfig(new NearCacheConfig());
return params;
}
}

View file

@ -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_UPDATE = Consts.DESTINATION_BANK_ACCOUNT_UPDATE;
private static final String TOPIC_ACCOUNT_DELETE = Consts.DESTINATION_BANK_ACCOUNT_DELETE;
private static Long currentId = 0L;
@Autowired
@Qualifier("hazelcastServiceTest")
@ -68,7 +69,7 @@ public class BankAccountServiceTest {
BaseRequest<BankAccountNewRequest> baseNewRequest = new BaseRequest<>();
baseNewRequest.setRequestPayload(bankAccountNewRequest);
baseNewRequest.setId(0L);
baseNewRequest.setId(currentId);
baseNewRequest.setActionType(ActionType.NEW);
String jsonBaseNewRequest;
ObjectMapper objectMapper = new ObjectMapper();
@ -87,7 +88,7 @@ public class BankAccountServiceTest {
predictableResult.setTaxpayerIdentificationNumber("848484848484");
predictableResult.setTaxRegistrationReasonCode("886886");
predictableResult.setAccount("123456789123");
predictableResult.setId(0L);
predictableResult.setId(currentId);
//KAFKA
mockConsumer.schedulePollTask(() -> {
mockConsumer.rebalance(Collections.singletonList(new TopicPartition(TOPIC_ACCOUNT_NEW, PARTITION)));
@ -111,10 +112,13 @@ public class BankAccountServiceTest {
//ASSERT
IMap<Long, BankAccount> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_BankAccount);
BankAccount result = iMap.get(0L);
iMap.clear();
BankAccount result = iMap.get(currentId);
BANK_ACCOUNT_MATCHER.assertMatch(result, predictableResult);
//reset hazelcastService for next test
iMap.clear();
currentId++;
}
@Test
@ -133,7 +137,7 @@ public class BankAccountServiceTest {
BaseRequest<BankAccountNewRequest> baseNewRequest = new BaseRequest<>();
baseNewRequest.setRequestPayload(bankAccountNewRequest);
baseNewRequest.setId(0L);
baseNewRequest.setId(currentId);
baseNewRequest.setActionType(ActionType.NEW);
String jsonBaseNewRequest;
ObjectMapper objectMapper = new ObjectMapper();
@ -143,7 +147,7 @@ public class BankAccountServiceTest {
throw new RuntimeException(e);
}
BankAccountUpdateRequest bankAccountUpdateRequest = new BankAccountUpdateRequest();
bankAccountUpdateRequest.setId(0L);
bankAccountUpdateRequest.setId(currentId);
bankAccountUpdateRequest.setBankName("NEW BUNK NAME");
bankAccountUpdateRequest.setBankIdentificationCode("88888");
bankAccountUpdateRequest.setCorrespondentAccount("894984646541316");
@ -156,7 +160,7 @@ public class BankAccountServiceTest {
BaseRequest<BankAccountUpdateRequest> baseUpdateRequest = new BaseRequest<>();
baseUpdateRequest.setRequestPayload(bankAccountUpdateRequest);
baseUpdateRequest.setId(0L);
baseUpdateRequest.setId(currentId);
baseUpdateRequest.setActionType(ActionType.UPDATE);
String jsonBaseUpdateRequest;
try {
@ -174,7 +178,7 @@ public class BankAccountServiceTest {
predictableUpdateResult.setTaxpayerIdentificationNumber("65468461321");
predictableUpdateResult.setTaxRegistrationReasonCode("532137");
predictableUpdateResult.setAccount("326984656514");
predictableUpdateResult.setId(0L);
predictableUpdateResult.setId(currentId);
//KAFKA
mockConsumer.schedulePollTask(() -> {
@ -207,9 +211,13 @@ public class BankAccountServiceTest {
//ASSERT
Thread.sleep(10000);
IMap<Long, BankAccount> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_BankAccount);
BankAccount resultUpdating = iMap.get(0L);
iMap.clear();
BankAccount resultUpdating = iMap.get(currentId);
BANK_ACCOUNT_MATCHER.assertMatch(resultUpdating, predictableUpdateResult);
//reset hazelcastService for next test
iMap.clear();
currentId++;
}
@Test
@ -228,7 +236,7 @@ public class BankAccountServiceTest {
BaseRequest<BankAccountNewRequest> baseNewRequest = new BaseRequest<>();
baseNewRequest.setRequestPayload(bankAccountNewRequest);
baseNewRequest.setId(0L);
baseNewRequest.setId(currentId);
baseNewRequest.setActionType(ActionType.NEW);
String jsonBaseNewRequest;
ObjectMapper objectMapper = new ObjectMapper();
@ -239,10 +247,10 @@ public class BankAccountServiceTest {
}
CommonDeleteRequest commonDeleteRequest = new CommonDeleteRequest();
commonDeleteRequest.setId(0L);
commonDeleteRequest.setId(currentId);
BaseRequest<CommonDeleteRequest> baseDeleteRequest = new BaseRequest<>();
baseDeleteRequest.setRequestPayload(commonDeleteRequest);
baseDeleteRequest.setId(0L);
baseDeleteRequest.setId(currentId);
baseDeleteRequest.setActionType(ActionType.DELETE);
String jsonDeleteNewRequest;
try {
@ -255,8 +263,6 @@ public class BankAccountServiceTest {
mockConsumer.rebalance(Collections.singletonList(new TopicPartition(TOPIC_ACCOUNT_NEW, PARTITION)));
mockConsumer.addRecord(new ConsumerRecord<>(TOPIC_ACCOUNT_NEW, PARTITION, 0, "key", jsonBaseNewRequest));
});
HashMap<TopicPartition, Long> startOffsets = new HashMap<>();
TopicPartition tp = new TopicPartition(TOPIC_ACCOUNT_NEW, PARTITION);
startOffsets.put(tp, 0L);
@ -284,5 +290,9 @@ public class BankAccountServiceTest {
Thread.sleep(10000);
IMap<Long, BankAccount> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_BankAccount);
Assertions.assertEquals(0, iMap.size());
//reset hazelcastService for next test
iMap.clear();
currentId++;
}
}