Adding test and simple refactoring.

This commit is contained in:
psemenkov 2023-02-17 18:42:56 +03:00
parent ee334d285e
commit 7b50a49d5c
21 changed files with 442 additions and 259 deletions

View file

@ -9,11 +9,13 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.http.MediaType;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.ResultActions;
import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.filter.CharacterEncodingFilter;
@ -24,19 +26,25 @@ import ru.spcex.clearing.backendapi.controller.queue.account.AccountController;
import ru.spcex.clearing.backendapi.controller.queue.account.BankAccountController;
import ru.spcex.clearing.backendapi.controller.queue.company.*;
import ru.spcex.clearing.backendapi.controller.queue.execution.ExecutionDepositController;
import ru.spcex.clearing.backendapi.controller.queue.misc.NotificationController;
import ru.spcex.clearing.backendapi.controller.queue.misc.SessionController;
import ru.spcex.clearing.backendapi.controller.queue.journal.InDocumentJournalController;
import ru.spcex.clearing.backendapi.controller.queue.journal.ManagementJournalController;
import ru.spcex.clearing.backendapi.controller.queue.journal.OutDocumentJournalController;
import ru.spcex.clearing.backendapi.controller.queue.liabilities.LiabilitiesClaimsAssetController;
import ru.spcex.clearing.backendapi.controller.queue.liabilities.LiabilitiesClaimsMoneyController;
import ru.spcex.clearing.backendapi.controller.queue.misc.*;
import ru.spcex.clearing.backendapi.controller.queue.payment.PaymentInstructionController;
import ru.spcex.clearing.backendapi.controller.queue.scheduler.ClearingCalendarController;
import ru.spcex.clearing.backendapi.controller.queue.scheduler.LauncherController;
import ru.spcex.clearing.backendapi.controller.queue.scheduler.PlannerAllTodayController;
import ru.spcex.clearing.backendapi.controller.queue.scheduler.PlannerController;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.backendapi.controller.utils.MatcherFactory;
import ru.spcex.clearing.backendapi.controller.utils.TestUtils;
import ru.spcex.clearing.backendapi.domain.actions.IAction;
import ru.spcex.clearing.backendapi.meta.GetResponseFactory;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
import ru.spcex.platform.classes.base.SpcexObjectBase;
import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.iml.hazelcast.service.HazelcastService;
import ru.spcex.platform.utils.enumeration.IMessageResolver;
@ -45,11 +53,17 @@ import javax.annotation.PostConstruct;
import java.io.File;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Collection;
import java.util.Map;
import java.util.concurrent.atomic.AtomicLong;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import static ru.spcex.clearing.backendapi.controller.utils.JsonUtil.writeValue;
import static ru.spcex.clearing.backendapi.controller.utils.MatcherFactory.usingIgnoringFieldsComparator;
@ -69,7 +83,18 @@ import static ru.spcex.clearing.backendapi.controller.utils.MatcherFactory.using
RelationController.class,
//execution
ExecutionDepositController.class,
//journal
InDocumentJournalController.class,
ManagementJournalController.class,
OutDocumentJournalController.class,
//liabilities
LiabilitiesClaimsAssetController.class,
LiabilitiesClaimsMoneyController.class,
//misc
CurrencyController.class,
ErrorTextController.class,
ListingController.class,
MarketController.class,
NotificationController.class,
SessionController.class,
//payment
@ -149,4 +174,23 @@ public abstract class AbstractControllerTest {
predictableBaseRequest.setId(baseRequestResult.getId());
BASE_REQUEST_MATCHER.assertMatch(baseRequestResult, predictableBaseRequest);
}
protected <T extends SpcexObjectBase> void checkGettingAllFromRestApi(String imdgDistributedNames, T existsObj, String restUrl) throws Exception {
Class<T> clazz = (Class<T>) existsObj.getClass();
Imdg<T> inDocumentJournalImdg = hazelcastServiceTest.getImdg(imdgDistributedNames, clazz);
inDocumentJournalImdg.insert(existsObj);
Collection<T> values = inDocumentJournalImdg.getAllValues();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(restUrl)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
// ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
}
}

View file

@ -1,21 +1,9 @@
package ru.spcex.clearing.backendapi.controller.queue.account;
import org.junit.jupiter.api.Test;
import org.springframework.http.MediaType;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import ru.clearing.classes.statics.data.account.AccountBalance;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.platform.imdg.api.Imdg;
import java.util.Collection;
import java.util.Map;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import static ru.spcex.clearing.backendapi.controller.utils.JsonUtil.writeValue;
class AccountBalanceControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/account-balances/";
@ -34,20 +22,7 @@ class AccountBalanceControllerTest extends AbstractControllerTest {
existBankAccount.setAccount("123456789123");
existBankAccount.setId(currentId.get());
Imdg<AccountBalance> accountImdg = hazelcastServiceTest.getImdg(IMDGDistributedNames.Map_AccountBalance, AccountBalance.class);
accountImdg.insert(existBankAccount);
Collection<AccountBalance> values = accountImdg.getAllValues();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_AccountBalance, existBankAccount, REST_URL);
}
}

View file

@ -1,21 +1,9 @@
package ru.spcex.clearing.backendapi.controller.queue.account;
import org.junit.jupiter.api.Test;
import org.springframework.http.MediaType;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import ru.clearing.classes.statics.data.account.Account;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.platform.imdg.api.Imdg;
import java.util.Collection;
import java.util.Map;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import static ru.spcex.clearing.backendapi.controller.utils.JsonUtil.writeValue;
class AccountControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/accounting/accounts/";
@ -34,20 +22,7 @@ class AccountControllerTest extends AbstractControllerTest {
existBankAccount.setAccount("123456789123");
existBankAccount.setId(currentId.get());
Imdg<Account> accountImdg = hazelcastServiceTest.getImdg(IMDGDistributedNames.Map_Account, Account.class);
accountImdg.insert(existBankAccount);
Collection<Account> values = accountImdg.getAllValues();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_Account, existBankAccount, REST_URL);
}
}

View file

@ -12,7 +12,6 @@ import ru.spcex.clearing.backendapi.controller.request.cud.account.BankAccountUp
import ru.spcex.clearing.backendapi.controller.request.cud.common.CommonDeleteAction;
import ru.spcex.clearing.backendapi.controller.response.cud.CudResponse;
import ru.spcex.clearing.backendapi.controller.response.cud.QueueSuccessResponse;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.backendapi.controller.response.entity.account.BankAccountBackendGetById;
import ru.spcex.clearing.backendapi.controller.response.entity.account.BankAccountBackendGetFields;
import ru.spcex.clearing.backendapi.domain.actions.IAction;
@ -21,10 +20,6 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.platform.messaging.domain.ActionType;
import ru.spcex.clearing.platform.messaging.domain.Consts;
import ru.spcex.clearing.platform.messaging.domain.cud.account.BankAccountNewRequest;
import ru.spcex.platform.imdg.api.Imdg;
import java.util.Collection;
import java.util.Map;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
@ -242,21 +237,8 @@ class BankAccountControllerTest extends AbstractControllerTest {
existBankAccount.setTaxRegistrationReasonCode("886886");
existBankAccount.setId(currentId.get());
Imdg<BankAccount> bankAccountImdg = hazelcastServiceTest.getImdg(IMDGDistributedNames.Map_BankAccount, BankAccount.class);
bankAccountImdg.insert(existBankAccount);
Collection<BankAccount> values = bankAccountImdg.getAllValues();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_BankAccount, existBankAccount, REST_URL);
}
private void assertThrowsFor(IAction<?> iAction) {

View file

@ -1,21 +1,9 @@
package ru.spcex.clearing.backendapi.controller.queue.company;
import org.junit.jupiter.api.Test;
import org.springframework.http.MediaType;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import ru.clearing.classes.statics.data.company.CompanyRoleSet;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.platform.imdg.api.Imdg;
import java.util.Collection;
import java.util.Map;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import static ru.spcex.clearing.backendapi.controller.utils.JsonUtil.writeValue;
class CompanyRoleSetControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/company-role-sets/";
@ -34,20 +22,8 @@ class CompanyRoleSetControllerTest extends AbstractControllerTest {
existBankAccount.setRoleId(12L);
existBankAccount.setId(currentId.get());
Imdg<CompanyRoleSet> accountImdg = hazelcastServiceTest.getImdg(IMDGDistributedNames.Map_CompanyRoleSet, CompanyRoleSet.class);
accountImdg.insert(existBankAccount);
Collection<CompanyRoleSet> values = accountImdg.getAllValues();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_CompanyRoleSet, existBankAccount, REST_URL);
}
}

View file

@ -1,6 +1,5 @@
package ru.spcex.clearing.backendapi.controller.queue.company;
import com.hazelcast.core.IMap;
import org.junit.jupiter.api.Test;
import org.springframework.http.MediaType;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
@ -9,14 +8,10 @@ import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.backendapi.controller.request.cud.common.CommonDeleteAction;
import ru.spcex.clearing.backendapi.controller.response.cud.CudResponse;
import ru.spcex.clearing.backendapi.controller.response.cud.QueueSuccessResponse;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.platform.messaging.domain.ActionType;
import ru.spcex.clearing.platform.messaging.domain.Consts;
import java.util.Collection;
import java.util.Map;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
@ -67,20 +62,7 @@ class DeleteCompanyControllerTest extends AbstractControllerTest {
existCompany.setTradingCode("848484848484");
existCompany.setId(currentId.get());
IMap<Long, Company> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_Company);
iMap.put(existCompany.getId(), existCompany);
Collection<Company> values = iMap.values();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_Company, existCompany, REST_URL);
}
}

View file

@ -1,6 +1,5 @@
package ru.spcex.clearing.backendapi.controller.queue.company;
import com.hazelcast.core.IMap;
import org.junit.jupiter.api.Test;
import org.springframework.core.NestedExceptionUtils;
import org.springframework.http.MediaType;
@ -12,16 +11,12 @@ import ru.spcex.clearing.backendapi.controller.request.cud.company.ClearingMembe
import ru.spcex.clearing.backendapi.controller.request.cud.company.ClearingMemberCategoryUpdateAction;
import ru.spcex.clearing.backendapi.controller.response.cud.CudResponse;
import ru.spcex.clearing.backendapi.controller.response.cud.QueueSuccessResponse;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.backendapi.domain.actions.IAction;
import ru.spcex.clearing.backendapi.errors.ActionValidationException;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.platform.messaging.domain.ActionType;
import ru.spcex.clearing.platform.messaging.domain.Consts;
import java.util.Collection;
import java.util.Map;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
@ -144,21 +139,8 @@ class EditClearingMemberCategoryControllerTest extends AbstractControllerTest {
clearingMemberCategory.setCompanyId(1000000L);
clearingMemberCategory.setId(currentId.get());
IMap<Long, ClearingMemberCategory> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_ClearingMemberCategory);
iMap.put(clearingMemberCategory.getId(), clearingMemberCategory);
Collection<ClearingMemberCategory> values = iMap.values();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_ClearingMemberCategory, clearingMemberCategory, REST_URL);
}
private void assertThrowsFor(IAction<?> iAction) {

View file

@ -1,6 +1,5 @@
package ru.spcex.clearing.backendapi.controller.queue.company;
import com.hazelcast.core.IMap;
import org.junit.jupiter.api.Test;
import org.springframework.core.NestedExceptionUtils;
import org.springframework.http.MediaType;
@ -11,16 +10,12 @@ import ru.spcex.clearing.backendapi.controller.request.cud.company.ClearingMembe
import ru.spcex.clearing.backendapi.controller.request.cud.company.CompanySymbolUpdateAction;
import ru.spcex.clearing.backendapi.controller.response.cud.CudResponse;
import ru.spcex.clearing.backendapi.controller.response.cud.QueueSuccessResponse;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.backendapi.domain.actions.IAction;
import ru.spcex.clearing.backendapi.errors.ActionValidationException;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.platform.messaging.domain.ActionType;
import ru.spcex.clearing.platform.messaging.domain.Consts;
import java.util.Collection;
import java.util.Map;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
@ -94,21 +89,8 @@ class EditCompanySymbolControllerTest extends AbstractControllerTest {
companySymbols.setCompanySymbolValue("SymbolValue");
companySymbols.setId(currentId.get());
IMap<Long, CompanySymbols> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_CompanySymbols);
iMap.put(companySymbols.getId(), companySymbols);
Collection<CompanySymbols> values = iMap.values();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_CompanySymbols, companySymbols, REST_URL);
}
private void assertThrowsFor(IAction<?> iAction) {

View file

@ -1,6 +1,5 @@
package ru.spcex.clearing.backendapi.controller.queue.company;
import com.hazelcast.core.IMap;
import org.junit.jupiter.api.Test;
import org.springframework.core.NestedExceptionUtils;
import org.springframework.http.MediaType;
@ -12,16 +11,12 @@ import ru.spcex.clearing.backendapi.controller.request.cud.company.CompanySymbol
import ru.spcex.clearing.backendapi.controller.request.cud.company.ContactUpdateAction;
import ru.spcex.clearing.backendapi.controller.response.cud.CudResponse;
import ru.spcex.clearing.backendapi.controller.response.cud.QueueSuccessResponse;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.backendapi.domain.actions.IAction;
import ru.spcex.clearing.backendapi.errors.ActionValidationException;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.platform.messaging.domain.ActionType;
import ru.spcex.clearing.platform.messaging.domain.Consts;
import java.util.Collection;
import java.util.Map;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
@ -95,21 +90,8 @@ class EditContactControllerTest extends AbstractControllerTest {
companySymbolUpdateAction.setContactValue("ContactValue");
companySymbolUpdateAction.setId(currentId.get());
IMap<Long, Contact> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_Contact);
iMap.put(companySymbolUpdateAction.getId(), companySymbolUpdateAction);
Collection<Contact> values = iMap.values();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_Contact, companySymbolUpdateAction, REST_URL);
}
private void assertThrowsFor(IAction<?> iAction) {

View file

@ -1,22 +1,11 @@
package ru.spcex.clearing.backendapi.controller.queue.company;
import com.hazelcast.core.IMap;
import org.junit.jupiter.api.Test;
import org.springframework.http.MediaType;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import ru.clearing.classes.statics.data.profile.ProfileDocument;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import java.time.LocalDate;
import java.util.Collection;
import java.util.Map;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import static ru.spcex.clearing.backendapi.controller.utils.JsonUtil.writeValue;
class ProfileDocumentControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/profile-documents/";
@ -45,20 +34,7 @@ class ProfileDocumentControllerTest extends AbstractControllerTest {
profileDocument.setLink("Link");
profileDocument.setId(currentId.get());
IMap<Long, ProfileDocument> iMap = hazelcastServiceTest.getHazelcast().getMap(IMDGDistributedNames.Map_ProfileDocument);
iMap.put(profileDocument.getId(), profileDocument);
Collection<ProfileDocument> values = iMap.values();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_ProfileDocument, profileDocument, REST_URL);
}
}

View file

@ -10,7 +10,6 @@ import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.backendapi.controller.request.cud.company.RelationUpdateAction;
import ru.spcex.clearing.backendapi.controller.response.cud.CudResponse;
import ru.spcex.clearing.backendapi.controller.response.cud.QueueSuccessResponse;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.backendapi.domain.actions.IAction;
import ru.spcex.clearing.backendapi.errors.ActionValidationException;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
@ -18,9 +17,6 @@ import ru.spcex.clearing.platform.messaging.domain.ActionType;
import ru.spcex.clearing.platform.messaging.domain.Consts;
import ru.spcex.platform.imdg.api.Imdg;
import java.util.Collection;
import java.util.Map;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
@ -88,24 +84,11 @@ class RelationControllerTest extends AbstractControllerTest {
existBankAccount.setTaxRegistrationReasonCode("886886");
existBankAccount.setId(currentId.get());
Relation relation = new Relation();
relation.setId(existsId);
Imdg<Relation> relationImdg = hazelcastServiceTest.getImdg(IMDGDistributedNames.Map_Relation, Relation.class);
relationImdg.insert(relation);
Collection<Relation> values = relationImdg.getAllValues();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_Relation, relation, REST_URL);
}
private void assertThrowsFor(IAction<?> iAction) {

View file

@ -1,30 +1,21 @@
package ru.spcex.clearing.backendapi.controller.queue.execution;
import org.junit.jupiter.api.Test;
import org.springframework.http.MediaType;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import ru.clearing.classes.statics.data.execution.ExecutionDeposit;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.backendapi.controller.queue.account.BankAccountController;
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.platform.imdg.api.Imdg;
import java.util.Collection;
import java.util.Map;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import static ru.spcex.clearing.backendapi.controller.utils.JsonUtil.writeValue;
import java.math.BigDecimal;
import java.time.Instant;
import java.time.LocalDate;
class ExecutionDepositControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/execution-deposits/";
/**
* {@link BankAccountController#getAll()} <br>
* Тест проверяет получение запроса по REST API и отправку всех записей из таблицы hazelcast Map_BankAccount.<br>
* Входной запрос /securities/bank-accounts/ <br>
* {@link ExecutionDepositController#getAll()} <br>
* Тест проверяет получение запроса по REST API.<br>
* Входной запрос /execution-deposits/ <br>
* Ответ CommonGetAllResponse <br>
*/
@Test
@ -33,24 +24,33 @@ class ExecutionDepositControllerTest extends AbstractControllerTest {
ExecutionDeposit executionDeposit = new ExecutionDeposit();
executionDeposit.setId(currentId.get());
executionDeposit.setExchangeExecutionId(currentId.get());
executionDeposit.setCounterPartyId(currentId.get());
executionDeposit.setExchangeExecutionTime(Instant.now());
executionDeposit.setTradingDate(LocalDate.now());
executionDeposit.setAccountId(currentId.get());
executionDeposit.setMarket("mark");
executionDeposit.setPrice(new BigDecimal(0));
executionDeposit.setLots(new BigDecimal(0));
executionDeposit.setQuantity(new BigDecimal(0));
executionDeposit.setFirstLegAmount(new BigDecimal(0));
executionDeposit.setSecondLegAmount(new BigDecimal(0));
executionDeposit.setInterestAmount(new BigDecimal(0));
executionDeposit.setSide("sid");
executionDeposit.setSettlementCurrency("set");
executionDeposit.setCompanyId(currentId.get());
executionDeposit.setDuration(currentId.get());
executionDeposit.setFirstLegSettlementDate(LocalDate.now());
executionDeposit.setSecondLegSettlementDate(LocalDate.now());
executionDeposit.setFirstLegSettlementCode(LocalDate.now());
executionDeposit.setSecondLegSettlementCode(LocalDate.now());
executionDeposit.setSecurityFullName("sec");
executionDeposit.setSecuritySymbol("sec");
executionDeposit.setSecurityId(currentId.get());
executionDeposit.setCounterPartyId(currentId.get());
executionDeposit.setCoverageStatus("cov");
executionDeposit.setSessionId(currentId.get());
executionDeposit.setClearingDate(LocalDate.now());
Imdg<ExecutionDeposit> executionDepositImdg = hazelcastServiceTest.getImdg(IMDGDistributedNames.Map_ExecutionDeposit, ExecutionDeposit.class);
executionDepositImdg.insert(executionDeposit);
Collection<ExecutionDeposit> values = executionDepositImdg.getAllValues();
Collection<Map<String, Object>> all = responseFactory.responseFromObjectCollection(values);
CommonGetAllResponse expected = new CommonGetAllResponse();
expected.fromEntity(all);
//ACT
perform(MockMvcRequestBuilders.get(REST_URL)
.contentType(MediaType.APPLICATION_JSON))
.andDo(print())//output to the log request and response
//ASSERT
.andExpect(status().isOk())
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
.andExpect(content().json(writeValue(expected)));
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_ExecutionDeposit, executionDeposit, REST_URL);
}
}

View file

@ -0,0 +1,44 @@
package ru.spcex.clearing.backendapi.controller.queue.journal;
import org.junit.jupiter.api.Test;
import ru.clearing.classes.statics.data.journal.InDocumentJournal;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalTime;
class InDocumentJournalControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/in-document-journals/";
/**
* {@link InDocumentJournalController#getAll()} <br>
* Тест проверяет получение запроса по REST API.<br>
* Входной запрос /securities/bank-accounts/ <br>
* Ответ CommonGetAllResponse <br>
*/
@Test
void getAll() throws Exception {
//ARRANGE
InDocumentJournal inDocumentJournal = new InDocumentJournal();
inDocumentJournal.setId(currentId.get());
inDocumentJournal.setComment("Comment");
inDocumentJournal.setAmount(new BigDecimal(10));
inDocumentJournal.setDocumentName("doc");
inDocumentJournal.setReceiptDate(LocalDate.now());
inDocumentJournal.setResultStatus("res");
inDocumentJournal.setDossierNumber("dosser");
inDocumentJournal.setSender("send");
inDocumentJournal.setCourierType("dos");
inDocumentJournal.setRegistrationDate(LocalDate.now());
inDocumentJournal.setRegistrationTime(LocalTime.now());
inDocumentJournal.setRegistrationNumber(0L);
inDocumentJournal.setQuantity(0L);
inDocumentJournal.setClearingCode("dosser");
inDocumentJournal.setEmailDate(LocalDate.now());
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_InDocumentJournal, inDocumentJournal, REST_URL);
}
}

View file

@ -0,0 +1,37 @@
package ru.spcex.clearing.backendapi.controller.queue.journal;
import org.junit.jupiter.api.Test;
import ru.clearing.classes.statics.data.journal.ManagementJournal;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import java.time.Instant;
class ManagementJournalControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/management-journals/";
/**
* {@link ManagementJournalController#getAll()} <br>
* Тест проверяет получение запроса по REST API.<br>
* Входной запрос /management-journals/ <br>
* Ответ CommonGetAllResponse <br>
*/
@Test
void getAll() throws Exception {
//ARRANGE
ManagementJournal managementJournal = new ManagementJournal();
managementJournal.setId(currentId.get());
managementJournal.setCompanyId(currentId.get());
managementJournal.setUserId(currentId.get());
managementJournal.setManagementJournalType("doc");
managementJournal.setManagementJournalPurpose("man");
managementJournal.setManagementJournalStatus("res");
managementJournal.setText("dosser");
managementJournal.setChangeAccessSign("send");
managementJournal.setChangeDataSign("dos");
managementJournal.setEventDate(Instant.now());
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_ManagementJournal, managementJournal, REST_URL);
}
}

View file

@ -0,0 +1,43 @@
package ru.spcex.clearing.backendapi.controller.queue.journal;
import org.junit.jupiter.api.Test;
import ru.clearing.classes.statics.data.journal.OutDocumentJournal;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalTime;
class OutDocumentJournalControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/out-document-journals/";
/**
* {@link OutDocumentJournalController#getAll()} <br>
* Тест проверяет получение запроса по REST API.<br>
* Входной запрос /out-document-journals/ <br>
* Ответ CommonGetAllResponse <br>
*/
@Test
void getAll() throws Exception {
//ARRANGE
OutDocumentJournal outDocumentJournal = new OutDocumentJournal();
outDocumentJournal.setId(currentId.get());
outDocumentJournal.setRegistrationDate(LocalDate.now());
outDocumentJournal.setRegistrationTime(LocalTime.now());
outDocumentJournal.setRegistrationNumber(currentId.get());
outDocumentJournal.setDocumentName("man");
outDocumentJournal.setAddressee("res");
outDocumentJournal.setQuantity(currentId.get());
outDocumentJournal.setClearingCode("send");
outDocumentJournal.setCourierType("dos");
outDocumentJournal.setEmailDate(LocalDate.now());
outDocumentJournal.setAmount(new BigDecimal(0));
outDocumentJournal.setDossierNumber("doc");
outDocumentJournal.setPostDate(LocalDate.now());
outDocumentJournal.setResultStatus("res");
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_OutDocumentJournal, outDocumentJournal, REST_URL);
}
}

View file

@ -0,0 +1,53 @@
package ru.spcex.clearing.backendapi.controller.queue.liabilities;
import org.junit.jupiter.api.Test;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsAssets;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import java.math.BigDecimal;
import java.time.LocalDate;
class LiabilitiesClaimsAssetControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/liabilities-claims-assets/";
/**
* {@link LiabilitiesClaimsAssetController#getAll()} <br>
* Тест проверяет получение запроса по REST API.<br>
* Входной запрос /liabilities-claims-assets/ <br>
* Ответ CommonGetAllResponse <br>
*/
@Test
void getAll() throws Exception {
//ARRANGE
LiabilitiesClaimsAssets liabilitiesClaimsAssets = new LiabilitiesClaimsAssets();
liabilitiesClaimsAssets.setId(currentId.get());
liabilitiesClaimsAssets.setCompanyId(currentId.get());
liabilitiesClaimsAssets.setClearingDate(LocalDate.now());
liabilitiesClaimsAssets.setAccountId(currentId.get());
liabilitiesClaimsAssets.setAccountType("man");
liabilitiesClaimsAssets.setAccount("res");
liabilitiesClaimsAssets.setLiabilitiesQuantity(new BigDecimal(0));
liabilitiesClaimsAssets.setClaimsQuantity(new BigDecimal(0));
liabilitiesClaimsAssets.setCurrency("dos");
liabilitiesClaimsAssets.setSettlementDate(LocalDate.now());
liabilitiesClaimsAssets.setTradingDate(LocalDate.now());
liabilitiesClaimsAssets.setRefundDate(LocalDate.now());
liabilitiesClaimsAssets.setPrice(new BigDecimal(0));
liabilitiesClaimsAssets.setSecurityId(currentId.get());
liabilitiesClaimsAssets.setTradingCode("tra");
liabilitiesClaimsAssets.setClearingCode("cle");
liabilitiesClaimsAssets.setShortName("man");
liabilitiesClaimsAssets.setContract("res");
liabilitiesClaimsAssets.setComment("com");
liabilitiesClaimsAssets.setFullName("send");
liabilitiesClaimsAssets.setParentId(currentId.get());
liabilitiesClaimsAssets.setLiabilitiesClaimsMoneyId(currentId.get());
liabilitiesClaimsAssets.setClearingStatus(currentId.get());
liabilitiesClaimsAssets.setPaymentId(currentId.get());
liabilitiesClaimsAssets.setRefundPaymentId(currentId.get());
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_LiabilitiesClaimsAssets, liabilitiesClaimsAssets, REST_URL);
}
}

View file

@ -0,0 +1,42 @@
package ru.spcex.clearing.backendapi.controller.queue.liabilities;
import org.junit.jupiter.api.Test;
import ru.clearing.classes.statics.data.liabilities.LiabilitiesClaimsMoney;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import java.math.BigDecimal;
import java.time.LocalDate;
class LiabilitiesClaimsMoneyControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/liabilities-claims-money/";
/**
* {@link LiabilitiesClaimsMoneyController#getAll()} <br>
* Тест проверяет получение запроса по REST API.<br>
* Входной запрос /liabilities-claims-money/ <br>
* Ответ CommonGetAllResponse <br>
*/
@Test
void getAll() throws Exception {
//ARRANGE
LiabilitiesClaimsMoney liabilitiesClaimsMoney = new LiabilitiesClaimsMoney();
liabilitiesClaimsMoney.setId(currentId.get());
liabilitiesClaimsMoney.setCompanyId(currentId.get());
liabilitiesClaimsMoney.setAccountId(currentId.get());
liabilitiesClaimsMoney.setAccountType("acc");
liabilitiesClaimsMoney.setAccount("acc");
liabilitiesClaimsMoney.setLiabilitiesAmount(new BigDecimal(0));
liabilitiesClaimsMoney.setClaimsAmount(new BigDecimal(0));
liabilitiesClaimsMoney.setSettlementDate(LocalDate.now());
liabilitiesClaimsMoney.setTradingDate(LocalDate.now());
liabilitiesClaimsMoney.setCurrency("dos");
liabilitiesClaimsMoney.setTradingCode("tra");
liabilitiesClaimsMoney.setShortName("short");
liabilitiesClaimsMoney.setFullName("full");
liabilitiesClaimsMoney.setClearingDate(LocalDate.now());
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_LiabilitiesClaimsMoney, liabilitiesClaimsMoney, REST_URL);
}
}

View file

@ -0,0 +1,28 @@
package ru.spcex.clearing.backendapi.controller.queue.misc;
import org.junit.jupiter.api.Test;
import ru.clearing.classes.statics.data.misc.Currency;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
class CurrencyControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/currencies/";
/**
* {@link CurrencyController#getAll()} <br>
* Тест проверяет получение запроса по REST API.<br>
* Входной запрос /currencies/ <br>
* Ответ CurrencyController <br>
*/
@Test
void getAll() throws Exception {
//ARRANGE
Currency currency = new Currency();
currency.setId(currentId.get());
currency.setCountryCode("acc");
currency.setCurrencyCode("acc");
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_Currency, currency, REST_URL);
}
}

View file

@ -0,0 +1,30 @@
package ru.spcex.clearing.backendapi.controller.queue.misc;
import org.junit.jupiter.api.Test;
import ru.clearing.classes.statics.data.messages.ErrorText;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import java.time.LocalDate;
class ErrorTextControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/error-texts/";
/**
* {@link ErrorTextController#getAll()} <br>
* Тест проверяет получение запроса по REST API.<br>
* Входной запрос /error-texts/ <br>
* Ответ CommonGetAllResponse <br>
*/
@Test
void getAll() throws Exception {
//ARRANGE
ErrorText errorText = new ErrorText();
errorText.setId(currentId.get());
errorText.setText("text");
errorText.setUserId(currentId.get());
errorText.setClearingDate(LocalDate.now());
checkGettingAllFromRestApi(IMDGDistributedNames.Map_ErrorText, errorText, REST_URL);
}
}

View file

@ -0,0 +1,35 @@
package ru.spcex.clearing.backendapi.controller.queue.misc;
import org.junit.jupiter.api.Test;
import ru.clearing.classes.statics.data.misc.Listing;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import java.math.BigDecimal;
class ListingControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/listings/";
/**
* {@link ListingController#getAll()} <br>
* Тест проверяет получение запроса по REST API.<br>
* Входной запрос /listings/ <br>
* Ответ CommonGetAllResponse <br>
*/
@Test
void getAll() throws Exception {
//ARRANGE
Listing liabilitiesClaimsAssets = new Listing();
liabilitiesClaimsAssets.setId(currentId.get());
liabilitiesClaimsAssets.setSecurityId(currentId.get());
liabilitiesClaimsAssets.setLotSize(new BigDecimal(0));
liabilitiesClaimsAssets.setMarket("marc");
liabilitiesClaimsAssets.setSymbolCode("man");
liabilitiesClaimsAssets.setSymbolName("res");
liabilitiesClaimsAssets.setTradingCurrency("trad");
liabilitiesClaimsAssets.setWorkflowStatus("work");
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_Listing, liabilitiesClaimsAssets, REST_URL);
}
}

View file

@ -0,0 +1,32 @@
package ru.spcex.clearing.backendapi.controller.queue.misc;
import org.junit.jupiter.api.Test;
import ru.clearing.classes.statics.data.misc.Market;
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
class MarketControllerTest extends AbstractControllerTest {
private static final String REST_URL = "/markets/";
/**
* {@link MarketController#getAll()} <br>
* Тест проверяет получение запроса по REST API.<br>
* Входной запрос /markets/ <br>
* Ответ CommonGetAllResponse <br>
*/
@Test
void getAll() throws Exception {
//ARRANGE
Market liabilitiesClaimsAssets = new Market();
liabilitiesClaimsAssets.setId(currentId.get());
liabilitiesClaimsAssets.setDescription("des");
liabilitiesClaimsAssets.setExchangeId(currentId.get());
liabilitiesClaimsAssets.setName("name");
liabilitiesClaimsAssets.setCode("man");
liabilitiesClaimsAssets.setSettlementCurrency("res");
liabilitiesClaimsAssets.setSector("sec");
//ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_Market, liabilitiesClaimsAssets, REST_URL);
}
}