use of cn.beecloud.async.BCCallback in project ttdj by soonphe.
the class BCQueryTest method testQueryBillByIDAsyncNetworkError.
/**
* #2
* 模拟网络异常response为400等
* @throws Exception
*/
@Test
public void testQueryBillByIDAsyncNetworkError() throws Exception {
final BCHttpClientUtil.Response response = new BCHttpClientUtil.Response();
response.code = 400;
response.content = "wrong";
// mock
PowerMockito.stub(PowerMockito.method(BCHttpClientUtil.class, "httpGet", String.class)).toReturn(response);
query.queryBillByIDAsync("billid", new BCCallback() {
@Override
public void done(BCResult result) {
Assert.assertTrue(result instanceof BCQueryBillResult);
BCQueryBillResult billResult = (BCQueryBillResult) result;
Assert.assertEquals(BCRestfulCommonResult.APP_INNER_FAIL_NUM, billResult.getResultCode());
// 释放
latch.countDown();
}
});
// 等待
latch.await(2000, TimeUnit.MILLISECONDS);
}
use of cn.beecloud.async.BCCallback in project ttdj by soonphe.
the class BCQueryTest method testQueryRefundsAsyncByChannelBillRefundNum.
/**
* #5
* 测试根据支付渠道和(支付订单号|退款单号)获取退款订单列表
* @throws Exception
*/
@Test
public void testQueryRefundsAsyncByChannelBillRefundNum() throws Exception {
final BCHttpClientUtil.Response response = new BCHttpClientUtil.Response();
response.code = 200;
// please note this content is fake, there should be content for refunds, here delete the record for the limit of space
response.content = "{\"result_msg\":\"OK\",\"err_detail\":\"\",\"result_code\":0,\"refunds\":[{\"refund_no\":\"201511141447430832000\"}]}";
// mock
PowerMockito.stub(PowerMockito.method(BCHttpClientUtil.class, "httpGet", String.class)).toReturn(response);
query.queryRefundsAsync(BCReqParams.BCChannelTypes.ALL, "billnum", "refundnum", new BCCallback() {
@Override
public void done(BCResult result) {
Assert.assertTrue(result instanceof BCQueryRefundsResult);
BCQueryRefundsResult refundsResult = (BCQueryRefundsResult) result;
Assert.assertEquals((Integer) 0, refundsResult.getResultCode());
Assert.assertEquals((int) refundsResult.getCount(), refundsResult.getRefunds().size());
BCRefundOrder refundOrder = refundsResult.getRefunds().get(0);
Assert.assertEquals("201511141447430832000", refundOrder.getRefundNum());
latch.countDown();
}
});
latch.await(2000, TimeUnit.MILLISECONDS);
}
use of cn.beecloud.async.BCCallback in project ttdj by soonphe.
the class BCQueryTest method testQueryOfflineBillStatusAsyncSucc.
/**
* #4
* 模拟请求成功的情况
* @throws Exception
*/
@Test
public void testQueryOfflineBillStatusAsyncSucc() throws Exception {
final BCHttpClientUtil.Response response = new BCHttpClientUtil.Response();
response.code = 200;
response.content = "{\"result_msg\":\"OK\",\"submit_msg\":\"OK\",\"resultCode\":0,\"errMsg\":\"OK:\",\"err_detail\":\"\",\"result_code\":0,\"did_submit\":true,\"pay_result\":true}";
// mock
PowerMockito.stub(PowerMockito.method(BCHttpClientUtil.class, "httpPost", String.class, Map.class)).toReturn(response);
query.queryOfflineBillStatusAsync(BCReqParams.BCChannelTypes.WX_NATIVE, "fakeid", new BCCallback() {
@Override
public void done(BCResult result) {
Assert.assertTrue(result instanceof BCBillStatus);
BCBillStatus status = (BCBillStatus) result;
Assert.assertEquals((Integer) 0, status.getResultCode());
Assert.assertTrue(status.getPayResult());
// 释放
latch.countDown();
}
});
// 等待
latch.await(2000, TimeUnit.MILLISECONDS);
}
use of cn.beecloud.async.BCCallback in project ttdj by soonphe.
the class BCQueryTest method testQueryRefundsCountAsyncSucc.
/**
* #3
* 网络请求200
* @throws Exception
*/
@Test
public void testQueryRefundsCountAsyncSucc() throws Exception {
final BCHttpClientUtil.Response response = new BCHttpClientUtil.Response();
response.code = 200;
response.content = "{\"result_msg\":\"OK\",\"err_detail\":\"\",\"count\":826,\"result_code\":0}";
// mock
PowerMockito.stub(PowerMockito.method(BCHttpClientUtil.class, "httpGet", String.class)).toReturn(response);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.CHINA);
BCQuery.QueryParams queryParams = new BCQuery.QueryParams();
queryParams.channel = BCReqParams.BCChannelTypes.WX;
queryParams.startTime = sdf.parse("2015-10-01 00:00").getTime();
query.queryRefundsCountAsync(queryParams, new BCCallback() {
@Override
public void done(BCResult result) {
Assert.assertTrue(result instanceof BCQueryCountResult);
BCQueryCountResult countResult = (BCQueryCountResult) result;
Assert.assertEquals((Integer) 0, countResult.getResultCode());
Assert.assertEquals((Integer) 826, countResult.getCount());
latch.countDown();
}
});
latch.await(2000, TimeUnit.MILLISECONDS);
}
use of cn.beecloud.async.BCCallback in project ttdj by soonphe.
the class BCQueryTest method testQueryRefundsCountAsyncTestMode.
/**
* #4
* test mode
* @throws Exception
*/
@Test
public void testQueryRefundsCountAsyncTestMode() throws Exception {
BeeCloud.setSandbox(true);
BCQuery.QueryParams queryParams = new BCQuery.QueryParams();
queryParams.channel = BCReqParams.BCChannelTypes.WX;
query.queryRefundsCountAsync(queryParams, new BCCallback() {
@Override
public void done(BCResult result) {
Assert.assertTrue(result instanceof BCQueryCountResult);
BCQueryCountResult countResult = (BCQueryCountResult) result;
Assert.assertEquals(BCRestfulCommonResult.APP_INNER_FAIL_NUM, countResult.getResultCode());
Assert.assertEquals("该功能暂不支持测试模式", countResult.getErrDetail());
latch.countDown();
}
});
latch.await(2000, TimeUnit.MILLISECONDS);
}
Aggregations