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);
}
}