package com.alipay.easysdk.marketing.openlife;
|
|
import com.alipay.easysdk.TestAccount;
|
import com.alipay.easysdk.factory.Factory;
|
import com.alipay.easysdk.factory.Factory.Marketing;
|
import com.alipay.easysdk.kernel.util.ResponseChecker;
|
import com.alipay.easysdk.marketing.openlife.models.AlipayOpenPublicLifeMsgRecallResponse;
|
import com.alipay.easysdk.marketing.openlife.models.AlipayOpenPublicMessageContentCreateResponse;
|
import com.alipay.easysdk.marketing.openlife.models.AlipayOpenPublicMessageContentModifyResponse;
|
import com.alipay.easysdk.marketing.openlife.models.AlipayOpenPublicMessageSingleSendResponse;
|
import com.alipay.easysdk.marketing.openlife.models.AlipayOpenPublicMessageTotalSendResponse;
|
import com.alipay.easysdk.marketing.openlife.models.AlipayOpenPublicSettingCategoryQueryResponse;
|
import com.alipay.easysdk.marketing.openlife.models.AlipayOpenPublicTemplateMessageIndustryModifyResponse;
|
import com.alipay.easysdk.marketing.openlife.models.Article;
|
import com.alipay.easysdk.marketing.openlife.models.Context;
|
import com.alipay.easysdk.marketing.openlife.models.Keyword;
|
import com.alipay.easysdk.marketing.openlife.models.Template;
|
import com.google.common.collect.Lists;
|
import org.junit.Before;
|
import org.junit.Ignore;
|
import org.junit.Test;
|
|
import static org.hamcrest.CoreMatchers.is;
|
import static org.hamcrest.CoreMatchers.not;
|
import static org.hamcrest.CoreMatchers.notNullValue;
|
import static org.hamcrest.CoreMatchers.nullValue;
|
import static org.junit.Assert.assertThat;
|
|
public class ClientTest {
|
|
@Before
|
public void setUp() {
|
Factory.setOptions(TestAccount.OpenLife.CONFIG);
|
}
|
|
@Test
|
public void testCreateImageTextContent() throws Exception {
|
AlipayOpenPublicMessageContentCreateResponse response = Marketing.OpenLife().createImageTextContent("标题",
|
"http://dl.django.t.taobao.com/rest/1.0/image?fileIds=hOTQ1lT1TtOjcxGflvnUXgAAACMAAQED",
|
"示例", "T", "activity", "满100减10",
|
"关键,热度", "13434343432,xxx@163.com");
|
|
assertThat(ResponseChecker.success(response), is(true));
|
assertThat(response.code, is("10000"));
|
assertThat(response.msg, is("Success"));
|
assertThat(response.subCode, is(nullValue()));
|
assertThat(response.subMsg, is(nullValue()));
|
assertThat(response.httpBody, not(nullValue()));
|
assertThat(response.contentId, is(notNullValue()));
|
assertThat(response.contentUrl, is(notNullValue()));
|
}
|
|
@Test
|
public void testModifyImageTextContent() throws Exception {
|
AlipayOpenPublicMessageContentModifyResponse response = Marketing.OpenLife().modifyImageTextContent(
|
"2021002177673029ecae71f5-9af3-4317-b9ce-d3a8f238f8ce", "新标题",
|
"http://dl.django.t.taobao.com/rest/1.0/image?fileIds=hOTQ1lT1TtOjcxGflvnUXgAAACMAAQED",
|
"新示例", "T", "activity", "满100减20",
|
"关键,热度", "13434343432,xxx@163.com");
|
|
assertThat(ResponseChecker.success(response), is(true));
|
assertThat(response.code, is("10000"));
|
assertThat(response.msg, is("Success"));
|
assertThat(response.subCode, is(nullValue()));
|
assertThat(response.subMsg, is(nullValue()));
|
assertThat(response.httpBody, not(nullValue()));
|
assertThat(response.contentId, is("2021002177673029ecae71f5-9af3-4317-b9ce-d3a8f238f8ce"));
|
assertThat(response.contentUrl, is(notNullValue()));
|
}
|
|
@Test
|
public void testSendText() throws Exception {
|
AlipayOpenPublicMessageTotalSendResponse response = Marketing.OpenLife().sendText("测试");
|
|
if (response.code.equals("10000")) {
|
assertThat(ResponseChecker.success(response), is(true));
|
assertThat(response.code, is("10000"));
|
assertThat(response.msg, is("Success"));
|
assertThat(response.subCode, is(nullValue()));
|
assertThat(response.subMsg, is(nullValue()));
|
assertThat(response.httpBody, not(nullValue()));
|
assertThat(response.messageId, is(notNullValue()));
|
} else {
|
assertThat(ResponseChecker.success(response), is(false));
|
assertThat(response.code, is("40004"));
|
assertThat(response.msg, is("Business Failed"));
|
assertThat(response.subCode, is("PUB.MSG_BATCH_SD_OVER"));
|
assertThat(response.subMsg, is("批量发送消息频率超限"));
|
assertThat(response.httpBody, not(nullValue()));
|
assertThat(response.messageId, is(nullValue()));
|
}
|
}
|
|
@Test
|
public void testSendImageText() throws Exception {
|
Article article = new Article();
|
article.actionName = "测试";
|
article.desc = "测试";
|
article.title = "测试";
|
article.imageUrl = "http://dl.django.t.taobao.com/rest/1.0/image?fileIds=hOTQ1lT1TtOjcxGflvnUXgAAACMAAQED";
|
article.url = "https://docs.open.alipay.com/api_6/alipay.open.public.message.total.send";
|
AlipayOpenPublicMessageTotalSendResponse response = Marketing.OpenLife().sendImageText(Lists.newArrayList(article));
|
|
if (response.code.equals("10000")) {
|
assertThat(ResponseChecker.success(response), is(true));
|
assertThat(response.code, is("10000"));
|
assertThat(response.msg, is("Success"));
|
assertThat(response.subCode, is(nullValue()));
|
assertThat(response.subMsg, is(nullValue()));
|
assertThat(response.httpBody, not(nullValue()));
|
assertThat(response.messageId, is(notNullValue()));
|
} else {
|
assertThat(ResponseChecker.success(response), is(false));
|
assertThat(response.code, is("40004"));
|
assertThat(response.msg, is("Business Failed"));
|
assertThat(response.subCode, is("PUB.MSG_BATCH_SD_OVER"));
|
assertThat(response.subMsg, is("批量发送消息频率超限"));
|
assertThat(response.httpBody, not(nullValue()));
|
assertThat(response.messageId, is(nullValue()));
|
}
|
}
|
|
@Test
|
public void testSendSingleMessage() throws Exception {
|
Keyword keyword = new Keyword();
|
keyword.color = "#85be53";
|
keyword.value = "HU7142";
|
|
Context context = new Context();
|
context.headColor = "#85be53";
|
context.url = "https://docs.open.alipay.com/api_6/alipay.open.public.message.single.send";
|
context.actionName = "查看详情";
|
context.keyword1 = keyword;
|
context.keyword2 = keyword;
|
context.first = keyword;
|
context.remark = keyword;
|
|
Template template = new Template();
|
template.templateId = "TM9f1a1af9c3d9418bb0f66af22c817f41";
|
template.context = context;
|
|
AlipayOpenPublicMessageSingleSendResponse response = Marketing.OpenLife().sendSingleMessage(
|
"2088002656718920", template);
|
|
assertThat(ResponseChecker.success(response), is(false));
|
assertThat(response.code, is("40004"));
|
assertThat(response.msg, is("Business Failed"));
|
assertThat(response.subCode, is("MSG_TEMPLATE_NOT_EXIST"));
|
assertThat(response.subMsg, is("消息模板不存在"));
|
assertThat(response.httpBody, not(nullValue()));
|
}
|
|
@Test
|
public void testRecallMessage() throws Exception {
|
AlipayOpenPublicLifeMsgRecallResponse response = Marketing.OpenLife().recallMessage(
|
"201905106452100327f456f6-8dd2-4a06-8b0e-ec8a3a85c46a");
|
|
assertThat(ResponseChecker.success(response), is(false));
|
assertThat(response.code, is("40004"));
|
assertThat(response.msg, is("Business Failed"));
|
assertThat(response.subCode, is("PUB.RCD_MSG_NOT_EXIST"));
|
assertThat(response.subMsg, is("撤回的消息不存在"));
|
assertThat(response.httpBody, not(nullValue()));
|
}
|
|
@Test
|
public void testSetIndustry() throws Exception {
|
AlipayOpenPublicTemplateMessageIndustryModifyResponse response = Marketing.OpenLife().setIndustry(
|
"10001/20102", "IT科技/IT软件与服务",
|
"10001/20102", "IT科技/IT软件与服务");
|
|
if (response.code.equals("10000")) {
|
assertThat(ResponseChecker.success(response), is(true));
|
assertThat(response.code, is("10000"));
|
assertThat(response.msg, is("Success"));
|
assertThat(response.subCode, is(nullValue()));
|
assertThat(response.subMsg, is(nullValue()));
|
assertThat(response.httpBody, not(nullValue()));
|
} else {
|
assertThat(ResponseChecker.success(response), is(false));
|
assertThat(response.code, is("40004"));
|
assertThat(response.msg, is("Business Failed"));
|
assertThat(response.subCode, is("3002"));
|
assertThat(response.subMsg, is("模板消息行业一月只能修改一次"));
|
assertThat(response.httpBody, not(nullValue()));
|
}
|
}
|
|
@Test
|
public void testGetIndustry() throws Exception {
|
AlipayOpenPublicSettingCategoryQueryResponse response = Marketing.OpenLife().getIndustry();
|
|
assertThat(ResponseChecker.success(response), is(true));
|
assertThat(response.code, is("10000"));
|
assertThat(response.msg, is("Success"));
|
assertThat(response.subCode, is(nullValue()));
|
assertThat(response.subMsg, is(nullValue()));
|
assertThat(response.httpBody, not(nullValue()));
|
assertThat(response.primaryCategory, is("IT科技/IT软件与服务"));
|
assertThat(response.secondaryCategory, is("IT科技/IT软件与服务"));
|
}
|
}
|