Skip to content
Snippets Groups Projects
Commit b4299ea5 authored by Jan Zickermann's avatar Jan Zickermann
Browse files

OZG-4815 OZG-4832 Apply comments of second review

parent cc311f0b
No related branches found
No related tags found
No related merge requests found
......@@ -19,13 +19,16 @@
* Die sprachspezifischen Genehmigungen und Beschränkungen
* unter der Lizenz sind dem Lizenztext zu entnehmen.
*/
package de.ozgcloud.admin.params;
package de.ozgcloud.admin.configurationparameter;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
import lombok.Builder;
@Builder
@Document
public record ConfigurationParameters(
record ConfigurationParameter(
@Id
String id
) {
......
......@@ -19,12 +19,13 @@
* Die sprachspezifischen Genehmigungen und Beschränkungen
* unter der Lizenz sind dem Lizenztext zu entnehmen.
*/
package de.ozgcloud.admin.params;
package de.ozgcloud.admin.configurationparameter;
class ParamsConstants {
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
private ParamsConstants() {
}
@NoArgsConstructor(access = AccessLevel.PRIVATE)
class ConfigurationParameterConstants {
static final String REL = "params";
......
......@@ -19,15 +19,15 @@
* Die sprachspezifischen Genehmigungen und Beschränkungen
* unter der Lizenz sind dem Lizenztext zu entnehmen.
*/
package de.ozgcloud.admin.params;
package de.ozgcloud.admin.configurationparameter;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
@RepositoryRestResource(
collectionResourceRel = ParamsConstants.REL,
path = ParamsConstants.PATH
collectionResourceRel = ConfigurationParameterConstants.REL,
path = ConfigurationParameterConstants.PATH
)
public interface ConfigurationParameterRestRepository extends MongoRepository<ConfigurationParameters, String> {
public interface ConfigurationParameterRepository extends MongoRepository<ConfigurationParameter, String> {
}
......@@ -41,7 +41,7 @@ import lombok.SneakyThrows;
class ApiRootITCase {
@Autowired
RepositoryRestProperties restProperties;
private RepositoryRestProperties restProperties;
@Autowired
private MockMvc mockMvc;
......@@ -51,7 +51,9 @@ class ApiRootITCase {
@Test
void shouldBetSetToApi() {
assertEquals("/api", restProperties.getBasePath());
var basePath = restProperties.getBasePath();
assertEquals("/api", basePath);
}
@Test
......@@ -64,7 +66,7 @@ class ApiRootITCase {
@Test
@SneakyThrows
void shouldHaveHALApplicationType() {
void shouldHaveContentType() {
var result = doPerform();
result.andExpect(content().contentType("application/hal+json"));
......@@ -75,10 +77,7 @@ class ApiRootITCase {
void shouldHaveStandardProfileLink() {
var result = doPerform();
result.andExpect(
jsonPath("$._links.profile.href")
.value("http://localhost" + restProperties.getBasePath() + "/profile")
);
result.andExpect(jsonPath("$._links.profile.href").value("http://localhost" + restProperties.getBasePath() + "/profile"));
}
@SneakyThrows
......
......@@ -19,7 +19,7 @@
* Die sprachspezifischen Genehmigungen und Beschränkungen
* unter der Lizenz sind dem Lizenztext zu entnehmen.
*/
package de.ozgcloud.admin.params;
package de.ozgcloud.admin.configurationparameter;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
......@@ -40,7 +40,7 @@ import lombok.SneakyThrows;
@DataITCase
@AutoConfigureMockMvc
class ConfigurationParameterRestITCase {
class ConfigurationParameterITCase {
@Autowired
private MockMvc mockMvc;
......@@ -49,29 +49,28 @@ class ConfigurationParameterRestITCase {
private MongoOperations mongoOperations;
@Autowired
RepositoryRestProperties restProperties;
private RepositoryRestProperties restProperties;
@Nested
class TestRestRepo {
@BeforeEach
void init() {
mongoOperations.dropCollection(ConfigurationParameters.class);
mongoOperations.save(new ConfigurationParameters("first"));
mongoOperations.save(new ConfigurationParameters("first2"));
mongoOperations.dropCollection(ConfigurationParameter.class);
mongoOperations.save(ConfigurationParameterTestFactory.create());
}
@Test
@SneakyThrows
void shouldFindExistingParam() {
var result = doPerform("first");
void shouldHaveStatusOkForExisting() {
var result = doPerform(ConfigurationParameterTestFactory.ID);
result.andExpect(status().isOk());
}
@Test
@SneakyThrows
void shouldNotFindUnknownParam() {
void shouldHaveStatusNotFoundForNonExisting() {
var result = doPerform("unknown");
result.andExpect(status().is(HttpStatus.NOT_FOUND.value()));
......@@ -79,9 +78,7 @@ class ConfigurationParameterRestITCase {
@SneakyThrows
private ResultActions doPerform(String id) {
return mockMvc.perform(
get(String.join("/", restProperties.getBasePath(), ParamsConstants.PATH, id))
);
return mockMvc.perform(get(String.join("/", restProperties.getBasePath(), ConfigurationParameterConstants.PATH, id)));
}
}
......
/*
* Copyright (c) 2024. Das Land Schleswig-Holstein vertreten durch das Ministerium für Energiewende, Klimaschutz, Umwelt und Natur
* Zentrales IT-Management
*
* Lizenziert unter der EUPL, Version 1.2 oder - sobald
* diese von der Europäischen Kommission genehmigt wurden -
* Folgeversionen der EUPL ("Lizenz");
* Sie dürfen dieses Werk ausschließlich gemäß
* dieser Lizenz nutzen.
* Eine Kopie der Lizenz finden Sie hier:
*
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
*
* Sofern nicht durch anwendbare Rechtsvorschriften
* gefordert oder in schriftlicher Form vereinbart, wird
* die unter der Lizenz verbreitete Software "so wie sie
* ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
* ausdrücklich oder stillschweigend - verbreitet.
* Die sprachspezifischen Genehmigungen und Beschränkungen
* unter der Lizenz sind dem Lizenztext zu entnehmen.
*/
package de.ozgcloud.admin.configurationparameter;
import java.util.UUID;
class ConfigurationParameterTestFactory {
public static final String ID = UUID.randomUUID().toString();
public static ConfigurationParameter create() {
return createBuilder().build();
}
public static ConfigurationParameter.ConfigurationParameterBuilder createBuilder() {
return ConfigurationParameter.builder().id(ID);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment