| pom.xml | ●●●●● Patch | Ansicht | Raw | Blame | Historie | |
| src/main/java/de/gedoplan/seminar/jpa/exercise/common/LoggerProducer.java | ●●●●● Patch | Ansicht | Raw | Blame | Historie | |
| src/main/java/de/gedoplan/seminar/jpa/exercise/rest/HighwayResource.java | ●●●●● Patch | Ansicht | Raw | Blame | Historie | |
| src/main/resources/application.properties | ●●●●● Patch | Ansicht | Raw | Blame | Historie | |
| src/main/resources/application.yaml | ●●●●● Patch | Ansicht | Raw | Blame | Historie | |
| src/test/java/de/gedoplan/seminar/jpa/exercise/Exercise01Test.java | ●●●●● Patch | Ansicht | Raw | Blame | Historie |
pom.xml
@@ -32,6 +32,13 @@ <scope>runtime</scope> <optional>true</optional> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> src/main/java/de/gedoplan/seminar/jpa/exercise/common/LoggerProducer.java
@@ -5,11 +5,13 @@ import org.springframework.beans.factory.InjectionPoint; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Scope; @Configuration public class LoggerProducer { @Bean @Scope("prototype") Logger getLogger(InjectionPoint ip) { return LoggerFactory.getLogger(ip.getMember().getDeclaringClass()); } src/main/java/de/gedoplan/seminar/jpa/exercise/rest/HighwayResource.java
@@ -21,15 +21,9 @@ import de.gedoplan.seminar.jpa.exercise.repository.HighwayRepository; @RequestMapping(path = "exercise/highways", produces = MediaType.APPLICATION_JSON_VALUE) @RequestMapping(path = "/highways", produces = MediaType.APPLICATION_JSON_VALUE) public class HighwayResource { // Some test data private Highway testHighwayA1_DO_K = new Highway(4610, "A1", "Dortmund", "Cologne"); private Highway testHighwayA2_DO_H = new Highway(4711, "A2", "Dortmund", "Hannover"); private Highway testHighwayA33_BI_PB = new Highway(4812, "A33", "Bielefeld", "Paderborn"); private List<Highway> testHighways = List.of(this.testHighwayA1_DO_K, this.testHighwayA2_DO_H, this.testHighwayA33_BI_PB ); private final HighwayRepository highwayRepository; private final Logger logger; @@ -49,7 +43,7 @@ // this.highwayRepository. this.logger.debug("Inserted: " + testHighways); this.logger.debug("Inserted: " + highway); } /** src/main/resources/application.properties
Datei wurde gelöscht src/main/resources/application.yaml
Neue Datei @@ -0,0 +1,13 @@ spring: datasource: url: jdbc:h2:mem:seminar username: seminar password: seminar driverClassName: org.h2.Driver jpa: hibernate: ddl-auto: update logging: level: '[de.gedoplan.seminar]': debug src/test/java/de/gedoplan/seminar/jpa/exercise/Exercise01Test.java
Neue Datei @@ -0,0 +1,65 @@ package de.gedoplan.seminar.jpa.exercise; import static org.junit.jupiter.params.provider.Arguments.arguments; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; import java.util.stream.Stream; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.http.MediaType; import org.springframework.test.web.servlet.MockMvc; import com.fasterxml.jackson.databind.ObjectMapper; import de.gedoplan.seminar.jpa.exercise.domain.Highway; @AutoConfigureMockMvc @SpringBootTest public class Exercise01Test { // Some test data private Highway testHighwayA1_DO_K = new Highway(4610, "A1", "Dortmund", "Cologne"); private Highway testHighwayA2_DO_H = new Highway(4711, "A2", "Dortmund", "Hannover"); private Highway testHighwayA33_BI_PB = new Highway(4812, "A33", "Bielefeld", "Paderborn"); @Autowired MockMvc mockMvc; @Autowired private ObjectMapper mapper; @Test @MethodSource("getTestHighways") void testInsert() throws Exception { mockMvc.perform(post("/highways") .contentType(MediaType.APPLICATION_JSON) .content(mapper.writeValueAsString(testHighwayA1_DO_K))) .andExpect(status().isOk()); } @Test @MethodSource("getTestDataFindById") void testFindById(Integer id, String name) throws Exception { mockMvc.perform(post("/highways/{id}",id)) .andExpect(jsonPath("$.name").value(name)); } private Stream<Highway> getTestHighways() { return Stream.of(this.testHighwayA1_DO_K, this.testHighwayA2_DO_H, this.testHighwayA33_BI_PB); } private Stream<Arguments> getTestDataFindById() { return Stream.of( arguments(4711,"A2"), arguments(4812, "A33")); } }