diff --git a/pom.xml b/pom.xml index f3bae982b..127445420 100644 --- a/pom.xml +++ b/pom.xml @@ -1,301 +1,301 @@ - - - 4.0.0 - org.springframework.samples - spring-mvc-showcase - spring-mvc-showcase - war - 1.0.0-BUILD-SNAPSHOT - - 1.7 - 4.2.2.RELEASE - 4.0.1.RELEASE - 1.8.1 - 1.7.12 - - - - - org.springframework - spring-context - ${org.springframework-version} - - - - commons-logging - commons-logging - - - - - org.springframework - spring-webmvc - ${org.springframework-version} - - - - org.aspectj - aspectjrt - ${org.aspectj-version} - - - - - org.slf4j - slf4j-api - ${org.slf4j-version} - - - org.slf4j - jcl-over-slf4j - ${org.slf4j-version} - runtime - - - org.slf4j - slf4j-log4j12 - ${org.slf4j-version} - runtime - - - log4j - log4j - 1.2.16 - runtime - - - - - javax.inject - javax.inject - 1 - - - - - org.apache.tomcat - tomcat-servlet-api - 7.0.30 - provided - - - javax.servlet.jsp - jsp-api - 2.1 - provided - - - javax.servlet.jsp.jstl - jstl-api - 1.2 - - - javax.servlet - servlet-api - - - - - org.glassfish.web - jstl-impl - 1.2 - - - javax.servlet - servlet-api - - - - - - - com.fasterxml.jackson.core - jackson-databind - 2.5.3 - - - - - com.rometools - rome - 1.5.0 - - - - - javax.validation - validation-api - 1.0.0.GA - - - org.hibernate - hibernate-validator - 4.1.0.Final - - - - - joda-time - joda-time - 2.3 - - - - - commons-fileupload - commons-fileupload - 1.2.2 - - - commons-io - commons-io - 2.0.1 - - - - - org.springframework.security - spring-security-web - ${org.springframework.security-version} - - - - - org.springframework - spring-test - ${org.springframework-version} - test - - - junit - junit - 4.11 - test - - - xmlunit - xmlunit - 1.2 - test - - - com.jayway.jsonpath - json-path - 0.8.1 - test - - - org.hamcrest - hamcrest-library - 1.3 - test - - - - - - org.springframework.maven.snapshot - Spring Maven Snapshot Repository - http://repo.spring.io/snapshot - false - true - - - - org.springframework.maven.milestone - Spring Maven Milestone Repository - http://repo.spring.io/milestone - false - - - - ${project.artifactId} - - - org.apache.maven.plugins - maven-compiler-plugin - 2.3.2 - - ${java-version} - ${java-version} - - - - org.apache.maven.plugins - maven-surefire-plugin - 2.12 - - - **/*Tests.java - - - **/Abstract*.java - - junit:junit - -Xmx512m - - - - org.apache.maven.plugins - maven-dependency-plugin - - - install - install - - sources - - - - - - org.codehaus.mojo - aspectj-maven-plugin - - 1.2 - - - - org.aspectj - aspectjrt - ${org.aspectj-version} - - - org.aspectj - aspectjtools - ${org.aspectj-version} - - - - - - compile - test-compile - - - - - true - ${java-version} - ${java-version} - - - - org.apache.tomcat.maven - tomcat7-maven-plugin - 2.2 - - - org.eclipse.jetty - jetty-maven-plugin - 9.0.6.v20130930 - - - /${project.artifactId} - - - - - - + + + 4.0.0 + org.springframework.samples + spring-mvc-showcase + spring-mvc-showcase + war + 1.0.0-BUILD-SNAPSHOT + + 1.7 + 4.3.6.RELEASE + 4.2.1.RELEASE + 1.8.9 + 1.7.22 + + + + + org.springframework + spring-context + ${org.springframework-version} + + + + commons-logging + commons-logging + + + + + org.springframework + spring-webmvc + ${org.springframework-version} + + + + org.aspectj + aspectjrt + ${org.aspectj-version} + + + + + org.slf4j + slf4j-api + ${org.slf4j-version} + + + org.slf4j + jcl-over-slf4j + ${org.slf4j-version} + runtime + + + org.slf4j + slf4j-log4j12 + ${org.slf4j-version} + runtime + + + log4j + log4j + 1.2.17 + runtime + + + + + javax.inject + javax.inject + 1 + + + + + org.apache.tomcat + tomcat-servlet-api + 7.0.30 + provided + + + javax.servlet.jsp + jsp-api + 2.1 + provided + + + javax.servlet.jsp.jstl + jstl-api + 1.2 + + + javax.servlet + servlet-api + + + + + org.glassfish.web + jstl-impl + 1.2 + + + javax.servlet + servlet-api + + + + + + + com.fasterxml.jackson.core + jackson-databind + 2.8.6 + + + + + com.rometools + rome + 1.7.1 + + + + + javax.validation + validation-api + 1.0.0.GA + + + org.hibernate + hibernate-validator + 4.1.0.Final + + + + + joda-time + joda-time + 2.9.7 + + + + + commons-fileupload + commons-fileupload + 1.3.2 + + + commons-io + commons-io + 2.5 + + + + + org.springframework.security + spring-security-web + ${org.springframework.security-version} + + + + + org.springframework + spring-test + ${org.springframework-version} + test + + + junit + junit + 4.12 + test + + + xmlunit + xmlunit + 1.6 + test + + + com.jayway.jsonpath + json-path + 2.2.0 + test + + + org.hamcrest + hamcrest-library + 1.3 + test + + + + + + org.springframework.maven.snapshot + Spring Maven Snapshot Repository + http://repo.spring.io/snapshot + false + true + + + + org.springframework.maven.milestone + Spring Maven Milestone Repository + http://repo.spring.io/milestone + false + + + + ${project.artifactId} + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + ${java-version} + ${java-version} + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.12 + + + **/*Tests.java + + + **/Abstract*.java + + junit:junit + -Xmx512m + + + + org.apache.maven.plugins + maven-dependency-plugin + + + install + install + + sources + + + + + + org.codehaus.mojo + aspectj-maven-plugin + + 1.2 + + + + org.aspectj + aspectjrt + ${org.aspectj-version} + + + org.aspectj + aspectjtools + ${org.aspectj-version} + + + + + + compile + test-compile + + + + + true + ${java-version} + ${java-version} + + + + org.apache.tomcat.maven + tomcat7-maven-plugin + 2.2 + + + org.eclipse.jetty + jetty-maven-plugin + 9.0.6.v20130930 + + + /${project.artifactId} + + + + + + diff --git a/src/test/java/org/springframework/samples/mvc/form/FormControllerTests.java b/src/test/java/org/springframework/samples/mvc/form/FormControllerTests.java index c919e7159..aab9009af 100644 --- a/src/test/java/org/springframework/samples/mvc/form/FormControllerTests.java +++ b/src/test/java/org/springframework/samples/mvc/form/FormControllerTests.java @@ -1,115 +1,114 @@ -package org.springframework.samples.mvc.form; - -import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; -import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.flash; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.model; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.redirectedUrl; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.view; -import static org.springframework.test.web.servlet.setup.MockMvcBuilders.standaloneSetup; - -import java.util.Calendar; -import java.util.Date; -import java.util.TimeZone; - -import org.junit.Before; -import org.junit.Test; -import org.springframework.http.MediaType; -import org.springframework.test.web.servlet.MockMvc; -import org.springframework.web.servlet.view.InternalResourceViewResolver; - -public class FormControllerTests { - - private MockMvc mockMvc; - - @Before - public void setup() throws Exception { - - InternalResourceViewResolver viewResolver = new InternalResourceViewResolver(); - viewResolver.setPrefix("/WEB-INF/"); - viewResolver.setSuffix(".jsp"); - - this.mockMvc = standaloneSetup(new FormController()).setViewResolvers(viewResolver).build(); - } - - @Test - public void submitSuccess() throws Exception { - String timezone = getTimezone(1941, 12, 16); - this.mockMvc.perform( - post("/form") - .param("name", "Joe") - .param("age", "56") - .param("birthDate", "1941-12-16") - .param("phone", "(347) 888-1234") - .param("currency", "$123.33") - .param("percent", "89%") - .param("inquiry", "comment") - .param("inquiryDetails", "what is?") - .param("additionalInfo[mvc]", "true") - .param("_additionalInfo[mvc]", "on") - .param("additionalInfo[java]", "true") - .param("_additionalInfo[java]", "on") - .param("subscribeNewsletter", "false")) - .andDo(print()) - .andExpect(status().isMovedTemporarily()) - .andExpect(redirectedUrl("/form")) - .andExpect(flash().attribute("message", - "Form submitted successfully. Bound properties name='Joe', age=56, " + - "birthDate=Tue Dec 16 00:00:00 " + timezone + " 1941, phone='(347) 888-1234', " + - "currency=123.33, percent=0.89, inquiry=comment, inquiryDetails='what is?'," + - " subscribeNewsletter=false, additionalInfo={java=true, mvc=true}")); - } - - @Test - public void submitSuccessAjax() throws Exception { - String timezone = getTimezone(1941, 12, 16); - this.mockMvc.perform( - post("/form") - .header("X-Requested-With", "XMLHttpRequest") - .param("name", "Joe") - .param("age", "56") - .param("birthDate", "1941-12-16") - .param("phone", "(347) 888-1234") - .param("currency", "$123.33") - .param("percent", "89%") - .param("inquiry", "comment") - .param("inquiryDetails", "what is?") - .param("additionalInfo[mvc]", "true") - .param("_additionalInfo[mvc]", "on") - .param("additionalInfo[java]", "true") - .param("_additionalInfo[java]", "on") - .param("subscribeNewsletter", "false")) - .andExpect(status().isOk()) - .andExpect(view().name("form")) - .andExpect(model().hasNoErrors()) - .andExpect(model().attribute("message", - "Form submitted successfully. Bound properties name='Joe', age=56, " + - "birthDate=Tue Dec 16 00:00:00 " + timezone + " 1941, phone='(347) 888-1234', " + - "currency=123.33, percent=0.89, inquiry=comment, inquiryDetails='what is?'," + - " subscribeNewsletter=false, additionalInfo={java=true, mvc=true}")); - } - - @Test - public void submitError() throws Exception { - this.mockMvc.perform( - post("/form")) - .andExpect(status().isOk()) - .andExpect(view().name("form")) - .andExpect(model().errorCount(2)) - .andExpect(model().attributeHasFieldErrors("formBean", "name", "age")); - } - - private String getTimezone(int year, int month, int day) - { - Calendar calendar = Calendar.getInstance(); - calendar.set(Calendar.YEAR, year); - calendar.set(Calendar.MONTH, month); - calendar.set(Calendar.DAY_OF_MONTH, day); - Date date = calendar.getTime(); - TimeZone timezone = TimeZone.getDefault(); - boolean inDaylight = timezone.inDaylightTime(date); - return timezone.getDisplayName(inDaylight, TimeZone.SHORT); - } - -} +package org.springframework.samples.mvc.form; + +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; +import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.flash; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.model; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.redirectedUrl; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.view; +import static org.springframework.test.web.servlet.setup.MockMvcBuilders.standaloneSetup; + +import java.util.Calendar; +import java.util.Date; +import java.util.TimeZone; + +import org.junit.Before; +import org.junit.Test; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.web.servlet.view.InternalResourceViewResolver; + +public class FormControllerTests { + + private MockMvc mockMvc; + + @Before + public void setup() throws Exception { + + InternalResourceViewResolver viewResolver = new InternalResourceViewResolver(); + viewResolver.setPrefix("/WEB-INF/"); + viewResolver.setSuffix(".jsp"); + + this.mockMvc = standaloneSetup(new FormController()).setViewResolvers(viewResolver).build(); + } + + @Test + public void submitSuccess() throws Exception { + String timezone = getTimezone(1941, 12, 16); + this.mockMvc.perform( + post("/form") + .param("name", "Joe") + .param("age", "56") + .param("birthDate", "1941-12-16") + .param("phone", "(347) 888-1234") + .param("currency", "$123.33") + .param("percent", "89%") + .param("inquiry", "comment") + .param("inquiryDetails", "what is?") + .param("additionalInfo[mvc]", "true") + .param("_additionalInfo[mvc]", "on") + .param("additionalInfo[java]", "true") + .param("_additionalInfo[java]", "on") + .param("subscribeNewsletter", "false")) + .andDo(print()) + .andExpect(status().isFound()) + .andExpect(redirectedUrl("/form")) + .andExpect(flash().attribute("message", + "Form submitted successfully. Bound properties name='Joe', age=56, " + + "birthDate=Tue Dec 16 00:00:00 " + timezone + " 1941, phone='(347) 888-1234', " + + "currency=123.33, percent=0.89, inquiry=comment, inquiryDetails='what is?'," + + " subscribeNewsletter=false, additionalInfo={java=true, mvc=true}")); + } + + @Test + public void submitSuccessAjax() throws Exception { + String timezone = getTimezone(1941, 12, 16); + this.mockMvc.perform( + post("/form") + .header("X-Requested-With", "XMLHttpRequest") + .param("name", "Joe") + .param("age", "56") + .param("birthDate", "1941-12-16") + .param("phone", "(347) 888-1234") + .param("currency", "$123.33") + .param("percent", "89%") + .param("inquiry", "comment") + .param("inquiryDetails", "what is?") + .param("additionalInfo[mvc]", "true") + .param("_additionalInfo[mvc]", "on") + .param("additionalInfo[java]", "true") + .param("_additionalInfo[java]", "on") + .param("subscribeNewsletter", "false")) + .andExpect(status().isOk()) + .andExpect(view().name("form")) + .andExpect(model().hasNoErrors()) + .andExpect(model().attribute("message", + "Form submitted successfully. Bound properties name='Joe', age=56, " + + "birthDate=Tue Dec 16 00:00:00 " + timezone + " 1941, phone='(347) 888-1234', " + + "currency=123.33, percent=0.89, inquiry=comment, inquiryDetails='what is?'," + + " subscribeNewsletter=false, additionalInfo={java=true, mvc=true}")); + } + + @Test + public void submitError() throws Exception { + this.mockMvc.perform( + post("/form")) + .andExpect(status().isOk()) + .andExpect(view().name("form")) + .andExpect(model().errorCount(2)) + .andExpect(model().attributeHasFieldErrors("formBean", "name", "age")); + } + + private String getTimezone(int year, int month, int day) + { + Calendar calendar = Calendar.getInstance(); + calendar.set(Calendar.YEAR, year); + calendar.set(Calendar.MONTH, month); + calendar.set(Calendar.DAY_OF_MONTH, day); + Date date = calendar.getTime(); + TimeZone timezone = TimeZone.getDefault(); + boolean inDaylight = timezone.inDaylightTime(date); + return timezone.getDisplayName(inDaylight, TimeZone.SHORT); + } + +} diff --git a/src/test/java/org/springframework/samples/mvc/redirect/RedirectControllerTests.java b/src/test/java/org/springframework/samples/mvc/redirect/RedirectControllerTests.java index cd710cf65..041ef172c 100644 --- a/src/test/java/org/springframework/samples/mvc/redirect/RedirectControllerTests.java +++ b/src/test/java/org/springframework/samples/mvc/redirect/RedirectControllerTests.java @@ -1,35 +1,35 @@ -package org.springframework.samples.mvc.redirect; - -import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.redirectedUrl; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; -import static org.springframework.test.web.servlet.setup.MockMvcBuilders.standaloneSetup; - -import org.junit.Before; -import org.junit.Test; -import org.springframework.format.support.DefaultFormattingConversionService; -import org.springframework.test.web.servlet.MockMvc; - -public class RedirectControllerTests { - - private MockMvc mockMvc; - - @Before - public void setup() throws Exception { - this.mockMvc = standaloneSetup(new RedirectController(new DefaultFormattingConversionService())) - .alwaysExpect(status().isMovedTemporarily()).build(); - } - - @Test - public void uriTemplate() throws Exception { - this.mockMvc.perform(get("/redirect/uriTemplate")) - .andExpect(redirectedUrl("/redirect/a123?date=12%2F31%2F11")); - } - - @Test - public void uriComponentsBuilder() throws Exception { - this.mockMvc.perform(get("/redirect/uriComponentsBuilder")) - .andExpect(redirectedUrl("/redirect/a123?date=12/31/11")); - } - -} +package org.springframework.samples.mvc.redirect; + +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.redirectedUrl; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; +import static org.springframework.test.web.servlet.setup.MockMvcBuilders.standaloneSetup; + +import org.junit.Before; +import org.junit.Test; +import org.springframework.format.support.DefaultFormattingConversionService; +import org.springframework.test.web.servlet.MockMvc; + +public class RedirectControllerTests { + + private MockMvc mockMvc; + + @Before + public void setup() throws Exception { + this.mockMvc = standaloneSetup(new RedirectController(new DefaultFormattingConversionService())) + .alwaysExpect(status().isFound()).build(); + } + + @Test + public void uriTemplate() throws Exception { + this.mockMvc.perform(get("/redirect/uriTemplate")) + .andExpect(redirectedUrl("/redirect/a123?date=12%2F31%2F11")); + } + + @Test + public void uriComponentsBuilder() throws Exception { + this.mockMvc.perform(get("/redirect/uriComponentsBuilder")) + .andExpect(redirectedUrl("/redirect/a123?date=12/31/11")); + } + +} diff --git a/src/test/java/org/springframework/samples/mvc/response/ResponseControllerTests.java b/src/test/java/org/springframework/samples/mvc/response/ResponseControllerTests.java index 0cf136244..83b364992 100644 --- a/src/test/java/org/springframework/samples/mvc/response/ResponseControllerTests.java +++ b/src/test/java/org/springframework/samples/mvc/response/ResponseControllerTests.java @@ -1,66 +1,65 @@ -package org.springframework.samples.mvc.response; - -import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; -import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; -import static org.springframework.test.web.servlet.setup.MockMvcBuilders.standaloneSetup; - -import java.nio.charset.Charset; - -import org.junit.Before; -import org.junit.Test; -import org.springframework.http.MediaType; -import org.springframework.test.web.servlet.MockMvc; - -public class ResponseControllerTests { - - private MockMvc mockMvc; - - @Before - public void setup() throws Exception { - this.mockMvc = standaloneSetup(new ResponseController()).build(); - } - - @Test - public void responseBody() throws Exception { - this.mockMvc.perform(get("/response/annotation")) - .andExpect(status().isOk()) - .andExpect(content().string("The String ResponseBody")); - } - - @Test - public void responseCharsetAccept() throws Exception { - this.mockMvc.perform( - get("/response/charset/accept") - .accept(new MediaType("text", "plain", Charset.forName("UTF-8")))) - .andExpect(status().isOk()) - .andExpect(content().string( - "\u3053\u3093\u306b\u3061\u306f\u4e16\u754c\uff01 (\"Hello world!\" in Japanese)")); - } - - @Test - public void responseCharsetProduce() throws Exception { - this.mockMvc.perform(get("/response/charset/produce")) - .andExpect(status().isOk()) - .andExpect(content().string( - "\u3053\u3093\u306b\u3061\u306f\u4e16\u754c\uff01 (\"Hello world!\" in Japanese)")); - } - - @Test - public void responseEntityStatus() throws Exception { - this.mockMvc.perform(get("/response/entity/status")) - .andExpect(status().isForbidden()) - .andExpect(content().string( - "The String ResponseBody with custom status code (403 Forbidden)")); - } - - @Test - public void responseEntityHeaders() throws Exception { - this.mockMvc.perform(get("/response/entity/headers")) - .andExpect(status().isOk()) - .andExpect(content().string( - "The String ResponseBody with custom header Content-Type=text/plain")); - } - -} +package org.springframework.samples.mvc.response; + +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; +import static org.springframework.test.web.servlet.setup.MockMvcBuilders.standaloneSetup; + +import java.nio.charset.Charset; + +import org.junit.Before; +import org.junit.Test; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MockMvc; + +public class ResponseControllerTests { + + private MockMvc mockMvc; + + @Before + public void setup() throws Exception { + this.mockMvc = standaloneSetup(new ResponseController()).build(); + } + + @Test + public void responseBody() throws Exception { + this.mockMvc.perform(get("/response/annotation")) + .andExpect(status().isOk()) + .andExpect(content().string("The String ResponseBody")); + } + + @Test + public void responseCharsetAccept() throws Exception { + this.mockMvc.perform( + get("/response/charset/accept") + .accept(new MediaType("text", "plain", Charset.forName("UTF-8")))) + .andExpect(status().isOk()) + .andExpect(content().string( + "\u3053\u3093\u306b\u3061\u306f\u4e16\u754c\uff01 (\"Hello world!\" in Japanese)")); + } + + @Test + public void responseCharsetProduce() throws Exception { + this.mockMvc.perform(get("/response/charset/produce")) + .andExpect(status().isOk()) + .andExpect(content().string( + "\u3053\u3093\u306b\u3061\u306f\u4e16\u754c\uff01 (\"Hello world!\" in Japanese)")); + } + + @Test + public void responseEntityStatus() throws Exception { + this.mockMvc.perform(get("/response/entity/status")) + .andExpect(status().isForbidden()) + .andExpect(content().string( + "The String ResponseBody with custom status code (403 Forbidden)")); + } + + @Test + public void responseEntityHeaders() throws Exception { + this.mockMvc.perform(get("/response/entity/headers")) + .andExpect(status().isOk()) + .andExpect(content().string( + "The String ResponseBody with custom header Content-Type=text/plain")); + } + +} diff --git a/src/test/java/org/springframework/samples/mvc/simple/SimpleControllerRevisitedTests.java b/src/test/java/org/springframework/samples/mvc/simple/SimpleControllerRevisitedTests.java index de0ec0622..4814b7932 100644 --- a/src/test/java/org/springframework/samples/mvc/simple/SimpleControllerRevisitedTests.java +++ b/src/test/java/org/springframework/samples/mvc/simple/SimpleControllerRevisitedTests.java @@ -1,22 +1,22 @@ -package org.springframework.samples.mvc.simple; - -import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; -import static org.springframework.test.web.servlet.setup.MockMvcBuilders.standaloneSetup; - -import org.junit.Test; -import org.springframework.http.MediaType; - -public class SimpleControllerRevisitedTests { - - @Test - public void simple() throws Exception { - standaloneSetup(new SimpleControllerRevisited()).build() - .perform(get("/simple/revisited").accept(MediaType.TEXT_PLAIN)) - .andExpect(status().isOk()) - .andExpect(content().contentType("text/plain")) - .andExpect(content().string("Hello world revisited!")); - } - -} +package org.springframework.samples.mvc.simple; + +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; +import static org.springframework.test.web.servlet.setup.MockMvcBuilders.standaloneSetup; + +import org.junit.Test; +import org.springframework.http.MediaType; + +public class SimpleControllerRevisitedTests { + + @Test + public void simple() throws Exception { + standaloneSetup(new SimpleControllerRevisited()).build() + .perform(get("/simple/revisited").accept(MediaType.TEXT_PLAIN)) + .andExpect(status().isOk()) + .andExpect(content().contentType("text/plain;charset=ISO-8859-1")) + .andExpect(content().string("Hello world revisited!")); + } + +}