Search in sources :

Example 1 with OccurrenceValidator

use of com.enonic.xp.core.impl.content.validate.OccurrenceValidator in project xp by enonic.

the class AbstractContentServiceTest method setUpAbstractContentServiceTest.

@BeforeEach
public void setUpAbstractContentServiceTest() {
    executorService = Executors.newSingleThreadExecutor();
    deleteAllIndices();
    ContextAccessor.INSTANCE.set(ctxDefault());
    final MemoryBlobStore blobStore = new MemoryBlobStore();
    binaryService = new BinaryServiceImpl();
    binaryService.setBlobStore(blobStore);
    final StorageDaoImpl storageDao = new StorageDaoImpl();
    storageDao.setClient(client);
    final EventPublisherImpl eventPublisher = new EventPublisherImpl(executorService);
    SearchDaoImpl searchDao = new SearchDaoImpl();
    searchDao.setClient(client);
    BranchServiceImpl branchService = new BranchServiceImpl();
    branchService.setStorageDao(storageDao);
    branchService.setSearchDao(searchDao);
    VersionServiceImpl versionService = new VersionServiceImpl();
    versionService.setStorageDao(storageDao);
    CommitServiceImpl commitService = new CommitServiceImpl();
    commitService.setStorageDao(storageDao);
    IndexServiceInternalImpl indexServiceInternal = new IndexServiceInternalImpl();
    indexServiceInternal.setClient(client);
    indexService = new IndexServiceImpl();
    indexService.setIndexServiceInternal(indexServiceInternal);
    NodeVersionServiceImpl nodeDao = new NodeVersionServiceImpl();
    nodeDao.setBlobStore(blobStore);
    IndexDataServiceImpl indexedDataService = new IndexDataServiceImpl();
    indexedDataService.setStorageDao(storageDao);
    NodeStorageServiceImpl storageService = new NodeStorageServiceImpl();
    storageService.setBranchService(branchService);
    storageService.setVersionService(versionService);
    storageService.setCommitService(commitService);
    storageService.setNodeVersionService(nodeDao);
    storageService.setIndexDataService(indexedDataService);
    NodeSearchServiceImpl searchService = new NodeSearchServiceImpl();
    searchService.setSearchDao(searchDao);
    final NodeRepositoryServiceImpl nodeRepositoryService = new NodeRepositoryServiceImpl();
    nodeRepositoryService.setIndexServiceInternal(indexServiceInternal);
    final IndexServiceInternalImpl elasticsearchIndexService = new IndexServiceInternalImpl();
    elasticsearchIndexService.setClient(client);
    final RepositoryEntryServiceImpl repositoryEntryService = new RepositoryEntryServiceImpl();
    repositoryEntryService.setIndexServiceInternal(elasticsearchIndexService);
    repositoryEntryService.setNodeStorageService(storageService);
    repositoryEntryService.setNodeSearchService(searchService);
    repositoryEntryService.setEventPublisher(eventPublisher);
    repositoryEntryService.setBinaryService(binaryService);
    repositoryService = new RepositoryServiceImpl(repositoryEntryService, elasticsearchIndexService, nodeRepositoryService, storageService, searchService);
    repositoryService.initialize();
    nodeService = new NodeServiceImpl();
    nodeService.setIndexServiceInternal(indexServiceInternal);
    nodeService.setNodeStorageService(storageService);
    nodeService.setNodeSearchService(searchService);
    nodeService.setEventPublisher(eventPublisher);
    nodeService.setBinaryService(binaryService);
    nodeService.setRepositoryService(repositoryService);
    nodeService.initialize();
    mixinService = Mockito.mock(MixinService.class);
    Mockito.when(mixinService.inlineFormItems(Mockito.isA(Form.class))).then(AdditionalAnswers.returnsFirstArg());
    xDataService = Mockito.mock(XDataService.class);
    Map<String, List<String>> metadata = new HashMap<>();
    metadata.put(HttpHeaders.CONTENT_TYPE, List.of("image/jpg"));
    final ExtractedData extractedData = ExtractedData.create().metadata(metadata).build();
    final BinaryExtractor extractor = Mockito.mock(BinaryExtractor.class);
    Mockito.when(extractor.extract(Mockito.isA(ByteSource.class))).thenReturn(extractedData);
    mediaInfoService = new MediaInfoServiceImpl();
    mediaInfoService.setBinaryExtractor(extractor);
    final ResourceService resourceService = Mockito.mock(ResourceService.class);
    final SiteServiceImpl siteService = new SiteServiceImpl();
    siteService.setResourceService(resourceService);
    siteService.setMixinService(mixinService);
    contentTypeService = new ContentTypeServiceImpl(null, null, mixinService);
    PageDescriptorService pageDescriptorService = Mockito.mock(PageDescriptorService.class);
    PartDescriptorService partDescriptorService = Mockito.mock(PartDescriptorService.class);
    LayoutDescriptorService layoutDescriptorService = Mockito.mock(LayoutDescriptorService.class);
    auditLogService = Mockito.mock(AuditLogService.class);
    final ContentConfig contentConfig = Mockito.mock(ContentConfig.class);
    Mockito.when(contentConfig.auditlog_enabled()).thenReturn(Boolean.TRUE);
    final ContentAuditLogSupportImpl contentAuditLogSupport = new ContentAuditLogSupportImpl(contentConfig, new ContentAuditLogExecutorImpl(), auditLogService);
    final SecurityServiceImpl securityService = new SecurityServiceImpl(nodeService, indexService);
    securityService.initialize();
    final ProjectPermissionsContextManagerImpl projectAccessContextManager = new ProjectPermissionsContextManagerImpl();
    final ProjectServiceImpl projectService = new ProjectServiceImpl(repositoryService, indexService, nodeService, securityService, projectAccessContextManager, eventPublisher);
    projectService.initialize();
    contentService = new ContentServiceImpl(nodeService, pageDescriptorService, partDescriptorService, layoutDescriptorService);
    contentService.setEventPublisher(eventPublisher);
    contentService.setMediaInfoService(mediaInfoService);
    contentService.setSiteService(siteService);
    contentService.setContentTypeService(contentTypeService);
    contentService.setxDataService(xDataService);
    contentService.setFormDefaultValuesProcessor((form, data) -> {
    });
    contentService.setContentAuditLogSupport(contentAuditLogSupport);
    contentService.addContentValidator(new ContentNameValidator());
    contentService.addContentValidator(new SiteConfigsValidator(siteService));
    contentService.addContentValidator(new OccurrenceValidator());
    contentService.addContentValidator(new ExtraDataValidator(xDataService));
    contentService.initialize(mock(ContentConfig.class, invocation -> invocation.getMethod().getDefaultValue()));
}
Also used : BeforeEach(org.junit.jupiter.api.BeforeEach) IndexServiceInternalImpl(com.enonic.xp.repo.impl.elasticsearch.IndexServiceInternalImpl) AbstractElasticsearchIntegrationTest(com.enonic.xp.repo.impl.elasticsearch.AbstractElasticsearchIntegrationTest) NodeRepositoryServiceImpl(com.enonic.xp.repo.impl.repository.NodeRepositoryServiceImpl) RepositoryId(com.enonic.xp.repository.RepositoryId) HttpHeaders(com.google.common.net.HttpHeaders) ContextAccessor(com.enonic.xp.context.ContextAccessor) Map(java.util.Map) CreateAttachment(com.enonic.xp.attachment.CreateAttachment) IndexServiceImpl(com.enonic.xp.repo.impl.index.IndexServiceImpl) ExtraDataValidator(com.enonic.xp.core.impl.content.validate.ExtraDataValidator) LayoutDescriptorService(com.enonic.xp.region.LayoutDescriptorService) ExtraDatas(com.enonic.xp.content.ExtraDatas) Executors(java.util.concurrent.Executors) InputTypeName(com.enonic.xp.inputtype.InputTypeName) VersionServiceImpl(com.enonic.xp.repo.impl.version.VersionServiceImpl) NodeStorageServiceImpl(com.enonic.xp.repo.impl.storage.NodeStorageServiceImpl) Assertions.assertTrue(org.junit.jupiter.api.Assertions.assertTrue) BinaryServiceImpl(com.enonic.xp.repo.impl.binary.BinaryServiceImpl) RoleKeys(com.enonic.xp.security.RoleKeys) ContentAuditLogSupportImpl(com.enonic.xp.core.impl.content.ContentAuditLogSupportImpl) Mockito.mock(org.mockito.Mockito.mock) SecurityServiceImpl(com.enonic.xp.core.impl.security.SecurityServiceImpl) ContentConstants(com.enonic.xp.content.ContentConstants) LocalDateTime(java.time.LocalDateTime) FindContentVersionsResult(com.enonic.xp.content.FindContentVersionsResult) ContentNameValidator(com.enonic.xp.core.impl.content.validate.ContentNameValidator) ContentTypeName(com.enonic.xp.schema.content.ContentTypeName) FormItemSet(com.enonic.xp.form.FormItemSet) NodeServiceImpl(com.enonic.xp.repo.impl.node.NodeServiceImpl) InputTypeProperty(com.enonic.xp.inputtype.InputTypeProperty) MediaInfoServiceImpl(com.enonic.xp.core.impl.media.MediaInfoServiceImpl) PageDescriptorService(com.enonic.xp.page.PageDescriptorService) GeoPoint(com.enonic.xp.util.GeoPoint) OccurrenceValidator(com.enonic.xp.core.impl.content.validate.OccurrenceValidator) ContentTypeServiceImpl(com.enonic.xp.core.impl.schema.content.ContentTypeServiceImpl) RelationshipTypeName(com.enonic.xp.schema.relationship.RelationshipTypeName) Assertions.assertEquals(org.junit.jupiter.api.Assertions.assertEquals) ByteSource(com.google.common.io.ByteSource) RepositoryEntryServiceImpl(com.enonic.xp.repo.impl.repository.RepositoryEntryServiceImpl) ResourceService(com.enonic.xp.resource.ResourceService) ContentPath(com.enonic.xp.content.ContentPath) PropertySet(com.enonic.xp.data.PropertySet) Content(com.enonic.xp.content.Content) IOException(java.io.IOException) AuthenticationInfo(com.enonic.xp.security.auth.AuthenticationInfo) AfterEach(org.junit.jupiter.api.AfterEach) ExtractedData(com.enonic.xp.extractor.ExtractedData) ContentIds(com.enonic.xp.content.ContentIds) ContentConfig(com.enonic.xp.core.impl.content.ContentConfig) MemoryBlobStore(com.enonic.xp.internal.blobstore.MemoryBlobStore) FindContentByParentResult(com.enonic.xp.content.FindContentByParentResult) IdProviderKey(com.enonic.xp.security.IdProviderKey) Branch(com.enonic.xp.branch.Branch) IndexDataServiceImpl(com.enonic.xp.repo.impl.storage.IndexDataServiceImpl) CommitServiceImpl(com.enonic.xp.repo.impl.commit.CommitServiceImpl) ContentId(com.enonic.xp.content.ContentId) Assertions.assertFalse(org.junit.jupiter.api.Assertions.assertFalse) FindContentByParentParams(com.enonic.xp.content.FindContentByParentParams) LocalTime(java.time.LocalTime) ContextBuilder(com.enonic.xp.context.ContextBuilder) StorageDaoImpl(com.enonic.xp.repo.impl.elasticsearch.storage.StorageDaoImpl) ProjectPermissionsContextManagerImpl(com.enonic.xp.core.impl.project.ProjectPermissionsContextManagerImpl) User(com.enonic.xp.security.User) ContentServiceImpl(com.enonic.xp.core.impl.content.ContentServiceImpl) UUID(java.util.UUID) Instant(java.time.Instant) ContentType(com.enonic.xp.schema.content.ContentType) AccessControlList(com.enonic.xp.security.acl.AccessControlList) AdditionalAnswers(org.mockito.AdditionalAnswers) BinaryExtractor(com.enonic.xp.extractor.BinaryExtractor) SearchDaoImpl(com.enonic.xp.repo.impl.elasticsearch.search.SearchDaoImpl) List(java.util.List) LocalDate(java.time.LocalDate) NodeSearchServiceImpl(com.enonic.xp.repo.impl.search.NodeSearchServiceImpl) FindContentByQueryResult(com.enonic.xp.content.FindContentByQueryResult) Context(com.enonic.xp.context.Context) ProjectServiceImpl(com.enonic.xp.core.impl.project.ProjectServiceImpl) MixinService(com.enonic.xp.schema.mixin.MixinService) ContentAuditLogExecutorImpl(com.enonic.xp.core.impl.content.ContentAuditLogExecutorImpl) SiteServiceImpl(com.enonic.xp.core.impl.site.SiteServiceImpl) CreateContentParams(com.enonic.xp.content.CreateContentParams) HashMap(java.util.HashMap) RepositoryServiceImpl(com.enonic.xp.repo.impl.repository.RepositoryServiceImpl) ContentVersion(com.enonic.xp.content.ContentVersion) CreateAttachments(com.enonic.xp.attachment.CreateAttachments) FindContentVersionsParams(com.enonic.xp.content.FindContentVersionsParams) ContentInitializer(com.enonic.xp.core.impl.project.init.ContentInitializer) AuditLogService(com.enonic.xp.audit.AuditLogService) ExecutorService(java.util.concurrent.ExecutorService) XDataService(com.enonic.xp.schema.xdata.XDataService) PropertyTree(com.enonic.xp.data.PropertyTree) PartDescriptorService(com.enonic.xp.region.PartDescriptorService) Iterator(java.util.Iterator) EventPublisherImpl(com.enonic.xp.core.impl.event.EventPublisherImpl) ContentPublishInfo(com.enonic.xp.content.ContentPublishInfo) Form(com.enonic.xp.form.Form) Mockito(org.mockito.Mockito) NodeVersionServiceImpl(com.enonic.xp.repo.impl.node.dao.NodeVersionServiceImpl) PrincipalKey(com.enonic.xp.security.PrincipalKey) Reference(com.enonic.xp.util.Reference) SiteConfigsValidator(com.enonic.xp.core.impl.content.validate.SiteConfigsValidator) Input(com.enonic.xp.form.Input) BranchServiceImpl(com.enonic.xp.repo.impl.branch.storage.BranchServiceImpl) InputStream(java.io.InputStream) VersionServiceImpl(com.enonic.xp.repo.impl.version.VersionServiceImpl) NodeVersionServiceImpl(com.enonic.xp.repo.impl.node.dao.NodeVersionServiceImpl) EventPublisherImpl(com.enonic.xp.core.impl.event.EventPublisherImpl) ContentAuditLogExecutorImpl(com.enonic.xp.core.impl.content.ContentAuditLogExecutorImpl) Form(com.enonic.xp.form.Form) HashMap(java.util.HashMap) XDataService(com.enonic.xp.schema.xdata.XDataService) ResourceService(com.enonic.xp.resource.ResourceService) NodeRepositoryServiceImpl(com.enonic.xp.repo.impl.repository.NodeRepositoryServiceImpl) RepositoryServiceImpl(com.enonic.xp.repo.impl.repository.RepositoryServiceImpl) SiteServiceImpl(com.enonic.xp.core.impl.site.SiteServiceImpl) LayoutDescriptorService(com.enonic.xp.region.LayoutDescriptorService) IndexServiceImpl(com.enonic.xp.repo.impl.index.IndexServiceImpl) NodeServiceImpl(com.enonic.xp.repo.impl.node.NodeServiceImpl) ProjectServiceImpl(com.enonic.xp.core.impl.project.ProjectServiceImpl) BinaryExtractor(com.enonic.xp.extractor.BinaryExtractor) RepositoryEntryServiceImpl(com.enonic.xp.repo.impl.repository.RepositoryEntryServiceImpl) IndexServiceInternalImpl(com.enonic.xp.repo.impl.elasticsearch.IndexServiceInternalImpl) AccessControlList(com.enonic.xp.security.acl.AccessControlList) List(java.util.List) SiteConfigsValidator(com.enonic.xp.core.impl.content.validate.SiteConfigsValidator) NodeSearchServiceImpl(com.enonic.xp.repo.impl.search.NodeSearchServiceImpl) ExtraDataValidator(com.enonic.xp.core.impl.content.validate.ExtraDataValidator) BinaryServiceImpl(com.enonic.xp.repo.impl.binary.BinaryServiceImpl) PartDescriptorService(com.enonic.xp.region.PartDescriptorService) SearchDaoImpl(com.enonic.xp.repo.impl.elasticsearch.search.SearchDaoImpl) CommitServiceImpl(com.enonic.xp.repo.impl.commit.CommitServiceImpl) NodeVersionServiceImpl(com.enonic.xp.repo.impl.node.dao.NodeVersionServiceImpl) NodeRepositoryServiceImpl(com.enonic.xp.repo.impl.repository.NodeRepositoryServiceImpl) PageDescriptorService(com.enonic.xp.page.PageDescriptorService) AuditLogService(com.enonic.xp.audit.AuditLogService) MediaInfoServiceImpl(com.enonic.xp.core.impl.media.MediaInfoServiceImpl) ContentTypeServiceImpl(com.enonic.xp.core.impl.schema.content.ContentTypeServiceImpl) IndexDataServiceImpl(com.enonic.xp.repo.impl.storage.IndexDataServiceImpl) BranchServiceImpl(com.enonic.xp.repo.impl.branch.storage.BranchServiceImpl) SecurityServiceImpl(com.enonic.xp.core.impl.security.SecurityServiceImpl) MixinService(com.enonic.xp.schema.mixin.MixinService) ContentConfig(com.enonic.xp.core.impl.content.ContentConfig) ExtractedData(com.enonic.xp.extractor.ExtractedData) OccurrenceValidator(com.enonic.xp.core.impl.content.validate.OccurrenceValidator) StorageDaoImpl(com.enonic.xp.repo.impl.elasticsearch.storage.StorageDaoImpl) ContentAuditLogSupportImpl(com.enonic.xp.core.impl.content.ContentAuditLogSupportImpl) ContentServiceImpl(com.enonic.xp.core.impl.content.ContentServiceImpl) ContentNameValidator(com.enonic.xp.core.impl.content.validate.ContentNameValidator) ProjectPermissionsContextManagerImpl(com.enonic.xp.core.impl.project.ProjectPermissionsContextManagerImpl) ByteSource(com.google.common.io.ByteSource) NodeStorageServiceImpl(com.enonic.xp.repo.impl.storage.NodeStorageServiceImpl) MemoryBlobStore(com.enonic.xp.internal.blobstore.MemoryBlobStore) BeforeEach(org.junit.jupiter.api.BeforeEach)

Aggregations

CreateAttachment (com.enonic.xp.attachment.CreateAttachment)1 CreateAttachments (com.enonic.xp.attachment.CreateAttachments)1 AuditLogService (com.enonic.xp.audit.AuditLogService)1 Branch (com.enonic.xp.branch.Branch)1 Content (com.enonic.xp.content.Content)1 ContentConstants (com.enonic.xp.content.ContentConstants)1 ContentId (com.enonic.xp.content.ContentId)1 ContentIds (com.enonic.xp.content.ContentIds)1 ContentPath (com.enonic.xp.content.ContentPath)1 ContentPublishInfo (com.enonic.xp.content.ContentPublishInfo)1 ContentVersion (com.enonic.xp.content.ContentVersion)1 CreateContentParams (com.enonic.xp.content.CreateContentParams)1 ExtraDatas (com.enonic.xp.content.ExtraDatas)1 FindContentByParentParams (com.enonic.xp.content.FindContentByParentParams)1 FindContentByParentResult (com.enonic.xp.content.FindContentByParentResult)1 FindContentByQueryResult (com.enonic.xp.content.FindContentByQueryResult)1 FindContentVersionsParams (com.enonic.xp.content.FindContentVersionsParams)1 FindContentVersionsResult (com.enonic.xp.content.FindContentVersionsResult)1 Context (com.enonic.xp.context.Context)1 ContextAccessor (com.enonic.xp.context.ContextAccessor)1