package org.xmx0632.deliciousfruit.api.v1; import static org.junit.Assert.assertEquals; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URI; import java.net.URISyntaxException; import org.apache.http.client.ClientProtocolException; import org.junit.BeforeClass; import org.junit.Test; import org.springframework.http.HttpMethod; import org.springframework.http.ResponseEntity; import org.springframework.web.client.RestTemplate; import org.springside.modules.mapper.JsonMapper; import org.xmx0632.deliciousfruit.api.v1.bo.ForgetPwdRequest; import org.xmx0632.deliciousfruit.api.v1.bo.ForgetPwdResponse; import org.xmx0632.deliciousfruit.functional.BaseControllerTestCase; public class UserAccountApiControllerForgetPwdPhoneTest extends BaseControllerTestCase { private final RestTemplate restTemplate = new RestTemplate(); private static String url; @BeforeClass public static void initUrl() { url = baseUrl + "/phoneForgetPwd"; } @Test public void testForgetPwdSuccessToPhone() throws URISyntaxException { ForgetPwdRequest forgetPwdRequest = new ForgetPwdRequest("user6", ""); URI uri = new URI(url); ResponseEntity<ForgetPwdResponse> result = restTemplate.postForEntity( uri, forgetPwdRequest, ForgetPwdResponse.class); ForgetPwdResponse response = result.getBody(); String expected = "ForgetPwdResponse [result=Result [msg=check your mobile,reset password please., value=0]]"; assertEquals(expected, response.toString()); formatHttpInfoPrint(HttpMethod.POST, url, null, "用户重置密码成功", new JsonMapper().toJson(forgetPwdRequest), jsonMapper.toJson(response)); } @Test public void testForgetPwdSuccessToPhoneWithJson() throws URISyntaxException, UnsupportedEncodingException, ClientProtocolException, IOException { String message = "{\"loginName\":\"user6\",\"email\":\"\"}"; String response = sendPostMsg("", "", message, url); String expected = "{\"result\":{\"msg\":\"check your mobile,reset password please.\",\"value\":\"0\"}}"; assertEquals(expected, response); formatHttpInfoPrint(HttpMethod.POST, url, null, "用户重置密码成功", message, response); } @Test public void testForgetPwdSuccessToPhoneWithJson1() throws URISyntaxException, UnsupportedEncodingException, ClientProtocolException, IOException { String message = "{\"loginName\":\"user6\"}"; String response = sendPostMsg("", "", message, url); String expected = "{\"result\":{\"msg\":\"check your mobile,reset password please.\",\"value\":\"0\"}}"; assertEquals(expected, response); formatHttpInfoPrint(HttpMethod.POST, url, null, "用户重置密码成功", message, response); } }