From 1e1840028a80ab291a0d39a4f2f63ac6f4c0e8c3 Mon Sep 17 00:00:00 2001 From: AKurakin Date: Wed, 31 Jan 2024 10:53:45 +0300 Subject: [PATCH] =?UTF-8?q?registry-service=20http://jira.mfd.msk:8088/bro?= =?UTF-8?q?wse/CLS-638=20LiabilitiesRegisterService=20=D0=BF=D0=BE=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=B8=D0=BB=20=D1=82=D0=B5=D1=81=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../clearing/registry/config/TestConfig.java | 26 ++++++++++ .../LiabilitiesRegisterServiceTest.java | 48 +++++++++++++------ 2 files changed, 59 insertions(+), 15 deletions(-) diff --git a/clearing-parent/registry-service/src/test/java/ru/spcex/clearing/registry/config/TestConfig.java b/clearing-parent/registry-service/src/test/java/ru/spcex/clearing/registry/config/TestConfig.java index b94c64c36..4835acd19 100644 --- a/clearing-parent/registry-service/src/test/java/ru/spcex/clearing/registry/config/TestConfig.java +++ b/clearing-parent/registry-service/src/test/java/ru/spcex/clearing/registry/config/TestConfig.java @@ -1,13 +1,17 @@ package ru.spcex.clearing.registry.config; +import org.mockito.Mockito; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.integration.sftp.session.SftpFileInfo; import ru.spcex.clearing.registry.config.settings.RegistryServiceSettings; import ru.spcex.clearing.registry.config.settings.ReportsStore; import java.io.File; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.List; @Configuration public class TestConfig { @@ -33,4 +37,26 @@ public class TestConfig { return StandardCharsets.UTF_8; } + @Bean + public SFTPReportsConfig.ReportsGateway reportsSftpGatewayMock() { + return new TestMockSFTP(); //sendFilesToSftp + } + + public static class TestMockSFTP implements SFTPReportsConfig.ReportsGateway { + public List sendFiles = new ArrayList<>(); + + @Override + public void sendToSftp(File file) { + sendFiles.add(file); + } + + @Override + public List listFiles(String dir) { + return null; + } + + public List getSendFiles() { + return sendFiles; + } + } } diff --git a/clearing-parent/registry-service/src/test/java/ru/spcex/clearing/registry/service/LiabilitiesRegisterServiceTest.java b/clearing-parent/registry-service/src/test/java/ru/spcex/clearing/registry/service/LiabilitiesRegisterServiceTest.java index d842b4ee9..63c45ffdc 100644 --- a/clearing-parent/registry-service/src/test/java/ru/spcex/clearing/registry/service/LiabilitiesRegisterServiceTest.java +++ b/clearing-parent/registry-service/src/test/java/ru/spcex/clearing/registry/service/LiabilitiesRegisterServiceTest.java @@ -17,6 +17,8 @@ import ru.clearing.classes.statics.data.register.LiabilitiesRegister; import ru.clearing.classes.statics.data.registry.Registry; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; +import ru.spcex.clearing.registry.config.SFTPReportsConfig; +import ru.spcex.clearing.registry.config.TestConfig; import ru.spcex.clearing.registry.config.ValidationConfig; import ru.spcex.clearing.test.TestUtils; import ru.spcex.clearing.test.config.ImdgTestConfig; @@ -27,12 +29,15 @@ import ru.spcex.platform.imdg.api.ImdgProvider; import ru.spcex.platform.utils.time.TimeUtil; import javax.annotation.PostConstruct; +import java.io.File; import java.math.BigDecimal; import java.time.Instant; import java.time.LocalDate; import java.util.Collection; +import java.util.List; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; @ExtendWith(SpringExtension.class) @ContextConfiguration(classes = { @@ -40,17 +45,18 @@ import static org.junit.jupiter.api.Assertions.assertEquals; LiabilitiesRegisterService.class, ImdgTestConfig.class, KafkaTestConfig.class, + TestConfig.class, }) @TestMethodOrder(MethodOrderer.OrderAnnotation.class) class LiabilitiesRegisterServiceTest { private static int requestCount = 0; - private static final String REGISTRY_DESIGNATION = RegistryDesignation.L.getKey(); - private static final String REGISTRY_INSTRUMENT_TYPE = RegistryInstrumentType.S.getKey(); + private static final String REGISTRY_DESIGNATION = RegistryDesignation.O.getKey(); + private static final String REGISTRY_INSTRUMENT_TYPE = RegistryInstrumentType.M.getKey(); private static final String REGISTRY_UNIT = RegistryUnit.T.getKey(); private static final String REGISTRY_FULL_NAME = "MY FULLNAME"; - private static final String REGISTRY_CODE = "ANY CODE"; + private static final String REGISTRY_CODE = REGISTRY_DESIGNATION + REGISTRY_INSTRUMENT_TYPE + "A" + REGISTRY_UNIT; // OMAT private static final String REGISTRY_ACCOUNT = "ANY ACCOUNT"; - private static final String REGISTRY_STATUS = "ANY STATUS"; + private static final String REGISTRY_STATUS = RegistryStatus.CLRD.getKey(); private static final Long REGISTRY_SESSION_ID = 1234L; private static final Long REGISTRY_COMPANY_ID = 10101L; private static final Long REGISTRY_SECURITY_ID = 123411L; @@ -74,6 +80,9 @@ class LiabilitiesRegisterServiceTest { @Qualifier("mockProducer") private Producer producer; + @Autowired + SFTPReportsConfig.ReportsGateway reportsGateway; // mock TestMockSFTP + @PostConstruct private void init() { ImdgTestConfig.waitAvailableImdgProviderAndAddAdminWithDefaultId(); @@ -128,16 +137,25 @@ class LiabilitiesRegisterServiceTest { //take all values is procceed imdg Collection allValues = liabilitiesRegisterMap.getAllValues(); - LiabilitiesRegister liabilitiesRegister = allValues.iterator().next(); - assertEquals(REGISTRY_COMPANY_ID, liabilitiesRegister.getCompanyId()); - assertEquals(REGISTRY_FULL_NAME, liabilitiesRegister.getCompanyFullName()); - assertEquals(REGISTRY_CODE, liabilitiesRegister.getRegistryCode()); - assertEquals(REGISTRY_ACCOUNT, liabilitiesRegister.getAccount()); - assertEquals(REGISTRY_STATUS, liabilitiesRegister.getRegistryStatus()); - assertEquals(REGISTRY_BALANCE, liabilitiesRegister.getSumLiabilities()); - assertEquals(REGISTRY_SETTLEMENT_DATE, liabilitiesRegister.getSettlementDate()); - assertEquals(SESSION_CLEARING_DATE, liabilitiesRegister.getValidFromDate()); - assertEquals(TimeUtil.toLocalDate(SESSION_UPDATE), liabilitiesRegister.getValidToDate()); - assertEquals(COMPANY_SYMBOL_VALUE, liabilitiesRegister.getInn()); + assertEquals(0, allValues.size()); // пока объекты не создаются, только в csv/xlsx файлы записываются +// LiabilitiesRegister liabilitiesRegister = allValues.iterator().next(); +// assertEquals(REGISTRY_COMPANY_ID, liabilitiesRegister.getCompanyId()); +// assertEquals(REGISTRY_FULL_NAME, liabilitiesRegister.getCompanyFullName()); +// assertEquals(REGISTRY_CODE, liabilitiesRegister.getRegistryCode()); +// assertEquals(REGISTRY_ACCOUNT, liabilitiesRegister.getAccount()); +// assertEquals(REGISTRY_STATUS, liabilitiesRegister.getRegistryStatus()); +// assertEquals(REGISTRY_BALANCE, liabilitiesRegister.getSumLiabilities()); +// assertEquals(REGISTRY_SETTLEMENT_DATE, liabilitiesRegister.getSettlementDate()); +// assertEquals(SESSION_CLEARING_DATE, liabilitiesRegister.getValidFromDate()); +// assertEquals(TimeUtil.toLocalDate(SESSION_UPDATE), liabilitiesRegister.getValidToDate()); +// assertEquals(COMPANY_SYMBOL_VALUE, liabilitiesRegister.getInn()); + + // out file verify: + // out\registry_240131104359228.xlsx + List sendFiles = ((TestConfig.TestMockSFTP) reportsGateway).getSendFiles(); // mock TestMockSFTP + assertEquals(1, sendFiles.size()); + File tempFile = sendFiles.get(0); + assertTrue(tempFile.length() > 1000, "Out file \"" + tempFile + "\" too small: " + tempFile.length()); + tempFile.delete(); } } \ No newline at end of file