Ensure Snake Case in JSON
This commit is contained in:
parent
6723b49f7d
commit
ffb1a1586a
@ -8,8 +8,8 @@ Content-Type: application/json
|
||||
"leading_employee": 1,
|
||||
"employees": [2, 3],
|
||||
"contractor": 4,
|
||||
"contractorName": "Peter File",
|
||||
"contractor_name": "Peter File",
|
||||
"comment": "goal of project",
|
||||
"startDate": "01.01.2000",
|
||||
"plannedEndDate": "01.01.2001"
|
||||
"start_date": "01.01.2000",
|
||||
"planned_end_date": "01.01.2001"
|
||||
}
|
@ -1,6 +1,8 @@
|
||||
package de.szut.lf8_starter.project.dto;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonNaming;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Getter;
|
||||
@ -11,6 +13,7 @@ import java.util.List;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
|
||||
public class CreateProjectDto {
|
||||
@NotBlank
|
||||
private String name;
|
||||
|
@ -1,6 +1,8 @@
|
||||
package de.szut.lf8_starter.project.dto;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonNaming;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Getter;
|
||||
@ -11,35 +13,22 @@ import java.util.List;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
|
||||
public class GetProjectDto {
|
||||
private long id;
|
||||
|
||||
@NotBlank
|
||||
private String name;
|
||||
|
||||
@NotNull
|
||||
private long leadingEmployee;
|
||||
|
||||
private List<Long> employees;
|
||||
|
||||
@NotNull
|
||||
private long contractor;
|
||||
|
||||
@NotBlank
|
||||
private String contractorName;
|
||||
|
||||
@NotBlank
|
||||
private String comment;
|
||||
|
||||
@NotNull
|
||||
@JsonFormat(pattern = "dd.MM.yyyy")
|
||||
private LocalDate startDate;
|
||||
|
||||
@NotNull
|
||||
@JsonFormat(pattern = "dd.MM.yyyy")
|
||||
private LocalDate plannedEndDate;
|
||||
|
||||
@NotNull
|
||||
@JsonFormat(pattern = "dd.MM.yyyy")
|
||||
private LocalDate endDate;
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
package de.szut.lf8_starter.project;
|
||||
package de.szut.lf8_starter.integration.project;
|
||||
|
||||
import de.szut.lf8_starter.project.ProjectRepository;
|
||||
import org.json.JSONObject;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@ -29,15 +30,15 @@ public class CreateProjectActionTest {
|
||||
void test() throws Exception {
|
||||
String content = """
|
||||
{
|
||||
"name": "name",
|
||||
"leading_employee": 1,
|
||||
"employees": [2, 3],
|
||||
"contractor": 4,
|
||||
"contractorName": "Peter File",
|
||||
"comment": "goal of project",
|
||||
"startDate": "01.01.2000",
|
||||
"plannedEndDate": "01.01.2001"
|
||||
}
|
||||
"name": "name",
|
||||
"leading_employee": 1,
|
||||
"employees": [2, 3],
|
||||
"contractor": 4,
|
||||
"contractor_name": "Peter File",
|
||||
"comment": "goal of project",
|
||||
"start_date": "01.01.2000",
|
||||
"planned_end_date": "01.01.2001"
|
||||
}
|
||||
""";
|
||||
|
||||
final var contentAsString = this.mockMvc.perform(
|
||||
@ -45,13 +46,13 @@ public class CreateProjectActionTest {
|
||||
)
|
||||
.andExpect(status().isCreated())
|
||||
.andExpect(jsonPath("name", is("name")))
|
||||
.andExpect(jsonPath("leadingEmployee", is(0)))
|
||||
.andExpect(jsonPath("leading_employee", is(1)))
|
||||
.andExpect(jsonPath("employees", is(Arrays.asList(2, 3))))
|
||||
.andExpect(jsonPath("contractor", is(4)))
|
||||
.andExpect(jsonPath("contractorName", is("Peter File")))
|
||||
.andExpect(jsonPath("contractor_name", is("Peter File")))
|
||||
.andExpect(jsonPath("comment", is("goal of project")))
|
||||
.andExpect(jsonPath("startDate", is("01.01.2000")))
|
||||
.andExpect(jsonPath("plannedEndDate", is("01.01.2001")))
|
||||
.andExpect(jsonPath("start_date", is("01.01.2000")))
|
||||
.andExpect(jsonPath("planned_end_date", is("01.01.2001")))
|
||||
.andReturn()
|
||||
.getResponse()
|
||||
.getContentAsString();
|
||||
@ -60,7 +61,7 @@ public class CreateProjectActionTest {
|
||||
|
||||
final var project = this.projectRepository.findById(id);
|
||||
assertThat(project.get().getName()).isEqualTo("name");
|
||||
assertThat(project.get().getLeadingEmployee()).isEqualTo(0);
|
||||
assertThat(project.get().getLeadingEmployee()).isEqualTo(1);
|
||||
assertThat(project.get().getContractor()).isEqualTo(4);
|
||||
assertThat(project.get().getContractorName()).isEqualTo("Peter File");
|
||||
assertThat(project.get().getComment()).isEqualTo("goal of project");
|
Loading…
Reference in New Issue
Block a user