Skip to content
Snippets Groups Projects
Commit a4ac3b50 authored by OZGCloud's avatar OZGCloud
Browse files

OZG-4461 impl PR comments

parent b644b26a
No related branches found
No related tags found
No related merge requests found
......@@ -33,10 +33,10 @@ import org.springframework.web.bind.annotation.RestController;
import de.ozgcloud.alfa.vorgang.VorgangProcessorProperties;
@RestController
@RequestMapping(EnvironmentController.PREFIX)
@RequestMapping(EnvironmentController.BASE_PATH)
public class EnvironmentController {
static final String PREFIX = "/api/environment";
static final String BASE_PATH = "/api/environment";
@Autowired
private OAuth2Properties oAuth2Properties;
......
......@@ -79,7 +79,7 @@ public class CommandController {
@RequestMapping(CommandByRelationController.COMMAND_BY_RELATION_PATH)
public static class CommandByRelationController {
static final String COMMAND_BY_RELATION_PATH = "/api/vorgangs/{vorgangId}/relations/{relationId}/{relationVersion}/commands"; // NOSONAR
public static final String COMMAND_BY_RELATION_PATH = "/api/vorgangs/{vorgangId}/relations/{relationId}/{relationVersion}/commands"; // NOSONAR
@Autowired
private CommandService service;
......
......@@ -12,10 +12,11 @@ import lombok.Setter;
@ConfigurationProperties(prefix = "grpc.client.user-manager")
public class UserManagerClientProperties {
/*
/**
* UserManager grpc adress.
*/
private String address;
/**
* UserManager grpc negotiationType.
*/
......
......@@ -30,6 +30,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.
import java.util.List;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
......@@ -58,6 +60,21 @@ class EnvironmentControllerTest {
mockMvc = MockMvcBuilders.standaloneSetup(controller).build();
}
@DisplayName("Get frontend environment")
@Nested
class TestGetFrontendEnvironment {
private static final String CLIENT = "goofy";
private static final boolean PRODUCTION = true;
private static final String PROCESSOR_NAME = "dummyProcessorName";
@BeforeEach
void init() {
when(goofyProperties.isProduction()).thenReturn(PRODUCTION);
when(oAuth2Properties.getResource()).thenReturn(CLIENT);
when(vorgangProcessorProperties.getProcessorNames()).thenReturn(List.of(PROCESSOR_NAME));
}
@SneakyThrows
@Test
void shouldReturnOk() {
......@@ -69,37 +86,30 @@ class EnvironmentControllerTest {
@SneakyThrows
@Test
void shouldHaveProductionTrueAsDefault() {
when(goofyProperties.isProduction()).thenReturn(true);
var response = doRequest();
response.andExpect(jsonPath("$.production").value(true));
response.andExpect(jsonPath("$.production").value(PRODUCTION));
}
@SneakyThrows
@Test
void shouldHaveClientId() {
var client = "goofy";
when(oAuth2Properties.getResource()).thenReturn(client);
var response = doRequest();
response.andExpect(jsonPath("$.clientId").value(client));
response.andExpect(jsonPath("$.clientId").value(CLIENT));
}
@SneakyThrows
@Test
void shouldHaveProcessorNames() {
var processorName = "dummyProcessorName";
when(vorgangProcessorProperties.getProcessorNames()).thenReturn(List.of(processorName));
var response = doRequest();
response.andExpect(jsonPath("$.processorNames").value(processorName));
response.andExpect(jsonPath("$.processorNames").value(PROCESSOR_NAME));
}
@SneakyThrows
private ResultActions doRequest() {
return mockMvc.perform(get(EnvironmentController.PREFIX));
return mockMvc.perform(get(EnvironmentController.BASE_PATH));
}
}
}
\ No newline at end of file
......@@ -43,9 +43,11 @@ import org.springframework.hateoas.EntityModel;
import org.springframework.hateoas.Link;
import org.springframework.hateoas.LinkRelation;
import org.springframework.web.util.UriComponentsBuilder;
import org.springframework.web.util.UriTemplate;
import de.ozgcloud.alfa.common.FeatureToggleProperties;
import de.ozgcloud.alfa.common.UserProfileUrlProvider;
import de.ozgcloud.alfa.common.command.CommandController.CommandByRelationController;
import de.ozgcloud.alfa.common.user.CurrentUserService;
import de.ozgcloud.alfa.common.user.UserManagerUrlProvider;
import de.ozgcloud.alfa.common.user.UserRole;
......@@ -489,9 +491,9 @@ class VorgangWithEingangProzessorTest {
void shouldHaveCreateBescheidLink() {
doReturn(true).when(processor).isCreateBescheidEnabled(vorgang);
var processed = processor.process(vorgangEntityModel);
var model = processor.process(vorgangEntityModel);
assertThat(processed.getLink(VorgangWithEingangProzessor.REL_BESCHEID)).isPresent().get()
assertThat(model.getLink(VorgangWithEingangProzessor.REL_BESCHEID)).isPresent().get()
.extracting(Link::getHref)
.isEqualTo("/api/vorgangs/" + VorgangHeaderTestFactory.ID + "/relations/" + VorgangHeaderTestFactory.ID + "/"
+ VorgangHeaderTestFactory.VERSION + "/commands");
......@@ -501,9 +503,9 @@ class VorgangWithEingangProzessorTest {
void shouldHaveNoLinkIfDisabled() {
doReturn(false).when(processor).isCreateBescheidEnabled(vorgang);
var processed = processor.process(vorgangEntityModel);
var model = processor.process(vorgangEntityModel);
assertThat(processed.getLink(VorgangWithEingangProzessor.REL_BESCHEID)).isEmpty();
assertThat(model.getLink(VorgangWithEingangProzessor.REL_BESCHEID)).isEmpty();
}
}
......@@ -530,11 +532,15 @@ class VorgangWithEingangProzessorTest {
@Test
void shouldBeVisible() {
var processed = processor.process(vorgangEntityModel);
var entityModel = processor.process(vorgangEntityModel);
var expectedLink = String.format("/api/vorgangs/%s/relations/%s/%s/commands", VorgangHeaderTestFactory.ID, VorgangHeaderTestFactory.ID, VorgangHeaderTestFactory.VERSION);
assertThat(processed.getLink(VorgangWithEingangProzessor.REL_PROCESS_VORGANG))
.isPresent().get().extracting(Link::getHref).isEqualTo(expectedLink);
assertThat(entityModel.getLink(VorgangWithEingangProzessor.REL_PROCESS_VORGANG))
.isPresent().get().extracting(Link::getHref).isEqualTo(buildExpectedLink());
}
private String buildExpectedLink() {
return new UriTemplate(CommandByRelationController.COMMAND_BY_RELATION_PATH)
.expand(VorgangHeaderTestFactory.ID, VorgangHeaderTestFactory.ID, VorgangHeaderTestFactory.VERSION).toString();
}
}
......@@ -547,9 +553,9 @@ class VorgangWithEingangProzessorTest {
var properties = List.of(VorgangPropertyTestFactory.createBuilder().formId("quatsch").build());
when(vorgangProcessorProperties.getProcessor()).thenReturn(properties);
var processed = processor.process(vorgangEntityModel);
var model = processor.process(vorgangEntityModel);
assertThat(processed.getLink(VorgangWithEingangProzessor.REL_PROCESS_VORGANG)).isNotPresent();
assertThat(model.getLink(VorgangWithEingangProzessor.REL_PROCESS_VORGANG)).isNotPresent();
}
@Test
......@@ -557,9 +563,9 @@ class VorgangWithEingangProzessorTest {
var properties = List.of(VorgangPropertyTestFactory.createBuilder().formEngineName("quatsch").build());
when(vorgangProcessorProperties.getProcessor()).thenReturn(properties);
var processed = processor.process(vorgangEntityModel);
var model = processor.process(vorgangEntityModel);
assertThat(processed.getLink(VorgangWithEingangProzessor.REL_PROCESS_VORGANG)).isNotPresent();
assertThat(model.getLink(VorgangWithEingangProzessor.REL_PROCESS_VORGANG)).isNotPresent();
}
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment