From 82120a66e33eb4c1af390646aa420e45fd0eb578 Mon Sep 17 00:00:00 2001 From: Axely <axel.ytteraas@gmail.com> Date: Fri, 21 Apr 2023 11:18:31 +0200 Subject: [PATCH 1/3] Added foodPreference API --- .../controller/FoodPreferencesController.java | 29 ++++++++ .../matsvinnbackend/model/FoodPreference.java | 32 +++++++++ .../repo/FoodPreferencesRepository.java | 13 ++++ .../service/FoodPreferencesService.java | 22 ++++++ .../FoodPreferencesControllerTest.java | 71 +++++++++++++++++++ .../service/FoodPreferencesServiceTest.java | 44 ++++++++++++ 6 files changed, 211 insertions(+) create mode 100644 src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesController.java create mode 100644 src/main/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreference.java create mode 100644 src/main/java/edu/ntnu/idatt210602/matsvinnbackend/repo/FoodPreferencesRepository.java create mode 100644 src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesService.java create mode 100644 src/test/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesControllerTest.java create mode 100644 src/test/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesServiceTest.java diff --git a/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesController.java b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesController.java new file mode 100644 index 0000000..1b1c680 --- /dev/null +++ b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesController.java @@ -0,0 +1,29 @@ +package edu.ntnu.idatt210602.matsvinnbackend.controller; + +import edu.ntnu.idatt210602.matsvinnbackend.model.FoodPreference; +import edu.ntnu.idatt210602.matsvinnbackend.service.FoodPreferencesService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.server.ResponseStatusException; + +import java.util.List; + +/** + * Class FoodPreferenceController responsible for processing incoming REST API requests related to food preferences + */ +@RequestMapping("/foodpreferences") +@RestController +@CrossOrigin +public class FoodPreferencesController { + + @Autowired + FoodPreferencesService foodPreferencesService; + + @GetMapping("") + @ResponseStatus(code = HttpStatus.OK) + public List<FoodPreference> getAllFoodPreferences() { + return foodPreferencesService.getAllFoodPreferences(); + } +} diff --git a/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreference.java b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreference.java new file mode 100644 index 0000000..45804a8 --- /dev/null +++ b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreference.java @@ -0,0 +1,32 @@ +package edu.ntnu.idatt210602.matsvinnbackend.model; + +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import lombok.Getter; +import lombok.Setter; + +/** + * Class FoodPreferences to represent a food preference e.g. vegan. + */ +@Entity +public class FoodPreference { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + @Getter + private Integer Id; + + @Getter + @Setter + private String Type; + + public FoodPreference() { + + } + + public FoodPreference(String type) { + Type = type; + } +} diff --git a/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/repo/FoodPreferencesRepository.java b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/repo/FoodPreferencesRepository.java new file mode 100644 index 0000000..fcb41e5 --- /dev/null +++ b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/repo/FoodPreferencesRepository.java @@ -0,0 +1,13 @@ +package edu.ntnu.idatt210602.matsvinnbackend.repo; + +import edu.ntnu.idatt210602.matsvinnbackend.model.FoodPreference; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +/** + * Interface FoodPreferencesRepository to provide mechanisms for several operations on the FoodPreferences class + */ +@Repository +public interface FoodPreferencesRepository extends JpaRepository<FoodPreference, Integer> { + +} diff --git a/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesService.java b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesService.java new file mode 100644 index 0000000..e62a1b4 --- /dev/null +++ b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesService.java @@ -0,0 +1,22 @@ +package edu.ntnu.idatt210602.matsvinnbackend.service; + +import edu.ntnu.idatt210602.matsvinnbackend.model.FoodPreference; +import edu.ntnu.idatt210602.matsvinnbackend.repo.FoodPreferencesRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * Class FoodPreferenceService to provide business functionalities related to foodPreferences + */ +@Service +public class FoodPreferencesService { + + @Autowired + FoodPreferencesRepository foodPreferencesRepository; + + public List<FoodPreference> getAllFoodPreferences() { + return foodPreferencesRepository.findAll(); + } +} diff --git a/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesControllerTest.java b/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesControllerTest.java new file mode 100644 index 0000000..c0a2133 --- /dev/null +++ b/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesControllerTest.java @@ -0,0 +1,71 @@ +package edu.ntnu.idatt210602.matsvinnbackend.controller; + +import edu.ntnu.idatt210602.matsvinnbackend.model.FoodPreference; +import edu.ntnu.idatt210602.matsvinnbackend.repo.FoodPreferencesRepository; +import edu.ntnu.idatt210602.matsvinnbackend.service.FoodPreferencesService; +import org.junit.Test; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.junit.jupiter.MockitoExtension; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; +import org.springframework.boot.test.mock.mockito.MockBean; +import org.springframework.test.context.junit4.SpringRunner; +import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; +import org.springframework.test.web.servlet.MockMvc; +import java.util.ArrayList; +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.mockito.Mockito.when; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +@RunWith(SpringRunner.class) +@ExtendWith(MockitoExtension.class) +@WebMvcTest(FoodPreferencesController.class) +@AutoConfigureMockMvc(addFilters = false) +public class FoodPreferencesControllerTest { + + @Autowired + private MockMvc mvc; + + @MockBean + private FoodPreferencesRepository foodPreferencesRepository; + + @MockBean + private FoodPreferencesService foodPreferencesService; + + @Autowired + FoodPreferencesController foodPreferencesController; + + FoodPreference testPreference = new FoodPreference("Vegan"); + FoodPreference testPreference2 = new FoodPreference("Vegetarian"); + + @BeforeEach + void setup() { + foodPreferencesRepository.deleteAll(); + } + + @Test + public void GetAllFoodPreferencesGivesOkStatusResponse() throws Exception { + + this.mvc.perform(get("/foodpreferences")).andDo(print()).andExpect(status().isOk()); + assertEquals(0, foodPreferencesController.getAllFoodPreferences().size()); + } + + @Test + public void getAllFoodPreferencesWhenSavedPreferencesReturnsAllSavedPreferences() { + + List<FoodPreference> preferences = new ArrayList<>(); + preferences.add(testPreference); + preferences.add(testPreference2); + foodPreferencesRepository.save(testPreference); + foodPreferencesRepository.save(testPreference2); + when(foodPreferencesController.getAllFoodPreferences()).thenReturn(preferences); + assertEquals(preferences, foodPreferencesController.getAllFoodPreferences()); + } +} diff --git a/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesServiceTest.java b/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesServiceTest.java new file mode 100644 index 0000000..7529895 --- /dev/null +++ b/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesServiceTest.java @@ -0,0 +1,44 @@ +package edu.ntnu.idatt210602.matsvinnbackend.service; + +import edu.ntnu.idatt210602.matsvinnbackend.model.FoodPreference; +import edu.ntnu.idatt210602.matsvinnbackend.repo.FoodPreferencesRepository; +import org.junit.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.junit.jupiter.MockitoExtension; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; +import static org.junit.jupiter.api.Assertions.*; + +import java.util.ArrayList; +import java.util.List; + +import static org.mockito.Mockito.*; + +@SpringBootTest +@RunWith(SpringRunner.class) +@ExtendWith(MockitoExtension.class) +public class FoodPreferencesServiceTest { + + @Mock + private FoodPreferencesRepository foodPreferencesRepository; + + @InjectMocks + FoodPreferencesService foodPreferencesService; + + FoodPreference testPreference = new FoodPreference("Vegan"); + FoodPreference testPreference2 = new FoodPreference("Vegetarian"); + + @Test + public void getAllPreferencesReturnsAllSavedPreferences() { + List<FoodPreference> preferences = new ArrayList<>(); + preferences.add(testPreference); + preferences.add(testPreference2); + foodPreferencesRepository.save(testPreference); + foodPreferencesRepository.save(testPreference2); + when(foodPreferencesService.getAllFoodPreferences()).thenReturn(preferences); + assertEquals(preferences, foodPreferencesService.getAllFoodPreferences()); + } +} -- GitLab From aae5ee9d2fcbec8ebb30accebb1ac31621c639a2 Mon Sep 17 00:00:00 2001 From: Axely <axel.ytteraas@gmail.com> Date: Fri, 21 Apr 2023 13:15:00 +0200 Subject: [PATCH 2/3] Made changes to make tests --- pom.xml | 12 +++++++ ...ler.java => FoodPreferenceController.java} | 8 ++--- .../matsvinnbackend/model/FoodPreference.java | 12 +++---- ...ervice.java => FoodPreferenceService.java} | 2 +- .../FoodPreferencesControllerTest.java | 20 +++++------ .../model/FoodPreferenceTest.java | 34 +++++++++++++++++++ .../service/FoodPreferencesServiceTest.java | 10 +++--- 7 files changed, 70 insertions(+), 28 deletions(-) rename src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/{FoodPreferencesController.java => FoodPreferenceController.java} (82%) rename src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/{FoodPreferencesService.java => FoodPreferenceService.java} (94%) create mode 100644 src/test/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreferenceTest.java diff --git a/pom.xml b/pom.xml index 077c654..6988084 100644 --- a/pom.xml +++ b/pom.xml @@ -52,6 +52,11 @@ <artifactId>spring-security-test</artifactId> <scope>test</scope> </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <scope>test</scope> + </dependency> </dependencies> <build> @@ -73,6 +78,13 @@ <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>3.0.0</version> + <dependencies> + <dependency> + <groupId>org.apache.maven.surefire</groupId> + <artifactId>surefire-junit4</artifactId> + <version>3.0.0</version> + </dependency> + </dependencies> </plugin> <plugin> diff --git a/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesController.java b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferenceController.java similarity index 82% rename from src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesController.java rename to src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferenceController.java index 1b1c680..9791ce9 100644 --- a/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesController.java +++ b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferenceController.java @@ -1,7 +1,7 @@ package edu.ntnu.idatt210602.matsvinnbackend.controller; import edu.ntnu.idatt210602.matsvinnbackend.model.FoodPreference; -import edu.ntnu.idatt210602.matsvinnbackend.service.FoodPreferencesService; +import edu.ntnu.idatt210602.matsvinnbackend.service.FoodPreferenceService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; @@ -16,14 +16,14 @@ import java.util.List; @RequestMapping("/foodpreferences") @RestController @CrossOrigin -public class FoodPreferencesController { +public class FoodPreferenceController { @Autowired - FoodPreferencesService foodPreferencesService; + FoodPreferenceService foodPreferenceService; @GetMapping("") @ResponseStatus(code = HttpStatus.OK) public List<FoodPreference> getAllFoodPreferences() { - return foodPreferencesService.getAllFoodPreferences(); + return foodPreferenceService.getAllFoodPreferences(); } } diff --git a/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreference.java b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreference.java index 45804a8..2d7331d 100644 --- a/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreference.java +++ b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreference.java @@ -4,12 +4,16 @@ import jakarta.persistence.Entity; import jakarta.persistence.GeneratedValue; import jakarta.persistence.GenerationType; import jakarta.persistence.Id; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; /** * Class FoodPreferences to represent a food preference e.g. vegan. */ +@NoArgsConstructor +@AllArgsConstructor @Entity public class FoodPreference { @@ -21,12 +25,4 @@ public class FoodPreference { @Getter @Setter private String Type; - - public FoodPreference() { - - } - - public FoodPreference(String type) { - Type = type; - } } diff --git a/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesService.java b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferenceService.java similarity index 94% rename from src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesService.java rename to src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferenceService.java index e62a1b4..1301243 100644 --- a/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesService.java +++ b/src/main/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferenceService.java @@ -11,7 +11,7 @@ import java.util.List; * Class FoodPreferenceService to provide business functionalities related to foodPreferences */ @Service -public class FoodPreferencesService { +public class FoodPreferenceService { @Autowired FoodPreferencesRepository foodPreferencesRepository; diff --git a/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesControllerTest.java b/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesControllerTest.java index c0a2133..5896691 100644 --- a/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesControllerTest.java +++ b/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/controller/FoodPreferencesControllerTest.java @@ -1,13 +1,13 @@ package edu.ntnu.idatt210602.matsvinnbackend.controller; +import edu.ntnu.idatt210602.matsvinnbackend.controller.FoodPreferenceController; import edu.ntnu.idatt210602.matsvinnbackend.model.FoodPreference; import edu.ntnu.idatt210602.matsvinnbackend.repo.FoodPreferencesRepository; -import edu.ntnu.idatt210602.matsvinnbackend.service.FoodPreferencesService; +import edu.ntnu.idatt210602.matsvinnbackend.service.FoodPreferenceService; import org.junit.Test; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.extension.ExtendWith; import org.junit.runner.RunWith; -import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; @@ -26,7 +26,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. @RunWith(SpringRunner.class) @ExtendWith(MockitoExtension.class) -@WebMvcTest(FoodPreferencesController.class) +@WebMvcTest(FoodPreferenceController.class) @AutoConfigureMockMvc(addFilters = false) public class FoodPreferencesControllerTest { @@ -37,13 +37,13 @@ public class FoodPreferencesControllerTest { private FoodPreferencesRepository foodPreferencesRepository; @MockBean - private FoodPreferencesService foodPreferencesService; + private FoodPreferenceService foodPreferencesService; @Autowired - FoodPreferencesController foodPreferencesController; + FoodPreferenceController foodPreferenceController; - FoodPreference testPreference = new FoodPreference("Vegan"); - FoodPreference testPreference2 = new FoodPreference("Vegetarian"); + FoodPreference testPreference = new FoodPreference(null,"Vegan"); + FoodPreference testPreference2 = new FoodPreference(null,"Vegetarian"); @BeforeEach void setup() { @@ -54,7 +54,7 @@ public class FoodPreferencesControllerTest { public void GetAllFoodPreferencesGivesOkStatusResponse() throws Exception { this.mvc.perform(get("/foodpreferences")).andDo(print()).andExpect(status().isOk()); - assertEquals(0, foodPreferencesController.getAllFoodPreferences().size()); + assertEquals(0, foodPreferenceController.getAllFoodPreferences().size()); } @Test @@ -65,7 +65,7 @@ public class FoodPreferencesControllerTest { preferences.add(testPreference2); foodPreferencesRepository.save(testPreference); foodPreferencesRepository.save(testPreference2); - when(foodPreferencesController.getAllFoodPreferences()).thenReturn(preferences); - assertEquals(preferences, foodPreferencesController.getAllFoodPreferences()); + when(foodPreferenceController.getAllFoodPreferences()).thenReturn(preferences); + assertEquals(preferences, foodPreferenceController.getAllFoodPreferences()); } } diff --git a/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreferenceTest.java b/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreferenceTest.java new file mode 100644 index 0000000..5fc92e8 --- /dev/null +++ b/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/model/FoodPreferenceTest.java @@ -0,0 +1,34 @@ +package edu.ntnu.idatt210602.matsvinnbackend.model; + + +import org.junit.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.runner.RunWith; +import org.mockito.junit.jupiter.MockitoExtension; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +@SpringBootTest +@RunWith(SpringRunner.class) +@ExtendWith(MockitoExtension.class) +public class FoodPreferenceTest { + + @Test + public void WhenConstructingAnObjectItIsConstructed() { + FoodPreference foodPreference = new FoodPreference(null,"vegan"); + assertEquals("vegan", foodPreference.getType()); + assertNull(foodPreference.getId()); + + foodPreference.setType("vegetarian"); + assertEquals("vegetarian", foodPreference.getType()); + } + + @Test + public void WhenUsingEmptyConstructorFieldsAreNull() { + FoodPreference foodPreference = new FoodPreference(); + assertNull(foodPreference.getType()); + assertNull(foodPreference.getId()); + } +} diff --git a/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesServiceTest.java b/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesServiceTest.java index 7529895..ec0d6b1 100644 --- a/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesServiceTest.java +++ b/src/test/java/edu/ntnu/idatt210602/matsvinnbackend/service/FoodPreferencesServiceTest.java @@ -26,10 +26,10 @@ public class FoodPreferencesServiceTest { private FoodPreferencesRepository foodPreferencesRepository; @InjectMocks - FoodPreferencesService foodPreferencesService; + FoodPreferenceService foodPreferenceService; - FoodPreference testPreference = new FoodPreference("Vegan"); - FoodPreference testPreference2 = new FoodPreference("Vegetarian"); + FoodPreference testPreference = new FoodPreference(null,"Vegan"); + FoodPreference testPreference2 = new FoodPreference(null,"Vegetarian"); @Test public void getAllPreferencesReturnsAllSavedPreferences() { @@ -38,7 +38,7 @@ public class FoodPreferencesServiceTest { preferences.add(testPreference2); foodPreferencesRepository.save(testPreference); foodPreferencesRepository.save(testPreference2); - when(foodPreferencesService.getAllFoodPreferences()).thenReturn(preferences); - assertEquals(preferences, foodPreferencesService.getAllFoodPreferences()); + when(foodPreferenceService.getAllFoodPreferences()).thenReturn(preferences); + assertEquals(preferences, foodPreferenceService.getAllFoodPreferences()); } } -- GitLab From 8293df6c2b4175ac1806f3c5f4555b2641c65982 Mon Sep 17 00:00:00 2001 From: Axely <axel.ytteraas@gmail.com> Date: Fri, 21 Apr 2023 14:41:05 +0200 Subject: [PATCH 3/3] Excluded main class from jacoco coverage reports in pom --- pom.xml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pom.xml b/pom.xml index 4a38713..bd71f56 100644 --- a/pom.xml +++ b/pom.xml @@ -18,6 +18,11 @@ <java.version>17</java.version> </properties> <dependencies> + <dependency> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <version>3.0.0</version> + </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> @@ -97,6 +102,12 @@ <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>0.8.9</version> + <configuration> + <excludes> + <exclude>**/model/**</exclude> + <exclude>**/MatsvinnBackendApplication.class</exclude> + </excludes> + </configuration> <executions> <execution> <goals> -- GitLab