@Override
    public SmsTemplateRespDTO getSmsTemplate(String apiTemplateId) throws Throwable {
        // 构建请求
        DescribeSmsTemplateListRequest request = new DescribeSmsTemplateListRequest();
        request.setTemplateIdSet(new Long[]{Long.parseLong(apiTemplateId)});
        request.setInternational(INTERNATIONAL_CHINA);
        // 执行请求
        DescribeSmsTemplateListResponse response = client.DescribeSmsTemplateList(request);
        DescribeTemplateListStatus status = response.getDescribeTemplateStatusSet()[0];
        if (status == null || status.getStatusCode() == null) {
            return null;
        }
        return new SmsTemplateRespDTO().setId(status.getTemplateId().toString()).setContent(status.getTemplateContent())
                .setAuditStatus(convertSmsTemplateAuditStatus(status.getStatusCode().intValue())).setAuditReason(status.getReviewReply());
    }
@Test
    public void testGetSmsTemplate() throws Throwable {
        // 准备参数
        Long apiTemplateId = randomLongId();
        String requestId = randomString();

        // mock 方法
        DescribeSmsTemplateListResponse response = randomPojo(DescribeSmsTemplateListResponse.class, o -> {
            DescribeTemplateListStatus[] describeTemplateListStatuses = new DescribeTemplateListStatus[1];
            DescribeTemplateListStatus templateStatus = new DescribeTemplateListStatus();
            templateStatus.setTemplateId(apiTemplateId);
            templateStatus.setStatusCode(0L);// 设置模板通过
            describeTemplateListStatuses[0] = templateStatus;
            o.setDescribeTemplateStatusSet(describeTemplateListStatuses);
            o.setRequestId(requestId);
        });
        when(client.DescribeSmsTemplateList(argThat(request -> {
            assertEquals(apiTemplateId, request.getTemplateIdSet()[0]);
            return true;
        }))).thenReturn(response);

        // 调用
        SmsTemplateRespDTO result = smsClient.getSmsTemplate(apiTemplateId.toString());
        // 断言
        assertEquals(response.getDescribeTemplateStatusSet()[0].getTemplateId().toString(), result.getId());
        assertEquals(response.getDescribeTemplateStatusSet()[0].getTemplateContent(), result.getContent());
        assertEquals(SmsTemplateAuditStatusEnum.SUCCESS.getStatus(), result.getAuditStatus());
        assertEquals(response.getDescribeTemplateStatusSet()[0].getReviewReply(), result.getAuditReason());
    }