more tests

This commit is contained in:
Timo Bejan 2021-09-20 10:49:47 +03:00
parent e7273d3c47
commit 54126895d2
7 changed files with 147 additions and 0 deletions

View File

@ -121,4 +121,8 @@ public class File {
private Dossier dossier;
@Column(updatable = false, insertable = false, name = "dossier_id")
private String dossierId;
}

View File

@ -0,0 +1,8 @@
package com.iqser.red.service.peristence.v1.server.integration.client;
import com.iqser.red.service.persistence.service.v1.api.resources.DossierAttributesResource;
import org.springframework.cloud.openfeign.FeignClient;
@FeignClient(name = "DossierAttributeClient", url = "http://localhost:${server.port}")
public interface DossierAttributeClient extends DossierAttributesResource {
}

View File

@ -0,0 +1,8 @@
package com.iqser.red.service.peristence.v1.server.integration.client;
import com.iqser.red.service.persistence.service.v1.api.resources.DossierAttributesConfigResource;
import org.springframework.cloud.openfeign.FeignClient;
@FeignClient(name = "DossierAttributeConfigClient", url = "http://localhost:${server.port}")
public interface DossierAttributeConfigClient extends DossierAttributesConfigResource {
}

View File

@ -0,0 +1,8 @@
package com.iqser.red.service.peristence.v1.server.integration.client;
import com.iqser.red.service.persistence.service.v1.api.resources.FileAttributesResource;
import org.springframework.cloud.openfeign.FeignClient;
@FeignClient(name = "FileAttributeClient", url = "http://localhost:${server.port}")
public interface FileAttributeClient extends FileAttributesResource {
}

View File

@ -0,0 +1,9 @@
package com.iqser.red.service.peristence.v1.server.integration.client;
import com.iqser.red.service.persistence.service.v1.api.resources.FileAttributesConfigResource;
import com.iqser.red.service.persistence.service.v1.api.resources.FileAttributesResource;
import org.springframework.cloud.openfeign.FeignClient;
@FeignClient(name = "FileAttributeConfigClient", url = "http://localhost:${server.port}")
public interface FileAttributeConfigClient extends FileAttributesConfigResource {
}

View File

@ -0,0 +1,8 @@
package com.iqser.red.service.peristence.v1.server.integration.client;
import com.iqser.red.service.persistence.service.v1.api.resources.ReanalysisResource;
import org.springframework.cloud.openfeign.FeignClient;
@FeignClient(name = "ReanalysisClient", url = "http://localhost:${server.port}")
public interface ReanalysisClient extends ReanalysisResource {
}

View File

@ -0,0 +1,102 @@
package com.iqser.red.service.peristence.v1.server.integration.tests;
import com.iqser.red.service.peristence.v1.server.integration.client.FileClient;
import com.iqser.red.service.peristence.v1.server.integration.client.ReanalysisClient;
import com.iqser.red.service.peristence.v1.server.integration.service.DossierTesterAndProvider;
import com.iqser.red.service.peristence.v1.server.integration.service.FileTesterAndProvider;
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.FileRepository;
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.File;
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.FileStatus;
import org.assertj.core.util.Sets;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.Set;
import static org.assertj.core.api.Assertions.assertThat;
public class ReanalysisTest extends AbstractPersistenceServerServiceTest {
@Autowired
private FileTesterAndProvider fileTesterAndProvider;
@Autowired
private DossierTesterAndProvider dossierTesterAndProvider;
@Autowired
private ReanalysisClient reanalysisClient;
@Autowired
private FileClient fileClient;
@Autowired
private FileRepository fileRepository;
@Test
public void testReanalysis() {
var dossier = dossierTesterAndProvider.provideTestDossier();
var file = fileTesterAndProvider.testAndProvideFile(dossier);
reanalysisClient.ocrDossier(dossier.getId());
var loadedFile = fileClient.getFileStatus(dossier.getId(), file.getId());
assertThat(loadedFile.getStatus()).isEqualTo(FileStatus.OCR_PROCESSING);
resetStatus(file);
loadedFile = fileClient.getFileStatus(dossier.getId(), file.getId());
assertThat(loadedFile.getStatus()).isEqualTo(FileStatus.UNASSIGNED);
resetStatus(file);
reanalysisClient.ocrFile(dossier.getId(), file.getId(), true);
loadedFile = fileClient.getFileStatus(dossier.getId(), file.getId());
assertThat(loadedFile.getStatus()).isEqualTo(FileStatus.OCR_PROCESSING);
resetStatus(file);
reanalysisClient.ocrFiles(dossier.getId(), Set.of(file.getId()));
loadedFile = fileClient.getFileStatus(dossier.getId(), file.getId());
assertThat(loadedFile.getStatus()).isEqualTo(FileStatus.OCR_PROCESSING);
resetStatus(file);
reanalysisClient.reanalyzeFiles(dossier.getId(), Set.of(file.getId()), true);
loadedFile = fileClient.getFileStatus(dossier.getId(), file.getId());
assertThat(loadedFile.getStatus()).isEqualTo(FileStatus.PROCESSING);
resetStatus(file);
reanalysisClient.reanalyzeFile(dossier.getId(), file.getId(), Sets.newHashSet());
loadedFile = fileClient.getFileStatus(dossier.getId(), file.getId());
assertThat(loadedFile.getStatus()).isEqualTo(FileStatus.PROCESSING);
resetStatus(file);
reanalysisClient.reanalyzeDossier(dossier.getId(), true);
loadedFile = fileClient.getFileStatus(dossier.getId(), file.getId());
assertThat(loadedFile.getStatus()).isEqualTo(FileStatus.PROCESSING);
resetStatus(file);
reanalysisClient.reindex(dossier.getId(), Set.of(file.getId()));
fileClient.getFileStatus(dossier.getId(), file.getId());
}
private void resetStatus(File file) {
fileRepository.findById(file.getId()).ifPresent(savedFile -> {
savedFile.setStatus(FileStatus.UNASSIGNED);
fileRepository.save(savedFile);
});
var loadedFile = fileClient.getFileStatus(file.getDossierId(), file.getId());
assertThat(loadedFile.getStatus()).isEqualTo(FileStatus.UNASSIGNED);
}
}