| src/main/java/de/gedoplan/seminar/sbt/di/exercise/domain/Beverage.java | ●●●●● Patch | Ansicht | Raw | Blame | Historie | |
| src/main/java/de/gedoplan/seminar/sbt/di/exercise/logging/LoggerProducer.java | ●●●●● Patch | Ansicht | Raw | Blame | Historie | |
| src/main/java/de/gedoplan/seminar/sbt/di/exercise/service/IngredientService.java | ●●●●● Patch | Ansicht | Raw | Blame | Historie | |
| src/test/java/de/gedoplan/seminar/sbt/di/exercise/Exercise09Test.java | ●●●●● Patch | Ansicht | Raw | Blame | Historie | |
| src/test/java/de/gedoplan/seminar/sbt/di/exercise/Exercise10Test.java | ●●●●● Patch | Ansicht | Raw | Blame | Historie |
src/main/java/de/gedoplan/seminar/sbt/di/exercise/domain/Beverage.java
@@ -22,6 +22,10 @@ this.alcoholPercent = alcoholPercent; } public String getId() { return id; } public String getName() { return this.name; } src/main/java/de/gedoplan/seminar/sbt/di/exercise/logging/LoggerProducer.java
Neue Datei @@ -0,0 +1,20 @@ package de.gedoplan.seminar.sbt.di.exercise.logging; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.InjectionPoint; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Scope; import static org.springframework.beans.factory.config.ConfigurableBeanFactory.SCOPE_PROTOTYPE; @Configuration public class LoggerProducer { @Bean @Scope(SCOPE_PROTOTYPE) public Logger getLogger(InjectionPoint injectionPoint) { return LoggerFactory.getLogger(injectionPoint.getMember().getDeclaringClass()); } } src/main/java/de/gedoplan/seminar/sbt/di/exercise/service/IngredientService.java
Neue Datei @@ -0,0 +1,12 @@ package de.gedoplan.seminar.sbt.di.exercise.service; import org.springframework.stereotype.Component; @Component public class IngredientService { public boolean isAvailable(String id, double amount) { // Dummy check: Anything but rum is available return !"RUM".equals(id); } } src/test/java/de/gedoplan/seminar/sbt/di/exercise/Exercise09Test.java
@@ -13,12 +13,10 @@ @AutoConfigureMockMvc @SpringBootTest public class Exercise09Test { @Autowired MockMvc mockMvc; @Test public void testFiltersNonAlcEmpty() throws Exception { public void testMethodCounter() throws Exception { mockMvc.perform(get("/api/bar/cocktails")) .andExpect(status().isOk()); src/test/java/de/gedoplan/seminar/sbt/di/exercise/Exercise10Test.java
Neue Datei @@ -0,0 +1,35 @@ package de.gedoplan.seminar.sbt.di.exercise; import org.junit.jupiter.api.Test; 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.test.web.servlet.MockMvc; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; @AutoConfigureMockMvc @SpringBootTest public class Exercise10Test { @Autowired MockMvc mockMvc; @Test public void test() throws Exception { String location = mockMvc.perform(post("/api/mixer/order")) .andExpect(status().isCreated()) .andReturn().getResponse().getHeader("Location"); mockMvc.perform(post(location+"/kirr")) .andExpect(status().isCreated()); mockMvc.perform(post(location+"/stdq")) .andExpect(status().isConflict()); mockMvc.perform(put(location+"/placed")) .andExpect(status().isNoContent()); } }