完成支付、电子面单、模板消息队列等功能
This commit is contained in:
@ -248,7 +248,7 @@ public class OAuth2OpenControllerTest extends BaseMockitoUnitTest {
|
||||
String responseType = "token";
|
||||
String clientId = randomString();
|
||||
String scope = "{\"read\": true, \"write\": false}";
|
||||
String redirectUri = "https://www.iocoder.cn";
|
||||
String redirectUri = "https://www.yixiang.co";
|
||||
String state = "test";
|
||||
// mock 方法
|
||||
OAuth2ClientDO client = randomPojo(OAuth2ClientDO.class);
|
||||
@ -260,7 +260,7 @@ public class OAuth2OpenControllerTest extends BaseMockitoUnitTest {
|
||||
scope, redirectUri, false, state);
|
||||
// 断言
|
||||
assertEquals(0, result.getCode());
|
||||
assertEquals("https://www.iocoder.cn#error=access_denied&error_description=User%20denied%20access&state=test", result.getData());
|
||||
assertEquals("https://www.yixiang.co#error=access_denied&error_description=User%20denied%20access&state=test", result.getData());
|
||||
}
|
||||
|
||||
@Test // autoApprove = true,通过 + token
|
||||
@ -269,7 +269,7 @@ public class OAuth2OpenControllerTest extends BaseMockitoUnitTest {
|
||||
String responseType = "token";
|
||||
String clientId = randomString();
|
||||
String scope = "{\"read\": true, \"write\": false}";
|
||||
String redirectUri = "https://www.iocoder.cn";
|
||||
String redirectUri = "https://www.yixiang.co";
|
||||
String state = "test";
|
||||
// mock 方法(client)
|
||||
OAuth2ClientDO client = randomPojo(OAuth2ClientDO.class).setClientId(clientId).setAdditionalInformation(null);
|
||||
@ -289,7 +289,7 @@ public class OAuth2OpenControllerTest extends BaseMockitoUnitTest {
|
||||
scope, redirectUri, true, state);
|
||||
// 断言
|
||||
assertEquals(0, result.getCode());
|
||||
assertEquals("https://www.iocoder.cn#access_token=test_access_token&token_type=bearer&state=test&expires_in=30&scope=read", result.getData());
|
||||
assertEquals("https://www.yixiang.co#access_token=test_access_token&token_type=bearer&state=test&expires_in=30&scope=read", result.getData());
|
||||
}
|
||||
|
||||
@Test // autoApprove = false,通过 + code
|
||||
@ -298,7 +298,7 @@ public class OAuth2OpenControllerTest extends BaseMockitoUnitTest {
|
||||
String responseType = "code";
|
||||
String clientId = randomString();
|
||||
String scope = "{\"read\": true, \"write\": false}";
|
||||
String redirectUri = "https://www.iocoder.cn";
|
||||
String redirectUri = "https://www.yixiang.co";
|
||||
String state = "test";
|
||||
// mock 方法(client)
|
||||
OAuth2ClientDO client = randomPojo(OAuth2ClientDO.class).setClientId(clientId).setAdditionalInformation(null);
|
||||
@ -318,7 +318,7 @@ public class OAuth2OpenControllerTest extends BaseMockitoUnitTest {
|
||||
scope, redirectUri, false, state);
|
||||
// 断言
|
||||
assertEquals(0, result.getCode());
|
||||
assertEquals("https://www.iocoder.cn?code=test_code&state=test", result.getData());
|
||||
assertEquals("https://www.yixiang.co?code=test_code&state=test", result.getData());
|
||||
}
|
||||
|
||||
private HttpServletRequest mockRequest(String clientId, String secret) {
|
||||
|
||||
@ -43,9 +43,9 @@ public class DictDataServiceImplTest extends BaseDbUnitTest {
|
||||
@Test
|
||||
public void testGetDictDataList() {
|
||||
// mock 数据
|
||||
DictDataDO dictDataDO01 = randomDictDataDO().setDictType("yunai").setSort(2);
|
||||
DictDataDO dictDataDO01 = randomDictDataDO().setDictType("yshop").setSort(2);
|
||||
dictDataMapper.insert(dictDataDO01);
|
||||
DictDataDO dictDataDO02 = randomDictDataDO().setDictType("yunai").setSort(1);
|
||||
DictDataDO dictDataDO02 = randomDictDataDO().setDictType("yshop").setSort(1);
|
||||
dictDataMapper.insert(dictDataDO02);
|
||||
// 准备参数
|
||||
|
||||
@ -62,7 +62,7 @@ public class DictDataServiceImplTest extends BaseDbUnitTest {
|
||||
// mock 数据
|
||||
DictDataDO dbDictData = randomPojo(DictDataDO.class, o -> { // 等会查询到
|
||||
o.setLabel("yshop");
|
||||
o.setDictType("yunai");
|
||||
o.setDictType("yshop");
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
});
|
||||
dictDataMapper.insert(dbDictData);
|
||||
@ -75,7 +75,7 @@ public class DictDataServiceImplTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
DictDataPageReqVO reqVO = new DictDataPageReqVO();
|
||||
reqVO.setLabel("芋");
|
||||
reqVO.setDictType("yunai");
|
||||
reqVO.setDictType("yshop");
|
||||
reqVO.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
|
||||
// 调用
|
||||
@ -91,7 +91,7 @@ public class DictDataServiceImplTest extends BaseDbUnitTest {
|
||||
// mock 数据
|
||||
DictDataDO dbDictData = randomPojo(DictDataDO.class, o -> { // 等会查询到
|
||||
o.setLabel("yshop");
|
||||
o.setDictType("yunai");
|
||||
o.setDictType("yshop");
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
});
|
||||
dictDataMapper.insert(dbDictData);
|
||||
@ -104,7 +104,7 @@ public class DictDataServiceImplTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
DictDataExportReqVO reqVO = new DictDataExportReqVO();
|
||||
reqVO.setLabel("芋");
|
||||
reqVO.setDictType("yunai");
|
||||
reqVO.setDictType("yshop");
|
||||
reqVO.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
|
||||
// 调用
|
||||
@ -262,11 +262,11 @@ public class DictDataServiceImplTest extends BaseDbUnitTest {
|
||||
@Test
|
||||
public void testCountByDictType() {
|
||||
// mock 数据
|
||||
dictDataMapper.insert(randomDictDataDO(o -> o.setDictType("yunai")));
|
||||
dictDataMapper.insert(randomDictDataDO(o -> o.setDictType("yshop")));
|
||||
dictDataMapper.insert(randomDictDataDO(o -> o.setDictType("tudou")));
|
||||
dictDataMapper.insert(randomDictDataDO(o -> o.setDictType("yunai")));
|
||||
dictDataMapper.insert(randomDictDataDO(o -> o.setDictType("yshop")));
|
||||
// 准备参数
|
||||
String dictType = "yunai";
|
||||
String dictType = "yshop";
|
||||
|
||||
// 调用
|
||||
long count = dictDataService.countByDictType(dictType);
|
||||
@ -314,12 +314,12 @@ public class DictDataServiceImplTest extends BaseDbUnitTest {
|
||||
@Test
|
||||
public void testGetDictData_dictType() {
|
||||
// mock 数据
|
||||
DictDataDO dictDataDO = randomDictDataDO().setDictType("yunai").setValue("1");
|
||||
DictDataDO dictDataDO = randomDictDataDO().setDictType("yshop").setValue("1");
|
||||
dictDataMapper.insert(dictDataDO);
|
||||
DictDataDO dictDataDO02 = randomDictDataDO().setDictType("yunai").setValue("2");
|
||||
DictDataDO dictDataDO02 = randomDictDataDO().setDictType("yshop").setValue("2");
|
||||
dictDataMapper.insert(dictDataDO02);
|
||||
// 准备参数
|
||||
String dictType = "yunai";
|
||||
String dictType = "yshop";
|
||||
String value = "1";
|
||||
|
||||
// 调用
|
||||
@ -331,12 +331,12 @@ public class DictDataServiceImplTest extends BaseDbUnitTest {
|
||||
@Test
|
||||
public void testParseDictData() {
|
||||
// mock 数据
|
||||
DictDataDO dictDataDO = randomDictDataDO().setDictType("yunai").setLabel("1");
|
||||
DictDataDO dictDataDO = randomDictDataDO().setDictType("yshop").setLabel("1");
|
||||
dictDataMapper.insert(dictDataDO);
|
||||
DictDataDO dictDataDO02 = randomDictDataDO().setDictType("yunai").setLabel("2");
|
||||
DictDataDO dictDataDO02 = randomDictDataDO().setDictType("yshop").setLabel("2");
|
||||
dictDataMapper.insert(dictDataDO02);
|
||||
// 准备参数
|
||||
String dictType = "yunai";
|
||||
String dictType = "yshop";
|
||||
String label = "1";
|
||||
|
||||
// 调用
|
||||
|
||||
@ -45,7 +45,7 @@ public class DictTypeServiceImplTest extends BaseDbUnitTest {
|
||||
public void testGetDictTypePage() {
|
||||
// mock 数据
|
||||
DictTypeDO dbDictType = randomPojo(DictTypeDO.class, o -> { // 等会查询到
|
||||
o.setName("yunai");
|
||||
o.setName("yshop");
|
||||
o.setType("yshop");
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
o.setCreateTime(buildTime(2021, 1, 15));
|
||||
@ -78,7 +78,7 @@ public class DictTypeServiceImplTest extends BaseDbUnitTest {
|
||||
public void testGetDictTypeList_export() {
|
||||
// mock 数据
|
||||
DictTypeDO dbDictType = randomPojo(DictTypeDO.class, o -> { // 等会查询到
|
||||
o.setName("yunai");
|
||||
o.setName("yshop");
|
||||
o.setType("yshop");
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
o.setCreateTime(buildTime(2021, 1, 15));
|
||||
|
||||
@ -299,13 +299,13 @@ public class ErrorCodeServiceTest extends BaseDbUnitTest {
|
||||
public void testGetErrorCodeList() {
|
||||
// 准备参数
|
||||
ErrorCodeDO errorCodeDO01 = randomErrorCodeDO(
|
||||
o -> o.setApplicationName("yunai_server").setUpdateTime(buildTime(2022, 1, 10)));
|
||||
o -> o.setApplicationName("yshop_server").setUpdateTime(buildTime(2022, 1, 10)));
|
||||
errorCodeMapper.insert(errorCodeDO01);
|
||||
ErrorCodeDO errorCodeDO02 = randomErrorCodeDO(
|
||||
o -> o.setApplicationName("yunai_server").setUpdateTime(buildTime(2022, 1, 12)));
|
||||
o -> o.setApplicationName("yshop_server").setUpdateTime(buildTime(2022, 1, 12)));
|
||||
errorCodeMapper.insert(errorCodeDO02);
|
||||
// mock 方法
|
||||
String applicationName = "yunai_server";
|
||||
String applicationName = "yshop_server";
|
||||
LocalDateTime minUpdateTime = buildTime(2022, 1, 11);
|
||||
|
||||
// 调用
|
||||
|
||||
@ -46,7 +46,7 @@ public class LoginLogServiceImplTest extends BaseDbUnitTest {
|
||||
// 测试 ip 不匹配
|
||||
loginLogMapper.insert(cloneIgnoreId(loginLogDO, o -> o.setUserIp("192.168.128.18")));
|
||||
// 测试 username 不匹配
|
||||
loginLogMapper.insert(cloneIgnoreId(loginLogDO, o -> o.setUsername("yunai")));
|
||||
loginLogMapper.insert(cloneIgnoreId(loginLogDO, o -> o.setUsername("yshop")));
|
||||
// 测试 createTime 不匹配
|
||||
loginLogMapper.insert(cloneIgnoreId(loginLogDO, o -> o.setCreateTime(buildTime(2021, 2, 6))));
|
||||
// 构造调用参数
|
||||
@ -79,7 +79,7 @@ public class LoginLogServiceImplTest extends BaseDbUnitTest {
|
||||
// 测试 ip 不匹配
|
||||
loginLogMapper.insert(cloneIgnoreId(loginLogDO, o -> o.setUserIp("192.168.128.18")));
|
||||
// 测试 username 不匹配
|
||||
loginLogMapper.insert(cloneIgnoreId(loginLogDO, o -> o.setUsername("yunai")));
|
||||
loginLogMapper.insert(cloneIgnoreId(loginLogDO, o -> o.setUsername("yshop")));
|
||||
// 测试 createTime 不匹配
|
||||
loginLogMapper.insert(cloneIgnoreId(loginLogDO, o -> o.setCreateTime(buildTime(2021, 2, 6))));
|
||||
// 构造调用参数
|
||||
|
||||
@ -149,7 +149,7 @@ public class MailAccountServiceImplTest extends BaseDbUnitTest {
|
||||
// mock 数据
|
||||
MailAccountDO dbMailAccount = randomPojo(MailAccountDO.class, o -> { // 等会查询到
|
||||
o.setMail("768@qq.com");
|
||||
o.setUsername("yunai");
|
||||
o.setUsername("yshop");
|
||||
});
|
||||
mailAccountMapper.insert(dbMailAccount);
|
||||
// 测试 mail 不匹配
|
||||
|
||||
@ -393,7 +393,7 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
public void testHasAnyRoles_superAdmin() {
|
||||
// 准备参数
|
||||
Long userId = 1L;
|
||||
String[] roles = new String[]{"yunai", "tudou"};
|
||||
String[] roles = new String[]{"yshop", "tudou"};
|
||||
// mock 用户与角色的缓存
|
||||
permissionService.setUserRoleCache(MapUtil.<Long, Set<Long>>builder().put(1L, asSet(100L)).build());
|
||||
RoleDO role = randomPojo(RoleDO.class, o -> o.setId(100L)
|
||||
@ -412,10 +412,10 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
public void testHasAnyRoles_normal() {
|
||||
// 准备参数
|
||||
Long userId = 1L;
|
||||
String[] roles = new String[]{"yunai", "tudou"};
|
||||
String[] roles = new String[]{"yshop", "tudou"};
|
||||
// mock 用户与角色的缓存
|
||||
permissionService.setUserRoleCache(MapUtil.<Long, Set<Long>>builder().put(1L, asSet(100L)).build());
|
||||
RoleDO role = randomPojo(RoleDO.class, o -> o.setId(100L).setCode("yunai")
|
||||
RoleDO role = randomPojo(RoleDO.class, o -> o.setId(100L).setCode("yshop")
|
||||
.setStatus(CommonStatusEnum.ENABLE.getStatus()));
|
||||
when(roleService.getRoleFromCache(eq(100L))).thenReturn(role);
|
||||
// mock 其它方法
|
||||
|
||||
@ -197,7 +197,7 @@ public class SmsTemplateServiceImplTest extends BaseDbUnitTest {
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
o.setCode("tudou");
|
||||
o.setContent("yshop");
|
||||
o.setApiTemplateId("yunai");
|
||||
o.setApiTemplateId("yshop");
|
||||
o.setChannelId(1L);
|
||||
o.setCreateTime(buildTime(2021, 11, 11));
|
||||
});
|
||||
@ -242,7 +242,7 @@ public class SmsTemplateServiceImplTest extends BaseDbUnitTest {
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
o.setCode("tudou");
|
||||
o.setContent("yshop");
|
||||
o.setApiTemplateId("yunai");
|
||||
o.setApiTemplateId("yshop");
|
||||
o.setChannelId(1L);
|
||||
o.setCreateTime(buildTime(2021, 11, 11));
|
||||
});
|
||||
|
||||
@ -59,12 +59,12 @@ public class SocialUserServiceImplTest extends BaseDbAndRedisUnitTest {
|
||||
when(authRequestFactory.get(eq("WECHAT_MP"))).thenReturn(authRequest);
|
||||
// mock 方法
|
||||
authStateUtilsMock.when(AuthStateUtils::createState).thenReturn("aoteman");
|
||||
when(authRequest.authorize(eq("aoteman"))).thenReturn("https://www.iocoder.cn?redirect_uri=yyy");
|
||||
when(authRequest.authorize(eq("aoteman"))).thenReturn("https://www.yixiang.co?redirect_uri=yyy");
|
||||
|
||||
// 调用
|
||||
String url = socialUserService.getAuthorizeUrl(type, redirectUri);
|
||||
// 断言
|
||||
assertEquals("https://www.iocoder.cn?redirect_uri=sss", url);
|
||||
assertEquals("https://www.yixiang.co?redirect_uri=sss", url);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -144,7 +144,7 @@ public class TenantServiceImplTest extends BaseDbUnitTest {
|
||||
}), eq(RoleTypeEnum.SYSTEM.getType()))).thenReturn(200L);
|
||||
// mock 用户 300L
|
||||
when(userService.createUser(argThat(user -> {
|
||||
assertEquals("yunai", user.getUsername());
|
||||
assertEquals("yshop", user.getUsername());
|
||||
assertEquals("yuanma", user.getPassword());
|
||||
assertEquals("yshop", user.getNickname());
|
||||
assertEquals("15601691300", user.getMobile());
|
||||
@ -157,8 +157,8 @@ public class TenantServiceImplTest extends BaseDbUnitTest {
|
||||
o.setContactMobile("15601691300");
|
||||
o.setPackageId(100L);
|
||||
o.setStatus(randomCommonStatus());
|
||||
o.setDomain("https://www.iocoder.cn");
|
||||
o.setUsername("yunai");
|
||||
o.setDomain("https://www.yixiang.co");
|
||||
o.setUsername("yshop");
|
||||
o.setPassword("yuanma");
|
||||
});
|
||||
|
||||
|
||||
@ -8,7 +8,7 @@ spring:
|
||||
spring:
|
||||
# 数据源配置项
|
||||
datasource:
|
||||
name: ruoyi-vue-pro
|
||||
name: yshop-pro
|
||||
url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false;NON_KEYWORDS=value; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
|
||||
driver-class-name: org.h2.Driver
|
||||
username: sa
|
||||
|
||||
Reference in New Issue
Block a user