JAVA-3538: Move spring-rest-testing into spring-web-modules
This commit is contained in:
parent
f63058acb6
commit
7dc8fdba7e
2
pom.xml
2
pom.xml
@ -664,7 +664,6 @@
|
||||
<module>spring-reactor</module>
|
||||
<module>spring-remoting</module>
|
||||
<module>spring-resttemplate</module>
|
||||
<module>spring-rest-testing</module>
|
||||
<module>spring-roo</module>
|
||||
|
||||
<module>spring-scheduling</module>
|
||||
@ -1119,7 +1118,6 @@
|
||||
<module>spring-reactor</module>
|
||||
<module>spring-remoting</module>
|
||||
<module>spring-resttemplate</module>
|
||||
<module>spring-rest-testing</module>
|
||||
<module>spring-roo</module>
|
||||
|
||||
<module>spring-scheduling</module>
|
||||
|
@ -33,6 +33,7 @@
|
||||
<module>spring-rest-query-language</module>
|
||||
<module>spring-rest-shell</module>
|
||||
<module>spring-rest-simple</module>
|
||||
<module>spring-rest-testing</module>
|
||||
<module>spring-resttemplate-2</module>
|
||||
<module>spring-thymeleaf</module>
|
||||
<module>spring-thymeleaf-2</module>
|
||||
|
@ -11,7 +11,7 @@
|
||||
<groupId>com.baeldung</groupId>
|
||||
<artifactId>parent-boot-2</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<relativePath>../parent-boot-2</relativePath>
|
||||
<relativePath>../../parent-boot-2</relativePath>
|
||||
</parent>
|
||||
|
||||
<dependencies>
|
@ -1,25 +1,25 @@
|
||||
package com.baeldung.exceptiontesting;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
import org.springframework.scheduling.annotation.EnableScheduling;
|
||||
|
||||
/**
|
||||
* Main Application Class - uses Spring Boot. Just run this as a normal Java
|
||||
* class to run up a Jetty Server (on http://localhost:8082/spring-rest-full)
|
||||
*
|
||||
*/
|
||||
@EnableScheduling
|
||||
@EnableAutoConfiguration
|
||||
@ComponentScan("com.baeldung.exceptiontesting")
|
||||
@SpringBootApplication
|
||||
public class ExceptionTestingApplication extends SpringBootServletInitializer {
|
||||
|
||||
public static void main(final String[] args) {
|
||||
SpringApplication.run(ExceptionTestingApplication.class, args);
|
||||
}
|
||||
|
||||
package com.baeldung.exceptiontesting;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
import org.springframework.scheduling.annotation.EnableScheduling;
|
||||
|
||||
/**
|
||||
* Main Application Class - uses Spring Boot. Just run this as a normal Java
|
||||
* class to run up a Jetty Server (on http://localhost:8082/spring-rest-full)
|
||||
*
|
||||
*/
|
||||
@EnableScheduling
|
||||
@EnableAutoConfiguration
|
||||
@ComponentScan("com.baeldung.exceptiontesting")
|
||||
@SpringBootApplication
|
||||
public class ExceptionTestingApplication extends SpringBootServletInitializer {
|
||||
|
||||
public static void main(final String[] args) {
|
||||
SpringApplication.run(ExceptionTestingApplication.class, args);
|
||||
}
|
||||
|
||||
}
|
@ -1,31 +1,31 @@
|
||||
package com.baeldung.exceptiontesting.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import com.baeldung.exceptiontesting.exception.BadArgumentsException;
|
||||
import com.baeldung.exceptiontesting.exception.InternalException;
|
||||
import com.baeldung.exceptiontesting.exception.ResourceNotFoundException;
|
||||
|
||||
@RestController
|
||||
public class ExceptionController {
|
||||
|
||||
@GetMapping("/exception/{exception_id}")
|
||||
public void getSpecificException(@PathVariable("exception_id") String pException) {
|
||||
if("not_found".equals(pException)) {
|
||||
throw new ResourceNotFoundException("resource not found");
|
||||
}
|
||||
else if("bad_arguments".equals(pException)) {
|
||||
throw new BadArgumentsException("bad arguments");
|
||||
}
|
||||
else {
|
||||
throw new InternalException("internal error");
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/exception/throw")
|
||||
public void getException() throws Exception {
|
||||
throw new Exception("error");
|
||||
}
|
||||
}
|
||||
package com.baeldung.exceptiontesting.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import com.baeldung.exceptiontesting.exception.BadArgumentsException;
|
||||
import com.baeldung.exceptiontesting.exception.InternalException;
|
||||
import com.baeldung.exceptiontesting.exception.ResourceNotFoundException;
|
||||
|
||||
@RestController
|
||||
public class ExceptionController {
|
||||
|
||||
@GetMapping("/exception/{exception_id}")
|
||||
public void getSpecificException(@PathVariable("exception_id") String pException) {
|
||||
if("not_found".equals(pException)) {
|
||||
throw new ResourceNotFoundException("resource not found");
|
||||
}
|
||||
else if("bad_arguments".equals(pException)) {
|
||||
throw new BadArgumentsException("bad arguments");
|
||||
}
|
||||
else {
|
||||
throw new InternalException("internal error");
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/exception/throw")
|
||||
public void getException() throws Exception {
|
||||
throw new Exception("error");
|
||||
}
|
||||
}
|
@ -1,13 +1,13 @@
|
||||
package com.baeldung.exceptiontesting.exception;
|
||||
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
@ResponseStatus(HttpStatus.BAD_REQUEST)
|
||||
public class BadArgumentsException extends RuntimeException {
|
||||
|
||||
public BadArgumentsException(String message) {
|
||||
super(message);
|
||||
}
|
||||
}
|
||||
package com.baeldung.exceptiontesting.exception;
|
||||
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
@ResponseStatus(HttpStatus.BAD_REQUEST)
|
||||
public class BadArgumentsException extends RuntimeException {
|
||||
|
||||
public BadArgumentsException(String message) {
|
||||
super(message);
|
||||
}
|
||||
}
|
@ -1,13 +1,13 @@
|
||||
package com.baeldung.exceptiontesting.exception;
|
||||
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
|
||||
public class InternalException extends RuntimeException {
|
||||
|
||||
public InternalException(String message) {
|
||||
super(message);
|
||||
}
|
||||
}
|
||||
package com.baeldung.exceptiontesting.exception;
|
||||
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
|
||||
public class InternalException extends RuntimeException {
|
||||
|
||||
public InternalException(String message) {
|
||||
super(message);
|
||||
}
|
||||
}
|
@ -1,13 +1,13 @@
|
||||
package com.baeldung.exceptiontesting.exception;
|
||||
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
@ResponseStatus(HttpStatus.NOT_FOUND)
|
||||
public class ResourceNotFoundException extends RuntimeException {
|
||||
|
||||
public ResourceNotFoundException(String message) {
|
||||
super(message);
|
||||
}
|
||||
}
|
||||
package com.baeldung.exceptiontesting.exception;
|
||||
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
@ResponseStatus(HttpStatus.NOT_FOUND)
|
||||
public class ResourceNotFoundException extends RuntimeException {
|
||||
|
||||
public ResourceNotFoundException(String message) {
|
||||
super(message);
|
||||
}
|
||||
}
|
@ -1,65 +1,65 @@
|
||||
package com.baeldung.exceptiontesting.controller;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.test.web.servlet.MockMvc;
|
||||
|
||||
import com.baeldung.exceptiontesting.controller.ExceptionController;
|
||||
import com.baeldung.exceptiontesting.exception.BadArgumentsException;
|
||||
import com.baeldung.exceptiontesting.exception.InternalException;
|
||||
import com.baeldung.exceptiontesting.exception.ResourceNotFoundException;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;
|
||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
|
||||
|
||||
@RunWith(SpringRunner.class)
|
||||
@WebMvcTest(ExceptionController.class)
|
||||
public class ExceptionControllerUnitTest{
|
||||
|
||||
@Autowired
|
||||
private MockMvc mvc;
|
||||
|
||||
@Test
|
||||
public void givenNotFound_whenGetSpecificException_thenNotFoundCode() throws Exception {
|
||||
String exceptionParam = "not_found";
|
||||
|
||||
mvc.perform(get("/exception/{exception_id}", exceptionParam)
|
||||
.contentType(MediaType.APPLICATION_JSON))
|
||||
.andExpect(status().isNotFound())
|
||||
.andExpect(result -> assertTrue(result.getResolvedException() instanceof ResourceNotFoundException))
|
||||
.andExpect(result -> assertEquals("resource not found", result.getResolvedException().getMessage()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenBadArguments_whenGetSpecificException_thenBadRequest() throws Exception {
|
||||
String exceptionParam = "bad_arguments";
|
||||
|
||||
mvc.perform(get("/exception/{exception_id}", exceptionParam)
|
||||
.contentType(MediaType.APPLICATION_JSON))
|
||||
.andExpect(status().isBadRequest())
|
||||
.andExpect(result -> assertTrue(result.getResolvedException() instanceof BadArgumentsException))
|
||||
.andExpect(result -> assertEquals("bad arguments", result.getResolvedException().getMessage()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenOther_whenGetSpecificException_thenInternalServerError() throws Exception {
|
||||
String exceptionParam = "dummy";
|
||||
|
||||
mvc.perform(get("/exception/{exception_id}", exceptionParam)
|
||||
.contentType(MediaType.APPLICATION_JSON))
|
||||
.andExpect(status().isInternalServerError())
|
||||
.andExpect(result -> assertTrue(result.getResolvedException() instanceof InternalException))
|
||||
.andExpect(result -> assertEquals("internal error", result.getResolvedException().getMessage()));
|
||||
}
|
||||
|
||||
@Test(expected = Exception.class)
|
||||
public void whenGetException_thenInternalServerError() throws Exception {
|
||||
mvc.perform(get("/exception/throw")
|
||||
.contentType(MediaType.APPLICATION_JSON));
|
||||
}
|
||||
}
|
||||
package com.baeldung.exceptiontesting.controller;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.test.web.servlet.MockMvc;
|
||||
|
||||
import com.baeldung.exceptiontesting.controller.ExceptionController;
|
||||
import com.baeldung.exceptiontesting.exception.BadArgumentsException;
|
||||
import com.baeldung.exceptiontesting.exception.InternalException;
|
||||
import com.baeldung.exceptiontesting.exception.ResourceNotFoundException;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;
|
||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
|
||||
|
||||
@RunWith(SpringRunner.class)
|
||||
@WebMvcTest(ExceptionController.class)
|
||||
public class ExceptionControllerUnitTest{
|
||||
|
||||
@Autowired
|
||||
private MockMvc mvc;
|
||||
|
||||
@Test
|
||||
public void givenNotFound_whenGetSpecificException_thenNotFoundCode() throws Exception {
|
||||
String exceptionParam = "not_found";
|
||||
|
||||
mvc.perform(get("/exception/{exception_id}", exceptionParam)
|
||||
.contentType(MediaType.APPLICATION_JSON))
|
||||
.andExpect(status().isNotFound())
|
||||
.andExpect(result -> assertTrue(result.getResolvedException() instanceof ResourceNotFoundException))
|
||||
.andExpect(result -> assertEquals("resource not found", result.getResolvedException().getMessage()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenBadArguments_whenGetSpecificException_thenBadRequest() throws Exception {
|
||||
String exceptionParam = "bad_arguments";
|
||||
|
||||
mvc.perform(get("/exception/{exception_id}", exceptionParam)
|
||||
.contentType(MediaType.APPLICATION_JSON))
|
||||
.andExpect(status().isBadRequest())
|
||||
.andExpect(result -> assertTrue(result.getResolvedException() instanceof BadArgumentsException))
|
||||
.andExpect(result -> assertEquals("bad arguments", result.getResolvedException().getMessage()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenOther_whenGetSpecificException_thenInternalServerError() throws Exception {
|
||||
String exceptionParam = "dummy";
|
||||
|
||||
mvc.perform(get("/exception/{exception_id}", exceptionParam)
|
||||
.contentType(MediaType.APPLICATION_JSON))
|
||||
.andExpect(status().isInternalServerError())
|
||||
.andExpect(result -> assertTrue(result.getResolvedException() instanceof InternalException))
|
||||
.andExpect(result -> assertEquals("internal error", result.getResolvedException().getMessage()));
|
||||
}
|
||||
|
||||
@Test(expected = Exception.class)
|
||||
public void whenGetException_thenInternalServerError() throws Exception {
|
||||
mvc.perform(get("/exception/throw")
|
||||
.contentType(MediaType.APPLICATION_JSON));
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user