|
1 | 1 | package me.chanjar.weixin.mp.api.impl;
|
2 | 2 |
|
3 | 3 | import java.util.ArrayList;
|
| 4 | +import java.util.HashMap; |
4 | 5 | import java.util.List;
|
| 6 | +import java.util.Map; |
5 | 7 |
|
| 8 | +import me.chanjar.weixin.mp.api.WxMpUserService; |
| 9 | +import me.chanjar.weixin.mp.bean.result.WxMpChangeOpenid; |
| 10 | +import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; |
6 | 11 | import org.testng.*;
|
7 | 12 | import org.testng.annotations.*;
|
8 | 13 |
|
|
15 | 20 | import me.chanjar.weixin.mp.bean.result.WxMpUser;
|
16 | 21 | import me.chanjar.weixin.mp.bean.result.WxMpUserList;
|
17 | 22 |
|
| 23 | +import static org.mockito.Mockito.mock; |
| 24 | +import static org.mockito.Mockito.when; |
| 25 | + |
18 | 26 | /**
|
19 | 27 | * 测试用户相关的接口
|
20 | 28 | *
|
@@ -75,4 +83,50 @@ public void testUserList() throws WxErrorException {
|
75 | 83 | System.out.println(wxMpUserList);
|
76 | 84 | }
|
77 | 85 |
|
| 86 | + public void testChangeOpenid() throws WxErrorException { |
| 87 | + List<String> openids = new ArrayList<>(); |
| 88 | + openids.add(this.configProvider.getOpenid()); |
| 89 | + List<WxMpChangeOpenid> wxMpChangeOpenidList = this.wxService.getUserService() |
| 90 | + .changeOpenid("原公众号appid", openids); |
| 91 | + Assert.assertNotNull(wxMpChangeOpenidList); |
| 92 | + Assert.assertEquals(1, wxMpChangeOpenidList.size()); |
| 93 | + WxMpChangeOpenid wxMpChangeOpenid = wxMpChangeOpenidList.get(0); |
| 94 | + Assert.assertNotNull(wxMpChangeOpenid); |
| 95 | + Assert.assertEquals(this.configProvider.getOpenid(), wxMpChangeOpenid.getOriOpenid()); |
| 96 | + System.out.println(wxMpChangeOpenid); |
| 97 | + } |
| 98 | + |
| 99 | + public static class MockTest { |
| 100 | + private WxMpService wxService = mock(WxMpService.class); |
| 101 | + @Test |
| 102 | + public void testMockChangeOpenid() throws WxErrorException { |
| 103 | + List<String> openids = new ArrayList<>(); |
| 104 | + openids.add("oEmYbwN-n24jxvk4Sox81qedINkQ"); |
| 105 | + openids.add("oEmYbwH9uVd4RKJk7ZZg6SzL6tTo"); |
| 106 | + String fromAppid = "old_appid"; |
| 107 | + Map<String, Object> map = new HashMap<>(); |
| 108 | + map.put("from_appid", fromAppid); |
| 109 | + map.put("openid_list", openids); |
| 110 | + |
| 111 | + String returnJson = "{\"errcode\": 0,\"errmsg\": \"ok\",\"result_list\": [{\"ori_openid\": \"oEmYbwN-n24jxvk4Sox81qedINkQ\",\"new_openid\": \"o2FwqwI9xCsVadFah_HtpPfaR-X4\",\"err_msg\": \"ok\"},{\"ori_openid\": \"oEmYbwH9uVd4RKJk7ZZg6SzL6tTo\",\"err_msg\": \"ori_openid error\"}]}"; |
| 112 | + when(wxService.post(WxMpUserService.USER_CHANGE_OPENID_URL, WxMpGsonBuilder.create().toJson(map))).thenReturn(returnJson); |
| 113 | + List<WxMpChangeOpenid> wxMpChangeOpenidList = this.wxService.getUserService() |
| 114 | + .changeOpenid(fromAppid, openids); |
| 115 | + Assert.assertNotNull(wxMpChangeOpenidList); |
| 116 | + Assert.assertEquals(2, wxMpChangeOpenidList.size()); |
| 117 | + WxMpChangeOpenid wxMpChangeOpenid = wxMpChangeOpenidList.get(0); |
| 118 | + Assert.assertNotNull(wxMpChangeOpenid); |
| 119 | + Assert.assertEquals("oEmYbwN-n24jxvk4Sox81qedINkQ", wxMpChangeOpenid.getOriOpenid()); |
| 120 | + Assert.assertEquals("o2FwqwI9xCsVadFah_HtpPfaR-X4", wxMpChangeOpenid.getNewOpenid()); |
| 121 | + Assert.assertEquals("ok", wxMpChangeOpenid.getErrMsg()); |
| 122 | + wxMpChangeOpenid = wxMpChangeOpenidList.get(1); |
| 123 | + Assert.assertNotNull(wxMpChangeOpenid); |
| 124 | + Assert.assertEquals("oEmYbwH9uVd4RKJk7ZZg6SzL6tTo", wxMpChangeOpenid.getOriOpenid()); |
| 125 | + Assert.assertNull(wxMpChangeOpenid.getNewOpenid()); |
| 126 | + Assert.assertEquals("ori_openid error", wxMpChangeOpenid.getErrMsg()); |
| 127 | + System.out.println(wxMpChangeOpenid); |
| 128 | + } |
| 129 | + |
| 130 | + } |
| 131 | + |
78 | 132 | }
|
0 commit comments