|
|
@@ -1,13 +1,21 @@ |
|
|
|
package me.chanjar.weixin.cp.api.impl; |
|
|
|
|
|
|
|
import com.google.inject.Inject; |
|
|
|
import me.chanjar.weixin.common.error.WxErrorException; |
|
|
|
import me.chanjar.weixin.cp.api.ApiTestModule; |
|
|
|
import me.chanjar.weixin.cp.api.WxCpAgentService; |
|
|
|
import me.chanjar.weixin.cp.api.WxCpService; |
|
|
|
import me.chanjar.weixin.cp.bean.WxCpAgent; |
|
|
|
import org.testng.Assert; |
|
|
|
import org.testng.annotations.Guice; |
|
|
|
import org.testng.annotations.Test; |
|
|
|
|
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
import static org.assertj.core.api.Assertions.assertThat; |
|
|
|
import static org.mockito.Mockito.mock; |
|
|
|
import static org.mockito.Mockito.when; |
|
|
|
import static org.testng.Assert.assertEquals; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
@@ -18,24 +26,64 @@ import static org.mockito.Mockito.when; |
|
|
|
* |
|
|
|
* @author <a href="https://github.com/huansinho">huansinho</a> |
|
|
|
*/ |
|
|
|
@Guice(modules = ApiTestModule.class) |
|
|
|
public class WxCpAgentServiceImplTest { |
|
|
|
|
|
|
|
protected WxCpService wxService = mock(WxCpService.class); |
|
|
|
@Inject |
|
|
|
private WxCpService wxCpService; |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testGet() throws Exception { |
|
|
|
String returnJson = "{\"errcode\": 0,\"errmsg\": \"ok\",\"agentid\": 9,\"name\": \"测试应用\",\"square_logo_url\": \"http://wx.qlogo.cn/mmhead/alksjf;lasdjf;lasjfuodiuj3rj2o34j/0\",\"description\": \"这是一个企业号应用\",\"allow_userinfos\": {\"user\": [{\"userid\": \"0009854\"}, {\"userid\": \"1723\"}, {\"userid\": \"5625\"}]},\"allow_partys\": {\"partyid\": [42762742]},\"allow_tags\": {\"tagid\": [23, 22, 35, 19, 32, 125, 133, 46, 150, 38, 183, 9, 7]},\"close\": 0,\"redirect_domain\": \"weixin.com.cn\",\"report_location_flag\": 0,\"isreportenter\": 0,\"home_url\": \"\"}"; |
|
|
|
when(wxService.get("https://qyapi.weixin.qq.com/cgi-bin/agent/get?agentid=9", null)).thenReturn(returnJson); |
|
|
|
when(wxService.getAgentService()).thenReturn(new WxCpAgentServiceImpl(wxService)); |
|
|
|
final Integer agentId = this.wxCpService.getWxCpConfigStorage().getAgentId(); |
|
|
|
WxCpAgent wxCpAgent = this.wxCpService.getAgentService().get(agentId); |
|
|
|
|
|
|
|
assertThat(wxCpAgent.getAgentId()).isEqualTo(agentId); |
|
|
|
|
|
|
|
assertThat(wxCpAgent.getAllowUserInfos().getUsers().toArray()).isNotEmpty(); |
|
|
|
assertThat(wxCpAgent.getAllowParties().getPartyIds().toArray()).isNotEmpty(); |
|
|
|
assertThat(wxCpAgent.getAllowTags().getTagIds().toArray()).isNotEmpty(); |
|
|
|
} |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testSet() throws WxErrorException { |
|
|
|
final Integer agentId = this.wxCpService.getWxCpConfigStorage().getAgentId(); |
|
|
|
|
|
|
|
this.wxCpService.getAgentService().set(WxCpAgent.builder() |
|
|
|
.description("abcddd") |
|
|
|
.logoMediaId("aaaaaaaaaaaaaa") |
|
|
|
.agentId(agentId) |
|
|
|
.build()); |
|
|
|
} |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testList() throws WxErrorException { |
|
|
|
List<WxCpAgent> list = this.wxCpService.getAgentService().list(); |
|
|
|
|
|
|
|
assertThat(list).isNotEmpty(); |
|
|
|
|
|
|
|
assertThat(list.get(0).getAgentId()).isNotNull(); |
|
|
|
assertThat(list.get(0).getName()).isNotEmpty(); |
|
|
|
assertThat(list.get(0).getSquareLogoUrl()).isNotEmpty(); |
|
|
|
} |
|
|
|
|
|
|
|
public static class MockTest { |
|
|
|
private WxCpService wxService = mock(WxCpService.class); |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testGet() throws Exception { |
|
|
|
String returnJson = "{\"errcode\": 0,\"errmsg\": \"ok\",\"agentid\": 9,\"name\": \"测试应用\",\"square_logo_url\": \"http://wx.qlogo.cn/mmhead/alksjf;lasdjf;lasjfuodiuj3rj2o34j/0\",\"description\": \"这是一个企业号应用\",\"allow_userinfos\": {\"user\": [{\"userid\": \"0009854\"}, {\"userid\": \"1723\"}, {\"userid\": \"5625\"}]},\"allow_partys\": {\"partyid\": [42762742]},\"allow_tags\": {\"tagid\": [23, 22, 35, 19, 32, 125, 133, 46, 150, 38, 183, 9, 7]},\"close\": 0,\"redirect_domain\": \"weixin.com.cn\",\"report_location_flag\": 0,\"isreportenter\": 0,\"home_url\": \"\"}"; |
|
|
|
when(wxService.get("https://qyapi.weixin.qq.com/cgi-bin/agent/get?agentid=9", null)).thenReturn(returnJson); |
|
|
|
when(wxService.getAgentService()).thenReturn(new WxCpAgentServiceImpl(wxService)); |
|
|
|
|
|
|
|
WxCpAgentService wxAgentService = this.wxService.getAgentService(); |
|
|
|
WxCpAgent wxCpAgent = wxAgentService.get(9); |
|
|
|
|
|
|
|
WxCpAgentService wxAgentService = this.wxService.getAgentService(); |
|
|
|
WxCpAgent wxCpAgent = wxAgentService.get(9); |
|
|
|
assertEquals(9, wxCpAgent.getAgentId().intValue()); |
|
|
|
|
|
|
|
Assert.assertEquals(9, wxCpAgent.getAgentId().intValue()); |
|
|
|
assertEquals(new Integer[]{42762742}, wxCpAgent.getAllowParties().getPartyIds().toArray()); |
|
|
|
|
|
|
|
Assert.assertEquals(new Integer[]{42762742}, wxCpAgent.getAllowParties().getPartyIds().toArray()); |
|
|
|
assertEquals(new Integer[]{23, 22, 35, 19, 32, 125, 133, 46, 150, 38, 183, 9, 7}, wxCpAgent.getAllowTags().getTagIds().toArray()); |
|
|
|
|
|
|
|
Assert.assertEquals(new Integer[]{23, 22, 35, 19, 32, 125, 133, 46, 150, 38, 183, 9, 7}, wxCpAgent.getAllowTags().getTagIds().toArray()); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|