一、由於在開發貼條功能時未曾遇到什麼技術上的難題,這裡只貼出貼條的相關代碼:
/// <summary>
/// 對指定車位進行貼條
/// </summary>
/// <param name="parkingInfo">將進行貼條的車位信息</param>
public PostResult PostOneCar(ParkingInfo parkingInfo)
{
// 該車位上未停車
if (parkingInfo.CarId.Equals("0"))
{
return null;
}
// 車位利潤不夠貼條
if (!string.IsNullOrEmpty(parkingInfo.CarProfit) && Convert.ToInt32(parkingInfo.CarProfit) <= 150)
{
return null;
}
string postUrl = "http://www.kaixin001.com/parking/post.php";
string postParams = string.Format("_=&acc={0}&parkid={1}&verify={2}", acc, parkingInfo.ParkId, verify);
string postResultJson = new HttpHelper().GetHtml(postUrl, postParams, true, Utility.Cookies);
if (string.IsNullOrEmpty(postResultJson))
{
return null;
}
object o = Newtonsoft.Json.JavaScriptConvert.DeserializeObject(postResultJson.Replace("\\/", "/").Replace("\\u", "\\\\u"));
return new PostResult(o);
}
下面是測試代碼:
/// <summary>
///PostOneCar 的測試(對第N個車位進行貼條操作)
///</summary>
[TestMethod()]
public void PostOneCarTest()
{
string loginEmail = UnitTestHelper.LoginEmail;
string loginPassword = UnitTestHelper.LoginPassword;
Utility.Login(loginEmail, loginPassword);
ParkingHelper helper = new ParkingHelper();
helper.GetParkerDetails();
PostResult result = helper.PostOneCar(helper.ParkingList[3]); // 對第N個車位進行貼條操作
Assert.AreEqual<string>("0", result.ErrNo);
Console.WriteLine(result.Error);
}