Skip to content

Commit

Permalink
MSEARCH-631: Make system user creation optional
Browse files Browse the repository at this point in the history
  • Loading branch information
pfilippov-epam committed Nov 12, 2023
1 parent 65c8eec commit 14b56b0
Show file tree
Hide file tree
Showing 12 changed files with 109 additions and 240 deletions.
87 changes: 44 additions & 43 deletions README.md

Large diffs are not rendered by default.

5 changes: 3 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<name>mod-search</name>
<groupId>org.folio</groupId>
<artifactId>mod-search</artifactId>
<version>3.1.0-SNAPSHOT</version>
<version>3.1.0-msearch-631</version>
<description>FOLIO search service</description>
<packaging>jar</packaging>

Expand All @@ -35,6 +35,7 @@
</sonar.exclusions>

<folio-spring-support.version>7.2.0</folio-spring-support.version>
<folio-spring-system-user.version>7.3.0-folspringb-128</folio-spring-system-user.version>
<folio-service-tools.version>3.1.0</folio-service-tools.version>
<folio-isbn-utils.version>1.6.0</folio-isbn-utils.version>
<folio-cql2pgjson.version>35.1.0</folio-cql2pgjson.version>
Expand Down Expand Up @@ -75,7 +76,7 @@
<dependency>
<groupId>org.folio</groupId>
<artifactId>folio-spring-system-user</artifactId>
<version>${folio-spring-support.version}</version>
<version>${folio-spring-system-user.version}</version>
</dependency>

<dependency>
Expand Down
27 changes: 0 additions & 27 deletions src/main/java/org/folio/search/client/AuthnClient.java

This file was deleted.

46 changes: 0 additions & 46 deletions src/main/java/org/folio/search/client/PermissionsClient.java

This file was deleted.

36 changes: 0 additions & 36 deletions src/main/java/org/folio/search/client/UsersClient.java

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@

import java.security.SecureRandom;
import java.util.Date;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2;
import org.apache.commons.lang3.RandomStringUtils;
Expand All @@ -20,13 +18,10 @@
public class ResourceIdsJobService {

private final ConsortiumTenantExecutor consortiumTenantExecutor;
private final TenantScopedExecutionService tenantExecutionService;
private final ResourceIdsJobRepository jobRepository;
private final ResourceIdsJobMapper resourceIdsJobMapper;
private final ResourceIdService resourceIdService;

private final ExecutorService executor = Executors.newCachedThreadPool();

public ResourceIdsJob getJobById(String id) {
var jobEntity = consortiumTenantExecutor.execute(() -> jobRepository.getReferenceById(id));
return resourceIdsJobMapper.convert(jobEntity);
Expand Down

This file was deleted.

1 change: 1 addition & 0 deletions src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ folio:
cache:
call-number-browse-ranges-cache-spec: maximumSize=50,expireAfterWrite=60s
system-user:
enabled: ${SYSTEM_USER_ENABLED:true}
username: ${SYSTEM_USER_USERNAME:mod-search}
password: ${SYSTEM_USER_PASSWORD}
lastname: System
Expand Down
29 changes: 0 additions & 29 deletions src/test/java/org/folio/search/client/PermissionsClientTest.java

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
package org.folio.search.controller;

import static org.assertj.core.api.Assertions.assertThatThrownBy;
import static org.folio.search.sample.SampleInstances.getSemanticWebAsMap;
import static org.folio.search.sample.SampleInstances.getSemanticWebId;
import static org.hamcrest.Matchers.is;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;

import org.folio.search.domain.dto.Instance;
import org.folio.search.support.base.BaseIntegrationTest;
import org.folio.spring.client.AuthnClient;
import org.folio.spring.client.PermissionsClient;
import org.folio.spring.client.UsersClient;
import org.folio.spring.test.type.IntegrationTest;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.test.context.TestPropertySource;

@IntegrationTest
@TestPropertySource(properties = "folio.system-user.enabled=false")
class DisabledSystemUserIT extends BaseIntegrationTest {

@BeforeAll
static void prepare(@Autowired ApplicationContext ctx) {
assertThatThrownBy(() -> ctx.getBean(AuthnClient.class)).isInstanceOf(NoSuchBeanDefinitionException.class);
assertThatThrownBy(() -> ctx.getBean(UsersClient.class)).isInstanceOf(NoSuchBeanDefinitionException.class);
assertThatThrownBy(() -> ctx.getBean(PermissionsClient.class)).isInstanceOf(NoSuchBeanDefinitionException.class);

setUpTenant(Instance.class, getSemanticWebAsMap());
}

@AfterAll
static void cleanUp() {
removeTenant();
}

@Test
void searchByInstances_parameterized_singleResult() throws Exception {
doSearchByInstances(prepareQuery("cql.allRecords = 1", ""))
.andExpect(jsonPath("$.totalRecords", is(1)))
.andExpect(jsonPath("$.instances[0].id", is(getSemanticWebId())));
}
}
12 changes: 11 additions & 1 deletion src/test/java/org/folio/search/controller/SearchInstanceIT.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.containsInAnyOrder;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.notNullValue;
import static org.junit.jupiter.params.provider.Arguments.arguments;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
Expand All @@ -23,6 +24,9 @@
import org.folio.search.domain.dto.ItemEffectiveCallNumberComponents;
import org.folio.search.model.service.ResultList;
import org.folio.search.support.base.BaseIntegrationTest;
import org.folio.spring.client.AuthnClient;
import org.folio.spring.client.PermissionsClient;
import org.folio.spring.client.UsersClient;
import org.folio.spring.test.type.IntegrationTest;
import org.hamcrest.Matchers;
import org.junit.jupiter.api.AfterAll;
Expand All @@ -33,12 +37,18 @@
import org.junit.jupiter.params.provider.Arguments;
import org.junit.jupiter.params.provider.CsvSource;
import org.junit.jupiter.params.provider.MethodSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;

@IntegrationTest
class SearchInstanceIT extends BaseIntegrationTest {

@BeforeAll
static void prepare() {
static void prepare(@Autowired ApplicationContext applicationContext) {
assertThat(applicationContext.getBean(AuthnClient.class), notNullValue());
assertThat(applicationContext.getBean(UsersClient.class), notNullValue());
assertThat(applicationContext.getBean(PermissionsClient.class), notNullValue());

setUpTenant(Instance.class, getSemanticWebAsMap());
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
import static org.folio.search.utils.TestUtils.setEnvProperty;
import static org.hamcrest.Matchers.is;
import static org.springframework.http.MediaType.APPLICATION_JSON;
import static org.springframework.test.annotation.DirtiesContext.ClassMode.AFTER_CLASS;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
Expand Down Expand Up @@ -55,6 +56,7 @@
import org.springframework.cache.CacheManager;
import org.springframework.http.HttpHeaders;
import org.springframework.kafka.core.KafkaTemplate;
import org.springframework.test.annotation.DirtiesContext;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.ResultActions;
import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder;
Expand All @@ -65,6 +67,7 @@
@SpringBootTest
@EnableElasticSearch
@AutoConfigureMockMvc
@DirtiesContext(classMode = AFTER_CLASS)
public abstract class BaseIntegrationTest {

protected static MockMvc mockMvc;
Expand Down

0 comments on commit 14b56b0

Please sign in to comment.